假设我有一千个键,并且我想存储关联的值。直观的方法似乎像
{ "key1":"someval", "key2":"someotherval", ... }
对于Elasticsearch索引具有数千个键来说,这是一种不良的设计模式吗?以这种方式引入的每个键都会为索引下的每个文档增加开销吗?
如果您知道键数有上限,那么几千个字段就不成问题。
问题是当您拥有一组无限制的键时,例如,当键是从一个值派生时,因为您将拥有一个不断增长的映射关系以及簇状态。它还可能导致奇怪的搜索。
这是一个足够常见的问题/问题,我在“ Elasticsearch搜索疑难解答”一文中为初学者专门介绍了一部分。
简而言之,成千上万个字段是没有问题的-无法控制映射。