标签: solr

“System.String”类型的对象无法转换为“MongoDB.Bson.ObjectId”类型

我有一个 C# 类,它有一个 ObjectId 类型的 id 字段:

[BsonId]
[SolrUniqueKey("id")]
public ObjectId Id { get; set; }
Run Code Online (Sandbox Code Playgroud)

在 Solr 中,模式将 id 定义为:

 <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> 
Run Code Online (Sandbox Code Playgroud)

当尝试从 Solr 中提取对象时,它会失败,因为它无法将字符串 id 转换为 MongoDB ObjectId。有没有人可以在不更改 SolrNet 源的情况下轻松解决此问题?

solr mongodb solrnet

0
推荐指数
1
解决办法
1881
查看次数

无法启动 HBase start_hbase.sh:找不到命令

到目前为止,试图让 Nutch + Solr 工作是徒劳的。我很难理解如何使用nutchand来处理这件事solr。我遵循了我可以在互联网上找到的所有教程,其中大部分是针对旧版本的,但我仍然无法使它们中的任何一个工作。此时此刻,我正在遵循本指南

我已经将nutch 2.2.1sorl 4.3.1hbase 0.90.4 解压到我的 xampp 本地服务器上的目录(没有一个教程说我应该将它们解压到哪里,所以我假设在本地服务器上)。

Cygwin在 Windows 7 上使用。 JAVA_HOME 指向/cygdrive/c/PROGRA~1/java/jdk1.8.0_05

我卡在了Configure HBase一步。按照教程的指示,我的配置/hbase-0.90.4/conf/hbase-site.xml如下:

<property>
   <name>hbase.rootdir</name>
   <value>file:///C:/xampp/htdocs/trynutch/hbase</value>
</property>
<property>
   <name>hbase.zookeeper.property.dataDir</name>
   <value>C:/xampp/htdocs/trynutch/zookeeper</value>
</property>
Run Code Online (Sandbox Code Playgroud)

根据此后的教程,我应该能够运行以下命令:

$ ./trynutch/hbase/bin/start_hbase.sh
Run Code Online (Sandbox Code Playgroud)

当我在 cygwin 终端中运行它时,它给出了一个错误:

DM@comp ~
$ cd C:/xampp/htdocs/trynutch/hbase-0.90.4/bin

DM@comp /cygdrive/c/xampp/htdocs/trynutch/hbase-0.90.4/bin
$ start_hbase.sh
-bash: start_hbase.sh: command not found
Run Code Online (Sandbox Code Playgroud)

我很感激任何信息。

cygwin solr hbase nutch

0
推荐指数
1
解决办法
4225
查看次数

Solr 构面限制和起点

我的问题很简单:我们可以在 solr 方面进行限制。是否可以在构面结果中设置起点?

就像我们在普通查询中所做的一样:->

query.setRows(5);

query.setStart(3);
Run Code Online (Sandbox Code Playgroud)

我希望我的分面结果从第 4 点开始,而不是从第一个结果开始。

在相关说明中,这可以在使用组时完成。我可以通过在查询中传递起点来选择我想要的组。但这对于facets来说似乎是不可能的。无法使用组,因为没有按 numfound 功能排序。

lucene solr solrj

0
推荐指数
1
解决办法
3415
查看次数

在 Solr 中查找重复值

有没有办法构造一个查询,以便它可以识别/返回特定字段重复的文档。我正在寻找的是 SQL 中的等效项:

SELECT content, count(*) FROM documents GROUP BY content ORDER BY count(*) DESC
Run Code Online (Sandbox Code Playgroud)

基本上,给我内容相同的文件。我发现的所有内容都讨论了如何在插入时丢弃重复项,或者如何在搜索结果中删除它们。我尝试使用FieldCollapsing,但出现以下错误:

"error": {
  "msg": "can not use FieldCache on a field which is neither indexed nor has doc values: content",
  "code": 400
}
Run Code Online (Sandbox Code Playgroud)

基于错误,我认为它失败了,因为content没有编入索引。我尝试使用另一个索引而不是多值的字段来进行分组,该字段存储文档 URL,但我无法对结果组进行正面或反面,尤其是groupValue. 我可以尝试创建一个被索引的复制字段,但我不确定这是否会给我我正在寻找的东西,我的爬虫需要超过 24 小时才能爬行。

solr solr4

0
推荐指数
1
解决办法
7643
查看次数

Apache Solr 构面搜索排除空间

我正在使用 Apache Solr 并使用以下查询进行搜索

http://Siteurl:8080/solr/metro/select?q=*:*&rows=0&wt=json&indent=true&facet=true&facet.field=Make
Run Code Online (Sandbox Code Playgroud)

但结果让我们假设我在制造领域有“福特嘉年华”。我得到两个结果而不是一个,如下所示:

Ford => 21
Fiesta => 21
Run Code Online (Sandbox Code Playgroud)

它是按空间分隔字段。

我想要它像

Ford Fiesta => 21
Run Code Online (Sandbox Code Playgroud)

请让我知道这样做的有效方法。

谢谢

php solr facet

0
推荐指数
1
解决办法
725
查看次数

重新索引时太阳黑子错误 400 错误请求

