在 Mapping 里面,将 dynamic 参数设置成 strict 可以拒绝索引包含未知字段的文档。 此条 Tips 由 medcl 贡献。

ES中多个type关联

Elasticsearch | 作者 myworld | 发布于2014年11月16日 | 阅读数:15505

现在有个这样的问题,比如现在有两个type,一个是公司type,一个是门店type,他们之间是一对多的关系,我在存储的时候,门店type里面有个公司的ID,但是没有公司的name,公司的name在公司type中,在关系型数据库中,我很容易根据join连接,查询出公司名称,在ES中应该怎么查呢?哪位大神,能帮助我一下!非常感谢!!!!
已邀请:

laigood

赞同来自: medcl Rubricate

你的这种情况可以使用es的parent-child,比较适合一对多关系,不过这个特性比较耗内存,你可以测试下是否合适

stab - freshman

赞同来自:

curl -XGET 'localhost:9200/books/_search' -d '{
"query" : {
"filtered" : {
"query" : {
"match_all" : {}
},
"filter" : {
"terms" : {
"id" : {
"index" : "clients",
"type" : "client",
"id" : "1",
"path" : "books"
},
"_cache_key" : "terms_lookup_client_1_books"
}
}
}
}
}'
看到有这么一种方法,可以去另一index里去取出信息,用到当前的query中,不知道对你的情况有没有帮助~

要回复问题请先登录注册