如何使用 ElasticSearch 的 doc 类型

How can I use the doc type of ElasticSearch

我们知道在ElasticSearch中有Index和doc Type,查询url是这样的:192.168.0.10:/index/type。我的问题是我们可以通过使用类型来做什么,我在想我可以直接使用另一个索引。如果我使用类型而不是新索引有什么好处?例如,如果我想创建两个索引作为书籍和商品。我可以创建两个索引,例如:/book /goods,也可以创建一个索引,有两种类型:/myindex/book、/myindex/goods。

Lucene 不知道文档类型,只有 Elasticsearch 使用它。每个文档的类型名称与文档一起存储在名为 _type 的元数据字段中。当我们搜索特定类型的文档时,Elasticsearch 只是在 _type 字段上使用过滤器将结果限制为该类型的文档。

因此,类型只是一种逻辑表示和一种快速过滤文档。属于同一个索引的类型到达同一个索引,一个分片可以包含来自多个类型的文档。

如果您使用单独的索引,而不是单独的类型,您的节点将包含多个较小的分片。节点中的分片数量很重要,因为节点的资源(内存、CPU、IOPS)在分片之间共享。