【问题标题】:Which method of SOLR implementation should I use; 3 Questions?我应该使用哪种 SOLR 实现方法; 3 问题?
【发布时间】:2010-01-18 15:21:14
【问题描述】:

我有一个分类网站,我现在正尝试将 SOLR 集成到其中,因此搜索变得更快...

我目前将 Mysql 作为我所有记录的数据库,我使用 PHP 对其进行查询并显示结果。

我有三个主要问题: 如果我要实现 SOLR,标准的实现方式是怎样的?

而且,我不明白是否应该在每次发布/或更新/更改新分类时更新 SOLR 索引,还是每 12 小时左右一次将它们全部索引一次?

我应该使用 SOLR 找到分类的 ID,然后在 mysql 中获取记录,还是应该只使用 SOLR?

我需要一些关于如何前进的示例和建议,有点卡在这个...

我已经阅读了一些关于如何在 PHP 中使用 SOLR 的精彩文章...但是如果我需要的话,还没有找到任何关于 dataImportHandlers 的好文章..

谢谢

【问题讨论】:

    标签: java php mysql solr


    【解决方案1】:

    如果我要实现 SOLR,那么 标准的做法?

    使用 Solr 的标准方法是将其配置为单独的 Web 应用程序,在您喜欢的 Web 应用程序容器的实例中运行(推荐使用 Jetty,可能存在与 Resin 的一些不兼容问题)。您可以通过它的 HTTP 接口与它进行通信,可以使用 SolrJ 之类的库或提供的 JAR 文件以编程方式进行通信,也可以直接使用 curl 或 Web 浏览器。

    要开始使用,我建议阅读 tutorial,它适用于 Solr 1.3,但在大多数情况下仍然相关。

    而且,我不知道我是否应该 每次更新 SOLR 索引 分类已发布/或 更新/更改,或将它们全部编入索引 每 12 小时左右一次?

    您可以在文档发布后立即添加它们。 Solr 将首先将它们写入内存,然后根据您的配置设置,在经过一定时间或在一定数量的文档待处理之后,它会将它们“提交”到磁盘上的索引。您还可以配置索引的优化频率,这是一种压缩磁盘索引的昂贵操作。

    我应该使用 SOLR 来查找 ID 分类广告,然后获取 记录在 mysql 中,或者我应该只使用 SOLR?

    如果您的数据很小(按总大小,而不是单个数据),您可以将它们全部放入 Solr,但随着数据的增长,您可能希望使用混合解决方案,其中 Solr 仅保存索引值,而 MySQL 用于存储的数据。

    但是没有找到好的文章 关于 dataImportHandlers 如果那是 我需要什么..

    如果您想将 MySQL 数据导出到 Solr,请使用 CSVRequestHandler(请注意,此处的 csv 实际上可以是任何平面文件格式,就像 MySQL 会生成的那样。

    编辑:针对您的评论,我之前没有查看DataImportHandlers,但是阅读了Solr手册中的page,似乎这对于导入数据很有用当您有需要保留的整个架构时,直接从您的数据库中(一次全部或定期增量)。所以我会说,如果你需要索引的数据是单个表中的几个字段,请使用CSVRequestHandler,因为它非常简单,不需要配置,但是如果你有一堆表之间有关系它们和所有数据都需要放入索引中,然后您应该查看DataImportHandler

    编辑 2:任何可以发出 HTTP 请求的东西都可以更新 Solr,但这里有一个 link 到 google 代码上的一个项目,它提供了一个 Solr 客户端的 PHP 实现。我自己没用过。

    【讨论】:

    • 嗨,danben...很好的答案!我想知道,我什至需要查看 dataImportHandlers 吗?它们什么时候使用?谢谢!
    • @Camran:感谢您的接受,但您为什么删除了赞成票?
    • 我没有,我不小心点了,然后又改不回来了……我换个浏览器试试!抱歉……
    • 它说我现在不能改变投票,太旧了不能改变......如果你可以编辑你的答案并添加一些文字,如果可能的话,我会再次投票!也许你可以回答这个问题:你有 PHP 何时更新 SOLR 索引的示例代码吗?
    • 好了,现在成功了!再次感谢danben,非常有帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-06
    • 2023-03-27
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多