couchdb - 如何使用 Elastic Search River : In plain english 索引 CouchDB

标签 couchdb elasticsearch

我真的不知道我的配置发生了什么,但我只是在索引后无法查询任何内容(甚至不知道我是否正确地执行了索引部分)。有人可以告诉我以下各项的含义和应该是什么吗?

我有一个名为 bestdb 的 CouchDB 数据库。在这个数据库中,我有像 productcustomer 这样的文档类型。

现在我安装了elasticsearch 0.18.7版本和对应的couchdb river。我开始使用 Elasticsearch 和 couchdb。我将 elasticsearch 的 network.host 设置为一个 ip 地址: 10.0.0.129 。我按照 tutorial 中的说明进行操作:

curl -XPUT '10.0.0.129:9200/_river/{A}/_meta' -d '{
    "type" : "couchdb",
    "couchdb" : {
        "host" : "localhost",
        "port" : 5984,
        "db" : "bestdb",
        "filter": null
    },
    "index" : {
        "index" : "{B}",
        "type" : "{C}",
        "bulk_size" : "100",
        "bulk_timeout" : "10ms"
    }
}'

{A}:这是什么?我的理解是这只是一个内部 Elasticsearch 索引,对吗?它不是用于查询或搜索吗?所以这可以是任何名称,对吗?

{B}:这个索引是什么?这与上面的有何不同?在我的场景中,这个值应该是什么?

{C}:这是否与 couchdb 中的文档类型有关,例如 productcustomer

在线教程只是将所有内容设置为相同的值。如果我想查询所有产品文档或客户文档,我的 curl 语句会是什么样子?

感谢为我解决了一些问题的人。

问候, 马克·黄

最佳答案

kimchy 的文档通常会留下一些想象空间。 :-)

A 是河流名称。河流只是一个 ES 文档,存储在一个名为 _river 的索引中,一个任意命名的类型,以及一个文档 ID _meta

B & C 是您的 bestdb couchdb _changes 流将被索引到的本地 index/_type .这些可以被 couchdb 文档中的 _index_type 字段覆盖。如果以上均未提供,它们将默认为您的 couchdb 实例名称 bestdb/bestdb

关于couchdb - 如何使用 Elastic Search River : In plain english 索引 CouchDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10119626/

相关文章:

date - query_string字段中的日期类型属性始终给出错误

elasticsearch - Elasticsearch 与ngram匹配的无序部分短语

ruby-on-rails - Ruby On Rails/Merb 作为数十亿记录应用程序的前端

javascript - CouchDB 不区分大小写和 OR 选项,就像在 mysql 中一样

azure - 如何使用 Rest API java 客户端在 couchDB 中创建附件

Elasticsearch : map date as text?

elasticsearch - 查询嵌套对象时结果奇怪

go - 如何通过 ID 以外的字段从 Kivik 获取文档

python - 使用 Python 从 CouchDB-Futon 编写的 View 中获取数据

elasticsearch - ElasticSearch-TopHits对嵌套聚合中的所有匹配给出相同的分数