我正在尝试使用mongo-connector将数据从mongodb3.6推送到elasticsearch6.1。 我的记录是:
FactoryBot.define do
factory :store do
...
association :city
association :vendor
end
end
当我运行mongo-connector时,我收到以下错误:
db.administrators.find({}).pretty()
{
"_id" : ObjectId("5701d81893dc484c812b4fc1"),
"name" : "Test Naupada",
"username" : "adminn",
"ward" : "56a6129f44fc869f215fe3fe",
"password" : "nadmin"
}
rs0:PRIMARY> db.sub_ward_master.find({}).pretty()
{
"_id" : ObjectId("56a6129f44fc869f215fe3fe"),
"wardCode" : "3",
"wardName" : "Naupada",
"wardgeoCodes" : [],
"cityName" : "thane"
}
任何帮助? 感谢
答案 0 :(得分:1)
ES 6不允许在任何单个索引中创建more than one type。
mongo-connector repo中有一个open issue来支持ES 6.在解决之前,你应该选择ES 5。
答案 1 :(得分:-1)
您可以在ES6中通过为不同的文档类型创建新索引(即mongoDB中的不同集合)并使用-g标志将其指向新索引。
例如:
mongo-connector -m localhost:27017 -t localhost:9200 -d elastic2_doc_manager -n {db}.{collection_name} -g {new_index}.{document_type}.