在Elasticsearch中存储数据的正确方法是什么?

时间:2018-09-04 06:51:40

标签: elasticsearch

我的例子是这样的:

我要存储Alerts。例如,我有Alert Type1Alert Type2等。

每种警报类型可以具有不同的字段,例如:

  • Alert Type1:{客户,事件时间,文件。}
  • Alert Type2:{客户,事件时间,用户。}

选项1: 将所有警报保存在单个Index下,并将每个警报使用不同的类型

选项2: 为每个警报保留Index,这将使每个索引保持较小

每种方法的优缺点是什么?

我将进行的搜索主要在customer字段和incident_time字段上进行,但是许多查询将在特定的Alert Type上进行

1 个答案:

答案 0 :(得分:0)

这取决于您期望的每日警报数量,但我认为最好的选择是3:D

选项3:将所有警报保留在同一类型的单个Index下。并在查询时使用过滤器。

自版本5起,不建议在一个索引下使用不同类型的内容,在版本6中无法完成,并且将在版本7中明确删除。

  

在Elasticsearch 6.0.0或更高版本中创建的索引只能包含一个映射类型。在5.x中创建的具有多种映射类型的索引将继续像在Elasticsearch 6.x中一样工作。映射类型将在Elasticsearch 7.0.0中完全删除。

有关更多信息,请参见here

请勿使用多种类型的索引,除非您希望在升级到Elasticsearch的较新版本时进行重大重构。