es里面提供了两种批量建索引的方法: 1,使用 Bulk Api 特点是:使用比较简单,但控制不够灵活 2,使用Bulk Processor 特点是:使用稍麻烦,控制非常灵活 至于为什么要批量建索引,相信大伙已经不陌生了,为的就是提高写入效率,效率,效率! 数量大的情况下,10ms性能的提升,都有可能带来巨大的优化效果,所以时时刻刻考虑系统的性能无疑是 一个优秀的工程师必须具备的一种素质。 下面来看下在Java中,具体怎么用: (一)关于Bulk Api用法,这里直接引用es官网的例子了,大伙请直接看截图:
(二)使用Bulk Processor处理也比较简单,注意参数的设置,会影响索引的性能: BulkProcessor实例初始化之后,就可以直接 游标读取添加就行:
建立索引时,可以关闭索引的副本功能,可以极大提高写入效率,但索引完成时,可以执行如下命令动态,添加副本:
Shell代码
curl -XPUT 'localhost:9200/company/_settings' -d '{ "index" : { "number_of_replicas" : 2} }'