 
							索引
文档部分更新和全部更新
Elasticsearch • ccsy 回复了问题 • 3 人关注 • 2 个回复 • 4605 次浏览 • 2019-01-22 10:39
ElasticSearch java api,想要实现一次请求查询多个类型的同时,每个类型只取固定数量的数据
Elasticsearch • HelloClyde 回复了问题 • 5 人关注 • 4 个回复 • 5656 次浏览 • 2019-01-12 10:55
es建立倒排索引时如何区分字段的?倒排索引是token对应文档的集合,里面是否区分token匹配到一篇文档的哪些字段?
Elasticsearch • weizijun 回复了问题 • 2 人关注 • 1 个回复 • 6065 次浏览 • 2018-11-16 12:46
有在实际应用场景中使用ES作为HBase的二级索引的吗?有啥好处?
Elasticsearch • zhangrui90 回复了问题 • 2 人关注 • 1 个回复 • 3555 次浏览 • 2018-10-11 09:44
集群合并时同名索引问题
Elasticsearch • laoyang360 回复了问题 • 3 人关注 • 1 个回复 • 3001 次浏览 • 2018-04-24 18:43
添加了ik自定义分词,之前入库的数据不能搜索出来,这个有什么好的解决方法?
Elasticsearch • lixiaoya529 回复了问题 • 6 人关注 • 6 个回复 • 6738 次浏览 • 2018-04-10 15:52
问下,ES能设置不同的字段间共享docFreq和docCount么
回复Elasticsearch • Howie Tien 发起了问题 • 1 人关注 • 0 个回复 • 2840 次浏览 • 2018-02-22 18:09
【翻译】Elasticsearch索引性能优化(2)
Elasticsearch • nodexy 发表了文章 • 0 个评论 • 11086 次浏览 • 2017-10-15 13:41
作者:Adam Vanderbush 译者:杨振涛@vivo 本系列文章重点关注如何最大化地提升elasticsearch的索引吞吐量和降低监控与管理负荷。 Elasticsearch是准实时的,这表示当索引一个文档后,需要等待下一次刷新后就可以搜索到该文档了。 刷新是一个开销较大的操作,这就是为什么默认要设置一个特定的间隔,而不是每索引一个文档就刷新一次。如果想索引大批量的文档,并不需要立刻就搜索到新的索引信息,为了优化索引性能甚至搜索性能,可以临时降低刷新的频率,直到索引操作完成。 一个索引库的分片由多个段组成。Lucene的核心数据结构中,一个段本质上是索引库的一个变更集。这些段是在每次刷新时所创建,随后会在后台合并到一起,以保证资源的高效使用;每个段都会消耗文件句柄、内存和CPU。工作在该场景背后的Lucene负责段的合并,一旦处理不当,可能会消耗昂贵的计算资源并导致Elasticsearch自动降级索引请求到一个单一线程上。 本文将继续关注Elasticsearch的索引性能调优,重点聚焦在集群和索引级别的各种索引配置项设置。 1 关注refresh_interval参数 这个间隔通过参数index.refresh_interval设置,既可以在Elasticsearch配置文件里全局设置,也可以针对每一个索引库单独设置。如果同时设置,索引库设置会覆盖全局配置。默认值是1s,因此最新索引的文档最多不超过1s后即可搜索到。 因为刷新是非常昂贵的操作,提升索引吞吐量的方式之一就是增大refresh_interval;更少的刷新意味着更低的负载,并且更多的资源可以向索引线程倾斜。因此,根据搜索需求,可以考虑设置刷新间隔为大于1秒的值;甚至可以考虑在某些时候,比如执行批量索引时,临时关闭索引库的刷新操作,执行结束后再手动打开。 更新设置API可以在批量索引时动态改变索引以便更加高效,然后再修改为更加实时的索引状态。在批量索引开始前,设置:本文翻译自QBox官方博客的“Elasticsearch索引性能优化”系列文章中的第二篇,版权归原作者 Adam Vanderbush所有。该系列文章共有三篇,其中第一篇已有同行翻译,参考链接http://www.zcfy.cc/article/how ... .html 后续还会有第三篇的推送,敬请关注。
curl -XPUT 'localhost:9200/test/_settings' -d '{
   "index" : {
       "refresh_interval" : "-1"
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d ' {
   "index" : {
       "number_of_replicas" : 0
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d '{
   "index" : {
       "refresh_interval" : "1s"
   } 
}'curl -XPOST 'localhost:9200/my_index/_forcemerge?max_num_segments=5'curl -XPOST 'localhost:9200/my_index/_refresh'curl -XPUT 'localhost:9200/test/_settings' -d '{
   "index" : {
       "refresh_interval" : "-1"
   }
}'curl -XPUT 'localhost:9200/_cluster/settings' -d '{
   "transient" : {
       "indices.store.throttle.type" : "none" 
   }
}'curl -XPUT 'localhost:9200/_cluster/settings' -d '{
   "transient" : {
       "indices.store.throttle.type" : "merge" 
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d '{ 
   "index.merge.scheduler.max_thread_count" : 1
}'curl -XPUT 'localhost:9200/_settings' -d '{ 
    "index.merge.scheduler.max_thread_count" : 1
}'
未经授权,禁止转载。 英文原文地址:https://qbox.io/blog/maximize- ... art-2杨振涛 vivo互联网搜索引擎团队负责人,开发经理。10年数据和软件领域经验,先后从事基因测序、电商、IM及厂商互联网领域的系统架构设计和实现。专注于实时分布式系统和大数据的存储、检索和可视化,尤其是搜索引擎及深度学习在NLP方向的应用。技术翻译爱好者,TED Translator,InfoQ中文社区编辑。
使用java rest client http向elasticsearch添加数据有编码问题
Elasticsearch • laoyang360 回复了问题 • 2 人关注 • 1 个回复 • 3265 次浏览 • 2017-09-19 07:15
求教ES切词精确匹配
Elasticsearch • xiaoke 回复了问题 • 2 人关注 • 3 个回复 • 6229 次浏览 • 2017-09-12 19:55
es1.x版本10GB数据如何实现2.3.4版本迁移操作?
Elasticsearch • novia 回复了问题 • 4 人关注 • 3 个回复 • 3630 次浏览 • 2017-07-11 10:56
关于es更新与备份
Elasticsearch • wuyinggui 回复了问题 • 6 人关注 • 3 个回复 • 4742 次浏览 • 2017-05-17 18:23
急!存入的long型数据值被改变了!
Elasticsearch • Xargin 回复了问题 • 2 人关注 • 1 个回复 • 11314 次浏览 • 2017-02-28 22:20
ElasticSearch java api,想要实现一次请求查询多个类型的同时,每个类型只取固定数量的数据
回复Elasticsearch • HelloClyde 回复了问题 • 5 人关注 • 4 个回复 • 5656 次浏览 • 2019-01-12 10:55
es建立倒排索引时如何区分字段的?倒排索引是token对应文档的集合,里面是否区分token匹配到一篇文档的哪些字段?
回复Elasticsearch • weizijun 回复了问题 • 2 人关注 • 1 个回复 • 6065 次浏览 • 2018-11-16 12:46
有在实际应用场景中使用ES作为HBase的二级索引的吗?有啥好处?
回复Elasticsearch • zhangrui90 回复了问题 • 2 人关注 • 1 个回复 • 3555 次浏览 • 2018-10-11 09:44
添加了ik自定义分词,之前入库的数据不能搜索出来,这个有什么好的解决方法?
回复Elasticsearch • lixiaoya529 回复了问题 • 6 人关注 • 6 个回复 • 6738 次浏览 • 2018-04-10 15:52
问下,ES能设置不同的字段间共享docFreq和docCount么
回复Elasticsearch • Howie Tien 发起了问题 • 1 人关注 • 0 个回复 • 2840 次浏览 • 2018-02-22 18:09
使用java rest client http向elasticsearch添加数据有编码问题
回复Elasticsearch • laoyang360 回复了问题 • 2 人关注 • 1 个回复 • 3265 次浏览 • 2017-09-19 07:15
es1.x版本10GB数据如何实现2.3.4版本迁移操作?
回复Elasticsearch • novia 回复了问题 • 4 人关注 • 3 个回复 • 3630 次浏览 • 2017-07-11 10:56
不分词建好了索引,上亿条数据,我现在想加入分词,是不是只能重新建?
回复Elasticsearch • martindu 回复了问题 • 2 人关注 • 1 个回复 • 4983 次浏览 • 2016-10-12 17:26
【翻译】Elasticsearch索引性能优化(2)
Elasticsearch • nodexy 发表了文章 • 0 个评论 • 11086 次浏览 • 2017-10-15 13:41
作者:Adam Vanderbush 译者:杨振涛@vivo 本系列文章重点关注如何最大化地提升elasticsearch的索引吞吐量和降低监控与管理负荷。 Elasticsearch是准实时的,这表示当索引一个文档后,需要等待下一次刷新后就可以搜索到该文档了。 刷新是一个开销较大的操作,这就是为什么默认要设置一个特定的间隔,而不是每索引一个文档就刷新一次。如果想索引大批量的文档,并不需要立刻就搜索到新的索引信息,为了优化索引性能甚至搜索性能,可以临时降低刷新的频率,直到索引操作完成。 一个索引库的分片由多个段组成。Lucene的核心数据结构中,一个段本质上是索引库的一个变更集。这些段是在每次刷新时所创建,随后会在后台合并到一起,以保证资源的高效使用;每个段都会消耗文件句柄、内存和CPU。工作在该场景背后的Lucene负责段的合并,一旦处理不当,可能会消耗昂贵的计算资源并导致Elasticsearch自动降级索引请求到一个单一线程上。 本文将继续关注Elasticsearch的索引性能调优,重点聚焦在集群和索引级别的各种索引配置项设置。 1 关注refresh_interval参数 这个间隔通过参数index.refresh_interval设置,既可以在Elasticsearch配置文件里全局设置,也可以针对每一个索引库单独设置。如果同时设置,索引库设置会覆盖全局配置。默认值是1s,因此最新索引的文档最多不超过1s后即可搜索到。 因为刷新是非常昂贵的操作,提升索引吞吐量的方式之一就是增大refresh_interval;更少的刷新意味着更低的负载,并且更多的资源可以向索引线程倾斜。因此,根据搜索需求,可以考虑设置刷新间隔为大于1秒的值;甚至可以考虑在某些时候,比如执行批量索引时,临时关闭索引库的刷新操作,执行结束后再手动打开。 更新设置API可以在批量索引时动态改变索引以便更加高效,然后再修改为更加实时的索引状态。在批量索引开始前,设置:本文翻译自QBox官方博客的“Elasticsearch索引性能优化”系列文章中的第二篇,版权归原作者 Adam Vanderbush所有。该系列文章共有三篇,其中第一篇已有同行翻译,参考链接http://www.zcfy.cc/article/how ... .html 后续还会有第三篇的推送,敬请关注。
curl -XPUT 'localhost:9200/test/_settings' -d '{
   "index" : {
       "refresh_interval" : "-1"
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d ' {
   "index" : {
       "number_of_replicas" : 0
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d '{
   "index" : {
       "refresh_interval" : "1s"
   } 
}'curl -XPOST 'localhost:9200/my_index/_forcemerge?max_num_segments=5'curl -XPOST 'localhost:9200/my_index/_refresh'curl -XPUT 'localhost:9200/test/_settings' -d '{
   "index" : {
       "refresh_interval" : "-1"
   }
}'curl -XPUT 'localhost:9200/_cluster/settings' -d '{
   "transient" : {
       "indices.store.throttle.type" : "none" 
   }
}'curl -XPUT 'localhost:9200/_cluster/settings' -d '{
   "transient" : {
       "indices.store.throttle.type" : "merge" 
   }
}'curl -XPUT 'localhost:9200/my_index/_settings' -d '{ 
   "index.merge.scheduler.max_thread_count" : 1
}'curl -XPUT 'localhost:9200/_settings' -d '{ 
    "index.merge.scheduler.max_thread_count" : 1
}'
未经授权,禁止转载。 英文原文地址:https://qbox.io/blog/maximize- ... art-2杨振涛 vivo互联网搜索引擎团队负责人,开发经理。10年数据和软件领域经验,先后从事基因测序、电商、IM及厂商互联网领域的系统架构设计和实现。专注于实时分布式系统和大数据的存储、检索和可视化,尤其是搜索引擎及深度学习在NLP方向的应用。技术翻译爱好者,TED Translator,InfoQ中文社区编辑。













