问题标签 [solr4j]
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.
solr - Solr4j 和排序规则响应
当我在浏览器上对 solr 运行拼写检查查询时,我可以看到带有建议和排序规则的响应,但是,当我使用 solr4j 运行时,我只看到建议 - 没有排序规则。
询问
回复
但是当我从 solr4j 调用时,除了响应的“整理”部分之外,我得到了上述所有内容!
所以,我从浏览器中尝试了这个 URL(添加了 wt=javabin 和版本)来查看 solr4j 正在接收什么。
下载了一个文件,我用文本编辑器打开它
它不可读,但是,我可以在那里看到“排序规则”这个词!那么,为什么 Solr4j 不接受呢?
solr - Solr 性能调整以实现更快的查询/索引,而不是存储要求
我们正在寻找提高 solr 查询/索引性能的方法。我们不关心存储要求。我们有很多存储空间。
本质上,我们希望通过在 solr 索引上投入更多存储来加速 solr 查询/索引。
我已经查看了http://wiki.apache.org/solr/SolrPerformanceFactors。但它不涵盖这种特殊情况。
ps 你可以告诉我这是一个愚蠢的问题,我不介意:)
solr - Solr:软自动提交的问题(近乎实时)
在软自动提交(近实时)中出现问题。我在 tomcat 上使用 solr 4.3。索引大小为 10.95 GB 。使用此配置,返回索引文档需要 60 多秒。将文档添加到 solr 并在软提交时间后搜索时,它返回 0 个命中。在文档实际开始显示之前需要很长时间,甚至超过 autoCommit 间隔。
机器是 ubuntu 13 / 4 核 / 16GB RAM。给运行在 tomcat 上的 Solr 6gb。
有人可以帮我吗?
java - 无法在 SolrCloud 中使用 CloudSolrServer 提交文档
我最近开始探索 SolrCloud 并尝试使用 CloudSolrServer 客户端索引文档。我看到的问题是,如果我不在 CloudSolrServer 对象上触发显式提交,则文档不会被索引。这是我的代码片段:
我有 2 个分片,每个分片有 1 个副本和一个 zookeeper 实例。
运行此测试代码后,我可以看到请求到达节点。这是日志的输出:
从日志来看,提交似乎已成功完成。但是,如果我查询服务器,则没有任何条目出现。
现在,如果我打开
我会查看索引的数据。这是日志:
这是提交配置: p>不知道我在这里缺少什么,任何指针都会被应用。
谢谢
java - 使用 CloudSolrServer SolrJ 4.4 获取 IndexReader
我想以编程方式使用 FastVectorHiglighter.getBestFragments(...) 。为此,我需要指定请求的 IndexReader 对象。
问题是我无法获得请求本身。SolrQuery 对象提供的只是 queryRespose。
试图创建我自己的 SolrCore 对象
尽管 above(getReader()) 结果为空。将使用一些提示:如何使用 solrCloud 获取 indexReader。
先感谢您
solr - 索引时出现“大小超过配置的最大值”错误
我需要索引 PDF 文件,有人告诉我 Solr 可以做到这一点。所以我在 Weblogic 上安装了一个 Solr-Server 并用 Web-Interface 尝试了一些东西。
最后我写了一个 JUnit-Test 类来尝试用 Java 和 Solrj 做同样的事情。
我编写了一个(简单)代码来索引几个 pdf 并执行查询以查看文档是否被索引:
通过运行此测试,我收到以下错误:
我检查了 weblogic 设置(servers->protocols->http),Max Post Size 设置为-1(应该意味着无限大小)。
还有其他必须设置的地方吗?
编辑:这里是 solrconfig.xml
solr - 如何获取 Solr 文档的大小?
我想知道单个 Solr 文档/响应的字节大小。有没有一种简单的方法来解决这个问题?
我们正在使用 solrj java 客户端。
我环顾四周,只找到了确定索引大小的方法,但没有找到文档本身的大小。
solr - 按方面限制结果(文档)
我想在第一页的每个方面显示最多 5 个结果(文档)。如何在 Solr 4.x 中实现它
例如,我在电视、音乐系统、书籍等类别中有数以千计的匹配产品(文档)。如果我搜索“音乐”关键字,我应该从所有类别中获得最多 5 个匹配结果(文档)。
提前致谢。
编辑:我想对不在分面列表中的结果(文档)设置限制。这个限制是在每个方面而不是在所有结果上。如果有 3 个类别,则页面上可以显示 15 个结果(文档),如果有 4 个,则最多可以显示 20 个结果(文档)。
solr - Solr 4.10.1 的 Solr BlockJoin 索引
我正在尝试索引嵌套结构,如下所示,并且很难同时使用 SOlrJ 和 DIH 进行索引。我已经为此奋斗了一段时间,非常感谢您对此的帮助。
如何使用 SolrJ 或 DIH 解决此问题。谢谢
我希望我的数据看起来像我的索引:
“文档”:[
]
我的 schema.xml
SolrJ 尝试
回复
所以我继续添加 id 到 childDocs 制作上述内容
然后重新运行 get-all 查询,现在我得到以下结果
SolrJ Attempt 2 plus get-all 查询
所以我在这里放弃并尝试如下的DIH
db-dataconfig.xml
使用上面的 DIH 完全导入后查询 get-all 并且没有子索引
solr - 具有多个单词的 edismax 用于关键字标记器在空间上拆分
我的模式中有两个字段:
field1
正在使用keyword
标记器过滤器来保留标记原样(甚至不按空间划分。我在分析选项卡中仔细检查了它。)
field2
正在使用WhitespaceTokenizerFactory
它破坏空格和选项卡等上的单词。
<field name="field1" type="field1_type" indexed="true" stored="false"/>
<field name="field2" type="field2_type" indexed="true" stored="false"/>
<fieldType name="field2_type" class="solr.TextField"> <analyzer type="index"> <tokenizer class="solr.KeywordTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory" /> </analyzer> <analyzer type="query"> <tokenizer class="solr.KeywordTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory" /> <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> </analyzer> </fieldType>
我正在使用edismax
默认qf
值=的解析器field1
field2
现在当我q=hello world
在调试模式下查询时,它显示它的查询就像
原始查询字符串:你好世界
查询字符串:hello world parsedquery :(+((DisjunctionMaxQuery((field1:hello | field2:hello)) DisjunctionMaxQuery((field1:world | field2:world)))~1) ())/no_coord
parsedquery_toString :+(((field1:hello | field2:hello) (field1:world | field2:world))~1) ()
我所期望的是这样的:
预期:+(((field1:hello world) ((field2:hello) (field2:world))~1) ()
即因为field1
它不应该破坏空间查询,因为它正在使用关键字标记器,而它应该破坏空间查询field2
。你能告诉我我做错了什么吗?