如何使用transporter为mongodb特定数据库的特定集合编制索引(elasticsearch)?
我想使用transporter在弹性搜索中只索引特定的mongodb集合。Mongodb服务器有多个具有多个集合的数据库。我不想为整个数据库编制索引。如果您只想复制my_实例集合中的文档,请使用管道中的名称空间过滤器,即如何使用transporter为mongodb特定数据库的特定集合编制索引(elasticsearch)?,mongodb,
elasticsearch,compose,Mongodb,
elasticsearch,Compose,我想使用transporter在弹性搜索中只索引特定的mongodb集合。Mongodb服务器有多个具有多个集合的数据库。我不想为整个数据库编制索引。如果您只想复制my_实例集合中的文档,请使用管道中的名称空间过滤器,即 var source = mongodb({ "uri": "mongodb://172.31.38.157:27017/STOREDB", "timeout": "30s", "read_preference": "Primary" }) var s
var source = mongodb({
"uri": "mongodb://172.31.38.157:27017/STOREDB",
"timeout": "30s",
"read_preference": "Primary"
})
var sink = elasticsearch({
"uri": "http://172.31.38.157:9200/INDEX_NAME"
})
t.Source("source", source, "/^my_instance$").Save("sink", sink, "/.*/")
此外,如果只需要选定集合中的特定数据,则集合过滤器设置将转换为mongodb查询。下面注释掉的示例只包括i字段值大于10的文档
var source = mongodb({
"uri": "mongodb://127.0.0.1:27017/test"
// "timeout": "30s",
// "tail": false,
// "ssl": false,
// "cacerts": ["/path/to/cert.pem"],
// "wc": 1,
// "fsync": false,
// "bulk": false,
// "collection_filters": "{\"foo\": {\"i\": {\"$gt\": 10}}}"
})