我正在使用 sunspot/solr 为我的 Rails 应用程序构建全文搜索。前几次我能够运行bundle exec rake sunspot:reindex,但后来收到此错误:

RSolr::Error::Http: RSolr::Error::Http - 400 Bad Request
Error: {'responseHeader'=>{'status'=>400,'QTime'=>1},'error'=>{'msg'=>'Exception writing document id Product 1 to the index; possible analysis error.','code'=>400}}

URI: http://localhost:8982/solr/development/update?wt=ruby
Request Headers: {"Content-Type"=>"text/xml"}
Request Data: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><add><doc><field name=\"id\">Product 1</field><field name=\"type\">Product</field><field name=\"type\">ActiveRecord::Base</field><field name=\"class_name\">Product</field><field boost=\"5\" name=\"code_textp\">Macbook pro 123</field><field name=\"code_textp\">&lt;p&gt;hahahahahhhahahahahhhahahahahhhahahahahhhahahahahhhahahahahhhahahahahhhahahahahh&lt;/p&gt;</field></doc><doc><field name=\"id\">Product 2</field><field name=\"type\">Product</field><field name=\"type\">ActiveRecord::Base</field><field name=\"class_name\">Product</field><field boost=\"5\" name=\"code_textp\">test product</field><field name=\"code_textp\">&lt;p&gt;dfdsfsdfdsfsfsdfsdfdsf&lt;/p&gt;</field></doc><doc><field name=\"id\">Product 3</field><field name=\"type\">Product</field><field name=\"type\">ActiveRecord::Base</field><field name=\"class_name\">Product</field><field boost=\"5\" name=\"code_textp\">Macbook used</field><field name=\"code_textp\">&lt;p&gt;it is refurebishedit is refurebishedit is refurebishedit is refurebishedit is refurebishedit is refurebishedit is refurebished&lt;/p&gt;</field></doc></add>"

Backtrace: …
Run Code Online (Sandbox Code Playgroud)

solr full-text-search ruby-on-rails sunspot

0
推荐指数
1
解决办法
1158
查看次数

如何将 solr 与 nodejs 连接?

我跟着https://github.com/gsf/node-solr,安装了 node-solr

npm install solr
Run Code Online (Sandbox Code Playgroud)

那么如何在8080端口连接solr呢?

solr node.js

0
推荐指数
1
解决办法
6335
查看次数

如何在 solr 中使用 join 以获得两个核心的结果?

我有两个核心:

核心 1:BookID、地点、标题、作者、发布日期

核心 2:BookID、Text、Referenecs、Size、LastUpdated

http://localhost:8983/solr/core1/select?fl=Title,%20Venue,%20Authors,%20PubDate&q= {!join%20from=PaperID%20to=fileName%20fromIndex=core2%20}size:15870

上述查询返回零结果为:

<response>
   <lst name="responseHeader">
      <int name="status">0</int>
      <int name="QTime">0</int>
      <lst name="params">
         <str name="q">{!join from=PaperID to=fileName fromIndex=PapersIndex }size:15870</str>
         <str name="fl">Title, Venue</str>
      </lst>
   </lst>
   <result name="response" numFound="0" start="0" />
</response>
Run Code Online (Sandbox Code Playgroud)

我不知道 solr join 是如何工作的。为什么它给出零结果?

solr join solrj solrcloud

0
推荐指数
1
解决办法
2372
查看次数

在云模式下设置 Apache Solr

我必须执行以下操作:

  1. 我必须在 2 个服务器/节点上部署 Solr。
  2. 在另一台服务器上部署 Zookeeper。
  3. 将自定义配置上传到 Zookeeper
  4. 创建具有 2 个分片和 2 个副本的自定义集合

Solr 7.4.0 和 Zookeeper 版本: 3.4.12

我做了以下事情:

设置动物园管理员:

  • 创建了一个 Zookeeper 数据文件夹并创建了一个 Zoo.conf 并将 dataDir 放在那里。
  • 开始使用 Zookeeper./zkServer.sh start

设置 Solr:

  • 使用以下命令启动 Solr:

    ./solr start -cloud -s /home/demo/LocalFolder/Downloads/SolrHome -p 8987 -z localhost:2181

  • 尝试使用以下方式在 Zookeeper 中上传配置: ./solr create -c mycollection -d /media/sf_VM/Dump/conf

它给了我一个例外:

Caused by: javax.servlet.UnavailableException: Error processing the request. CoreContainer is either not initialized or shutting down.
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:341)
    at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:323)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
    at …
Run Code Online (Sandbox Code Playgroud)

lucene solr solrcloud solr4 apache-zookeeper

0
推荐指数
1
解决办法
7753
查看次数

在 DynamoDB 中搜索数据或使用搜索服务

我想知道尝试搜索数据的利弊(基本上是对一组有限的字段进行全文搜索)。

我的数据目前在 DynamoDB 中,我意识到这不太适合全文搜索。有没有办法在 DynamoDB 中进行全文搜索?这样做有什么好处和坏处?

我还可以使用搜索集群(如 ElasticSearch)。您不使用搜索集群的任何原因?

还有其他方法可以进行全文搜索吗?其他解决方案?

solr elasticsearch amazon-dynamodb

0
推荐指数
1
解决办法
330
查看次数