Skip to main content
 首页 » 编程设计

Elasticsearch快速初始化数据

2022年07月19日137qq号

设置分片和刷新间隔参数

实际应用中需要给Elasticsearch初始化数据,当数据量比较大时我们希望能够快速载入。可以给索引设置两个参数。

index.refresh_interval : 多长时间执行一次刷新操作,即使索引最近的更改在搜索中可见。缺省为1s,设置为-1则禁用刷新。

index.number_of_replicas : 每个主分片的副本数量,默认为1。可以设置为0,即没有副本。

上面两个参数设置可以更快索引,但短时间如果任何分片丢失会导致数据丢失的风险。因此,一旦初始化数据完成即刻设置回默认值。

使用自动生成的文档ID

当文档被索引时,即文档被创建。Elasticsearch需要检查文档在相同的分片中是否有相同的ID。这时高成本操作,随着索引增长尤为明显。如果使用自动生成ID,Elaticsearch则跳过该检查。

类比

Elasticsearch使用_bulk,postgreSQL 使用 copy, mysql 使用LOAD DATA

总结

就像我们在关系型数据库中载入数据时,先删除索引、外键。Elasticsearch也提供了相应参数进行设置。


本文参考链接:https://blog.csdn.net/neweastsun/article/details/114240449
阅读延展