问题标签 [solarium]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - 连接 127.0.0.1:8983 失败;拒绝连接'
无论我做什么,我总是收到“未捕获的异常 'Solarium\Exception\HttpException' 和消息'Solr HTTP 错误:HTTP 请求失败,连接到 127.0.0.1:8983 失败;连接被拒绝'”我已经安装了带作曲家的日光浴室,但没有任何问题,但我仍然遇到错误。curl 似乎也安装了不知道是什么问题导致它无法连接到该端口。
请帮我。
php - PHP Solarium - Composer Autoload 给类未找到错误
我试图让 Solarium 在 Centos 6.5 上运行,并安装 PHP (5.3.3) 和 Apache HTTPD 的 rpm 安装。
我按照网站上的说明创建了一个文件夹 /var/www/php(位于 php.ini 的包含路径中)并下载了 composer。然后我在composer.json中输入了以下内容:
并运行“php composer.phar install”。
我现在正在尝试运行 Solarium 示例文件夹中的示例(特别是 1.1 Solr Ping 示例)。为此,我修改了 init.php 以包含以下行:
要求('供应商/autoload.php');
我已经确认 vendor/autoload.php 正在通过向其添加打印语句来运行。
但是,当我运行示例时,我得到:
或者如果我注释掉第 7 行:
因此,日光浴室文件似乎没有按预期加载。
不确定这是日光浴室还是作曲家的问题(我怀疑是后者)。任何人都可以提出一种调试方法吗?
发出命令“php composer.phar dump-autoload”只会生成消息:
这是正确的(我假设不是基于命令的描述)?
跑步:
给出:检查 composer.json: FAIL 名称:缺失且需要 描述:缺失且需要 未指定许可证,建议这样做。对于闭源软件,您可以使用“专有”作为许可。检查平台设置:失败
没有一个看起来是致命的。那是对的吗?
非常感谢
保罗
更新:
更多信息。向 vendor/composer/autoload_real.php 添加一些打印语句给出:
(由 autoload_namespaces.php 创建的 $map)
(由 autoload_classmap.php 创建的 $classMap)
classmap 的空数组似乎很奇怪。那是对的吗?
谢谢
磷
solr - Solr makes index but solarium doesn't index more than 9 documents
I am working on Ubuntu. I want to use Solarium to index documents in Solr. When I try to index documents via Solarium it indexes at most 9 documents at a time, so I can't add new documents, but when I try to index new documents from shell it works ok.
This is my PHP code. I am using Solarium 3.0.0 and Solr 4.7.2
solr - 使用 Solr 进行复杂的多表搜索查询
我刚开始学习 Solr,我学习它的原因是因为我想做高级搜索查询(在 SQL 中被认为很简单),但需要处理大量数据。从我读到现在的内容(使用日光浴室),我可以索引、更新、选择和删除,但只能针对一种数据(关系/表)。我想做的是能够在表之间执行操作(就像 SQL 会以他自己的方式)。这是我可以处理的示例场景。
以下是基于上述关系的数据样本。
一个示例搜索查询将是“来自不同学院的互相打架的学生的全名以及他们各自学院的名称。
在 SQL 中,我会执行以下操作:
解决方案将是 Dumbledore vs Snape 和 Potter vs Who 的每个字段(所有三个表)。
可以用 Solr 完成吗?
php - Solr + Solarium:计数器不适用于多选方面
我正在使用 Solr + Solarium。我已经定义了一个多方面搜索。每个方面选项后面都有计数器,当您单击它时显示返回结果的数量。
在多选方面选择一个选项时,我希望其他方面的计数器仍然有效。
solr 有结果。在我的旧代码(单选方面)中,它返回汽油/柴油的值。
例如以下 2 个方面:
汽车品牌:-volvo (3) -mazda (2) -volkswagen (5)
燃料:-柴油(4)-汽油(6)
现在我希望能够选择沃尔沃和马自达。选择沃尔沃 solr/solarium 后,返回以下 2 个方面:
品牌:-沃尔沃(3)-精选-马自达(2)-大众(5)
燃料:-柴油(0)-汽油(0)
品牌方面很好。我希望燃料方面的计数器能够从沃尔沃返回柴油/汽油车的数量。例如: -柴油 (2) -汽油 (1)
我的代码:
solr - Solr 法语语言模式
任何人都可以分享法语数据的最佳 solr 架构吗?我已经为我当前的项目实现了这个,但它没有为法语文本提供正确的数据。
我的 schema.xml:
php - 如何从solr索引中删除所有记录
我正在使用 solr 进行全文搜索。
我是 solr 的新手,并试图通过 php solarium 客户端从 solr 索引中删除记录我正在使用以下代码删除记录:
但它在浏览器上给了我以下错误:
致命错误:未捕获的异常 'Solarium\Exception\HttpException' 带有消息 'Solr HTTP 错误:OK (500) {"responseHeader":{"status":500,"QTime":1},"error":{"trace" :"java.lang.NullPointerException\n\tat org.apache.lucene.search.BooleanClause.hashCode(BooleanClause.java:99)\n\tat java.util.AbstractList.hashCode(AbstractList.java:542)\n\ tat org.apache.lucene.search.BooleanQuery.hashCode(BooleanQuery.java:520)\n\tat java.util.HashMap.put(HashMap.java:389)\n\tat org.apache.lucene.index.BufferedUpdates .addQuery(BufferedUpdates.java:152)\n\tat org.apache.lucene.index.DocumentsWriterDeleteQueue$QueryArrayNode.apply(DocumentsWriterDeleteQueue.java:365)\n\tat org.apache.lucene.index.DocumentsWriterDeleteQueue$DeleteSlice.apply (DocumentsWriterDeleteQueue.java:280)\n\tat org.apache.lucene。index.DocumentsWriterDeleteQueue.tryApplyGlobalSlice(DocumentsWriterDeleteQueue.java:200)\n\tat org.apache.lucene.index.DocumentsWriterDeleteQueue.addDelete(DocumentsWriterDeleteQueue.java:107)\n\tat org.apache.lucene.index.DocumentsWriter.delete in /var/www/library/Solarium/Core/Query/Result/Result.php 在第 103 行
solr - 更像这样并没有给出预期的结果
我正在实施一个更像这个处理程序的 solr 来寻找类似的客户。
我有 2 个客户,他们的名字不同,住在同一个地址。我想给 solr 一个 entity_id 并让所有具有相似名称/地址的客户端返回。客户将能够通过单击按钮将两个客户链接在一起。
我正在使用 SolariumBundle 在代码中执行此操作,但它应该足以让它首先与原始查询一起工作,如果可行的话,我可以自己将其调整到日光浴室。
这是我的solrconfig.xml
我的schema.xml的相关部分是:
我目前执行此查询:http://localhost:8983/solr/core0/mlt?q=entity_id%3A50&wt=json&indent=true&mlt.fl:customer_data
并且确实为具有相似名称的客户返回结果。例如,如果 customer_id:50(我要查询的那个)的名称为“Foo Bar”,它会返回名称为“Foo Bar”、“Bar Foo”、“John Foo”的客户。街道/国家/邮政编码的相似性不起作用。
在 debug:parsedquery 中,我可以看到customer_data:Foo customer_data:Bar customer_data oo Bar, ...
地址部分的不同突变,但没有任何变化。
如何确保查询是针对:customer_data:Foo customer_data:Bar customer_data:teststreet customer_data:Antwerp
?
solr - Solr:如何对组结果进行自定义排序
在 Solr 中,我在“hash”(我的自定义字段)字段上使用 groupBy 获取结果。正如我们所知,每个组将包含一组文档。
我的要求是:
- Solr 首先根据 score 进行排序,它已经在做。
- 如果任意两组得分相同,则
group with more number of documents should come up.
- 如果偶数个文档相同,则
there should be some tie-breaker.
我需要关于第 2 点和第 3 点的指导。我无法使用“排序”参数了解如何操作。
谢谢阿米特阿加瓦尔
solr - Solr 和带双引号的搜索短语
我有一个电子商务网站,我在其中实现 Solr(使用 Solarium 库),并且有包含双引号(通常代表英寸)的产品名称和描述。在我开始掌握 Solr 的分析器和标记器部分之前,我只是将 text_en_splitting 的数据类型分配给将包含此数据的字段。如果有人搜索短语 - blue 1" binder- 双引号被删除,返回的前 10 个结果不一定是活页夹。返回的结果似乎与单词 blue 和数字 1 匹配(它们不是活页夹)。通过对 Solr admin 中的查询的分析,我看到双引号已从 WordDelimiterFilterFactory 中删除。我喜欢 WordDelimiterFilterFactory 的其他原因(比如处理短语便利贴)所以我试图在这里找到一个快乐的媒介。有没有更好的方法来索引和查询包含双引号的字段,这些双引号在执行搜索时应该保留在原位(因为它们实际上意味着什么)?