默认情况下,为elasticsearch中与couchbase同步的文档创建couchbasecheckpoint类型

aiqt4smr  于 2021-06-15  发布在  ElasticSearch
关注(0)|答案(1)|浏览(425)

我对elasticsearch和couchbase都是新手。我在我的项目中使用这两种方法。我的要求是使用couchbase xdcr将couchbase bucket与elasticsearch索引同步。
在couchbase中,bucket名称“employee”和该文档的结构是

{
"empName":"Stev Jobs",
"dept":"IT",
"company":"xxxx",
"salary":"30000",
"country":"USA"
}

我在elasticsearch中创建了索引employee,还使用elasticsearch cluster在couchbase中创建了集群引用。设置完所有这些之后,我开始在couchbase的employee bucket和elasticsearch的employee index之间进行复制。它在elasticsearch中创建了索引,但是这个索引包含的不仅仅是couchbase bucket文档。我的couchbase bucket雇员有182条记录,但在elasticsearch雇员索引中显示文档1025。在couchbase中同步时会显示一些错误

2015-05-22 09:07:44 [Vb Rep] Error replicating vbucket 98. Please see logs for details.
2015-05-22 09:07:44 [Vb Rep] Error replicating vbucket 697. Please see logs for details.

在elasticsearch中,我的员工索引文档结构如下

{

    "_index": "employee",
    "_type": "couchbaseCheckpoint",
    "_id": "vbucket921UUID",
    "_score": 1,
    "_source": {
        "doc": {
            "uuid": "ec88aeb16c00427698f079d8a3fa7097"
        }
    }

}

我编写搜索查询,比如,我在http://127.0.0.1:9200/\u插件/头/

http://127.0.0.1:9200/employee/_search/

    { 
      "query": {
             "match":{
                    "query":"ec88aeb16c00427698f079d8a3fa7097",
                     "fields":["uuid"]
              }
        }
    }

这是一个错误

{

    "error": "SearchPhaseExecutionException[Failed to execute phase [query], all shards failed; shardFailures {[J2CjiG2vQqqrG2h5jlsudg][couchrecords][0]: SearchParseException[[couchrecords][0]: from[-1],size[-1]: Parse Failure [Failed to parse source [{"query":{"match":{"query":"ec88aeb16c00427698f079d8a3fa7097","fields":["uuid"]}}}]]]; nested: QueryParsingException[[couchrecords] [match] query parsed in simplified form, with direct field name, but included more options than just the field name, possibly use its 'options' form, with 'query' element?]; }{[J2CjiG2vQqqrG2h5jlsudg][couchrecords][1]: SearchParseException[[couchrecords][1]: from[-1],size[-1]: Parse Failure [Failed to parse source [{"query":{"match":{"query":"ec88aeb16c00427698f079d8a3fa7097","fields":["uuid"]}}}]]]; nested: QueryParsingException[[couchrecords] [match] query parsed in simplified form, with direct field name, but included more options than just the field name, possibly use its 'options' form, with 'query' element?]; }{[J2CjiG2vQqqrG2h5jlsudg][couchrecords][2]: SearchParseException[[couchrecords][2]: from[-1],size[-1]: Parse Failure [Failed to parse source [{"query":{"match":{"query":"ec88aeb16c00427698f079d8a3fa7097","fields":["uuid"]}}}]]]; nested: QueryParsingException[[couchrecords] [match] query parsed in simplified form, with direct field name, but included more options than just the field name, possibly use its 'options' form, with 'query' element?]; }{[J2CjiG2vQqqrG2h5jlsudg][couchrecords][3]: SearchParseException[[couchrecords][3]: from[-1],size[-1]: Parse Failure [Failed to parse source [{"query":{"match":{"query":"ec88aeb16c00427698f079d8a3fa7097","fields":["uuid"]}}}]]]; nested: QueryParsingException[[couchrecords] [match] query parsed in simplified form, with direct field name, but included more options than just the field name, possibly use its 'options' form, with 'query' element?]; }{[J2CjiG2vQqqrG2h5jlsudg][couchrecords][4]: SearchParseException[[couchrecords][4]: from[-1],size[-1]: Parse Failure [Failed to parse source [{"query":{"match":{"query":"ec88aeb16c00427698f079d8a3fa7097","fields":["uuid"]}}}]]]; nested: QueryParsingException[[couchrecords] [match] query parsed in simplified form, with direct field name, but included more options than just the field name, possibly use its 'options' form, with 'query' element?]; }]",
    "status": 400

}
nr7wwzry

nr7wwzry1#

插件使用couchbasecheckpoint文档保存每个vbucket的状态,以便它能够正确地模拟xdcr协议。这就是为什么有1025个——1024个vbuckets加上一个全局状态文件。
事实上,您在elasticsearch中拥有1025个文档,这意味着您只获得了state文档,而没有任何实际文档得到复制。您是否如安装指南中所述在elasticsearch中设置了Map?这看起来像是索引的问题,因此elasticsearch日志实际上会有一些有意义的错误,这些错误会告诉您为什么它不能索引任何文档。couchbase日志只告诉你它不能复制一些东西

相关问题