无论才能、知识多么卓著,如果缺乏热情,则无异纸上画饼充饥,无补于事。

Elastic Meetup 长沙交流会

timg_(3).jpeg

 
Elastic Meetup 下半年活动首站位于长沙,是湖南省省会,古称潭州,别名星城,历经三千年城名、城址不变,有“屈贾之乡”、“楚汉名城”、“潇湘洙泗”之称。
 

主办:
本次活动由 Elastic 与长沙软件园联合举办。
 
时间:
2017.10.28​  下午2:30-5:30
 
地点:
长沙市岳麓区岳麓大道588号芯城科技园2栋4楼会议室
 
主题:
  1. Elastic - Medcl - Elastic Stack 6.0 新功能介绍
  2. 芒果 TV - 刘波涛 - 芒果日志之旅
  3. 基于爬虫和 Elasticsearch 快速构建站内搜索引擎
  4. 闪电分享(5-10分钟,可现场报名)

 
参会报名:
http://elasticsearch.mikecrm.com/O6o0yq3
 

 

武汉、广州、深圳也在筹备中:https://elasticsearch.cn/article/261
 
 
关于 Elastic Meetup
Elastic Meetup 由 Elastic 中文社区定期举办的线下交流活动,主要围绕 Elastic 的开源产品(Elasticsearch、Logstash、Kibana 和 Beats)及周边技术,探讨在搜索、数据实时分析、日志分析、安全等领域的实践与应用。


 
关于 Elastic

elastic-logo-H-full-color.jpg


Elastic 通过构建软件,让用户能够实时地、大规模地将数据用于搜索、日志和分析场景。Elastic 创立于 2012 年,相继开发了开源的 Elastic Stack(Elasticsearch、Kibana、Beats 和 Logstash)、X-Pack(商业功能)和 Elastic Cloud(托管服务)。截至目前,累计下载量超过 1.5 亿。Benchmark Capital、Index Ventures 和 NEA 为 Elastic 提供了超过 1 亿美元资金作为支持,Elastic 共有 600 多名员工,分布在 30 个国家/地区。有关更多信息,请访问 elastic.co/cn。
 
关于长沙软件园

WechatIMG29.jpg


长沙软件园有限公司成立于2001年,注册资本3000万元人民币,位于长沙高新区麓谷科技新城,是国家科技部批准的国家火炬计划软件产业基地、国家数字媒体技术产业化基地、国家863软件专业孵化器,是国家发改委、信息产业部批准的中部地区唯一的国家软件产业基地。

现有专职的管理和专业技术人员40多人,全部具有大学本科及以上学历,其中硕士和博士学历人员占35%左右,具有中高级职称人员占50%左右,具备丰富的软件行业管理、产业服务和专业技术服务的经历和经验。

从软件园有限公司正式成立以来,先后承担科技部火炬计划项目:“中间件技术公共应用开发平台”和“长沙资源信息管理系统”、“长沙软件园优势领域关键共性技术开发应用平台”;承担了2个国家科技部863项目:“面向网络应用集成的软件支撑环境”、“支持银税类控制设备智能化升级的嵌入式软件平台”,承担了国家火炬计划课题,所有课题均顺利结题。
 
 
再次感谢长沙软件园的大力支持!
继续阅读 »
timg_(3).jpeg

 
Elastic Meetup 下半年活动首站位于长沙,是湖南省省会,古称潭州,别名星城,历经三千年城名、城址不变,有“屈贾之乡”、“楚汉名城”、“潇湘洙泗”之称。
 

主办:
本次活动由 Elastic 与长沙软件园联合举办。
 
时间:
2017.10.28​  下午2:30-5:30
 
地点:
长沙市岳麓区岳麓大道588号芯城科技园2栋4楼会议室
 
主题:
  1. Elastic - Medcl - Elastic Stack 6.0 新功能介绍
  2. 芒果 TV - 刘波涛 - 芒果日志之旅
  3. 基于爬虫和 Elasticsearch 快速构建站内搜索引擎
  4. 闪电分享(5-10分钟,可现场报名)

 
参会报名:
http://elasticsearch.mikecrm.com/O6o0yq3
 

 

武汉、广州、深圳也在筹备中:https://elasticsearch.cn/article/261
 
 
关于 Elastic Meetup
Elastic Meetup 由 Elastic 中文社区定期举办的线下交流活动,主要围绕 Elastic 的开源产品(Elasticsearch、Logstash、Kibana 和 Beats)及周边技术,探讨在搜索、数据实时分析、日志分析、安全等领域的实践与应用。


 
关于 Elastic

elastic-logo-H-full-color.jpg


Elastic 通过构建软件,让用户能够实时地、大规模地将数据用于搜索、日志和分析场景。Elastic 创立于 2012 年,相继开发了开源的 Elastic Stack(Elasticsearch、Kibana、Beats 和 Logstash)、X-Pack(商业功能)和 Elastic Cloud(托管服务)。截至目前,累计下载量超过 1.5 亿。Benchmark Capital、Index Ventures 和 NEA 为 Elastic 提供了超过 1 亿美元资金作为支持,Elastic 共有 600 多名员工,分布在 30 个国家/地区。有关更多信息,请访问 elastic.co/cn。
 
关于长沙软件园

WechatIMG29.jpg


长沙软件园有限公司成立于2001年,注册资本3000万元人民币,位于长沙高新区麓谷科技新城,是国家科技部批准的国家火炬计划软件产业基地、国家数字媒体技术产业化基地、国家863软件专业孵化器,是国家发改委、信息产业部批准的中部地区唯一的国家软件产业基地。

现有专职的管理和专业技术人员40多人,全部具有大学本科及以上学历,其中硕士和博士学历人员占35%左右,具有中高级职称人员占50%左右,具备丰富的软件行业管理、产业服务和专业技术服务的经历和经验。

从软件园有限公司正式成立以来,先后承担科技部火炬计划项目:“中间件技术公共应用开发平台”和“长沙资源信息管理系统”、“长沙软件园优势领域关键共性技术开发应用平台”;承担了2个国家科技部863项目:“面向网络应用集成的软件支撑环境”、“支持银税类控制设备智能化升级的嵌入式软件平台”,承担了国家火炬计划课题,所有课题均顺利结题。
 
 
再次感谢长沙软件园的大力支持! 收起阅读 »

社区日报 第73期 (2017-10-18)

1. 基于 ELKB 搭建实时日志分析平台
http://t.cn/RCeSfaP 
2. 通过 Nginx 给 ES 加一个安全的外衣
http://t.cn/ROB4eiQ 
3. 来自 db-engines 的 ES 与 Redis对比
http://t.cn/ROBqcYF 
 
编辑:江水
归档:https://elasticsearch.cn/article/319 
订阅:https://tinyletter.com/elastic-daily
继续阅读 »
1. 基于 ELKB 搭建实时日志分析平台
http://t.cn/RCeSfaP 
2. 通过 Nginx 给 ES 加一个安全的外衣
http://t.cn/ROB4eiQ 
3. 来自 db-engines 的 ES 与 Redis对比
http://t.cn/ROBqcYF 
 
编辑:江水
归档:https://elasticsearch.cn/article/319 
订阅:https://tinyletter.com/elastic-daily 收起阅读 »

社区日报 第72期 (2017-10-17)

1.饕餮盛宴,2017年官方推荐的Elastic十大精彩演讲,涵盖机器学习、X-pack、SQL等内容,值得收藏。
http://t.cn/R0cF6fm 
2.升级到kibana5.5.3时你可能需要重点关注的一些内容。
http://t.cn/ROQdl04 
3.低成本高回报,使用MapR网关功能复制数据到es并进行全文搜索、可视化显示。
http://t.cn/ROQdHCz 

编辑:叮咚光军
归档:https://elasticsearch.cn/article/318 
订阅:https://tinyletter.com/elastic-daily 
 
继续阅读 »
1.饕餮盛宴,2017年官方推荐的Elastic十大精彩演讲,涵盖机器学习、X-pack、SQL等内容,值得收藏。
http://t.cn/R0cF6fm 
2.升级到kibana5.5.3时你可能需要重点关注的一些内容。
http://t.cn/ROQdl04 
3.低成本高回报,使用MapR网关功能复制数据到es并进行全文搜索、可视化显示。
http://t.cn/ROQdHCz 

编辑:叮咚光军
归档:https://elasticsearch.cn/article/318 
订阅:https://tinyletter.com/elastic-daily 
  收起阅读 »

一个仿Linux 控制台的ES的_cat的插件

00-console.png

  • 简化_cat使用,可以直接输入 cat 命令 ,可以滚动查看历史结果
  • 支持字体放大缩小
  • 支持命令历史记录(通过上下方向键来切换 )
  • 支持鼠标划取的复制粘贴(暂不复制到剪贴板)
  • 安装后在 http://127.0.0.1:9200/_console  使用,也可本地使用:直接访问html文件

 
GIT 地址
 
欢迎加 576037940 这个群讨论哈
 
继续阅读 »
00-console.png

  • 简化_cat使用,可以直接输入 cat 命令 ,可以滚动查看历史结果
  • 支持字体放大缩小
  • 支持命令历史记录(通过上下方向键来切换 )
  • 支持鼠标划取的复制粘贴(暂不复制到剪贴板)
  • 安装后在 http://127.0.0.1:9200/_console  使用,也可本地使用:直接访问html文件

 
GIT 地址
 
欢迎加 576037940 这个群讨论哈
  收起阅读 »

社区日报 第71期 (2017-10-16)

1.老文新发,讲述百度搜索架构的优化历程,其中很多经验值得在使用es中注意。
http://t.cn/R4wpIvT
2.logTrail,一款kibana 日志可视化展插件。
http://t.cn/RcXglR2
3.斗鱼的elk实践发展史。
http://t.cn/ROHWPdu

编辑:cyberdak
归档:https://elasticsearch.cn/article/316
订阅:https://tinyletter.com/elastic-daily
继续阅读 »
1.老文新发,讲述百度搜索架构的优化历程,其中很多经验值得在使用es中注意。
http://t.cn/R4wpIvT
2.logTrail,一款kibana 日志可视化展插件。
http://t.cn/RcXglR2
3.斗鱼的elk实践发展史。
http://t.cn/ROHWPdu

编辑:cyberdak
归档:https://elasticsearch.cn/article/316
订阅:https://tinyletter.com/elastic-daily 收起阅读 »

【翻译】Elasticsearch索引性能优化(2)


本文翻译自QBox官方博客的“Elasticsearch索引性能优化”系列文章中的第二篇,版权归原作者 Adam Vanderbush所有。该系列文章共有三篇,其中第一篇已有同行翻译,参考链接http://www.zcfy.cc/article/how ... .html   后续还会有第三篇的推送,敬请关注。


 
作者:Adam Vanderbush
译者:杨振涛@vivo
 
本系列文章重点关注如何最大化地提升elasticsearch的索引吞吐量和降低监控与管理负荷。

Elasticsearch是准实时的,这表示当索引一个文档后,需要等待下一次刷新后就可以搜索到该文档了。

刷新是一个开销较大的操作,这就是为什么默认要设置一个特定的间隔,而不是每索引一个文档就刷新一次。如果想索引大批量的文档,并不需要立刻就搜索到新的索引信息,为了优化索引性能甚至搜索性能,可以临时降低刷新的频率,直到索引操作完成。

一个索引库的分片由多个段组成。Lucene的核心数据结构中,一个段本质上是索引库的一个变更集。这些段是在每次刷新时所创建,随后会在后台合并到一起,以保证资源的高效使用;每个段都会消耗文件句柄、内存和CPU。工作在该场景背后的Lucene负责段的合并,一旦处理不当,可能会消耗昂贵的计算资源并导致Elasticsearch自动降级索引请求到一个单一线程上。

本文将继续关注Elasticsearch的索引性能调优,重点聚焦在集群和索引级别的各种索引配置项设置。

 
1 关注refresh_interval参数

这个间隔通过参数index.refresh_interval设置,既可以在Elasticsearch配置文件里全局设置,也可以针对每一个索引库单独设置。如果同时设置,索引库设置会覆盖全局配置。默认值是1s,因此最新索引的文档最多不超过1s后即可搜索到。

因为刷新是非常昂贵的操作,提升索引吞吐量的方式之一就是增大refresh_interval;更少的刷新意味着更低的负载,并且更多的资源可以向索引线程倾斜。因此,根据搜索需求,可以考虑设置刷新间隔为大于1秒的值;甚至可以考虑在某些时候,比如执行批量索引时,临时关闭索引库的刷新操作,执行结束后再手动打开。

更新设置API可以在批量索引时动态改变索引以便更加高效,然后再修改为更加实时的索引状态。在批量索引开始前,设置:
curl -XPUT 'localhost:9200/test/_settings' -d '{
"index" : {
"refresh_interval" : "-1"
}
}'

如果要做一次较大的批量导入,可以考虑设置index.number_of_replicas: 0来禁止副本。当设置了副本后,整个文档会被发送到副本节点,并重复索引过程;这意味着每个副本都会执行分析、索引及可能的合并操作。反之,如果索引时设置0副本,完成后再打开副本支持,恢复过程实质上只是一个网络字节流传输的过程,这比重复索引过程要高效得多了。
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'

刷新API支持显式地刷新一个或多个索引库,以便让上次刷新后的所有操作完成并可被搜索感知。实时或近实时能力取决于所使用的索引引擎。比如,内置引擎要求显式调用刷新,而默认地刷新是周期性执行的。
curl -XPOST 'localhost:9200/my_index/_refresh'


 2 段与合并

段合并是一个计算开销较大的操作,而且会消耗大量的磁盘I/O。由于合并操作比较耗时,尤其是较大的段,所以一般设定为后台执行;这也没什么太大问题,因为大段的合并相对还是比较少的。

但也有时候,合并速率会低于生产速率;一旦如此,Elasticsearch将会自动地限流索引请求到一个单一线程。这能阻止段爆发问题,否则在合并前可能会生成数百个段。

Elasticsearch在这里默认是比较保守的:不希望搜索性能受到后台合并操作的挤兑;但有时(尤其是使用SSD,或写日志的场景)节流限制会过低。

默认的20 MB/s对于传统机械磁盘是一个挺不错的设置;如果使用SSD,可能要考虑加大该设置到100–200 MB/s。
curl -XPUT 'localhost:9200/test/_settings' -d '{
"index" : {
"refresh_interval" : "-1"
}
}'

如果正在做批量导入,且根本不介意搜索,就可以彻底关闭合并限流;这样索引操作就会根据磁盘的速率尽可能快地执行:
curl -XPUT 'localhost:9200/_cluster/settings' -d '{
"transient" : {
"indices.store.throttle.type" : "none"
}
}'

设置限流类型为none就可以完全关闭合并限流;等批量导入完成后再恢复该配置项为merge。
curl -XPUT 'localhost:9200/_cluster/settings' -d '{
"transient" : {
"indices.store.throttle.type" : "merge"
}
}'

注意:上面的设置只适用于Elasticsearch 1.X版本,Elasticsearch 2.X移除了索引级别的速率限制(indices.store.throttle.type、 indices.store.throttle.max_bytes_per_sec、index.store.throttle.type、 index.store.throttle.max_bytes_per_sec),下沉到Lucene的ConcurrentMergeScheduler,以自动管理限流。

合并调度器(ConcurrentMergeScheduler)在需要时会控制合并操作的执行。合并操作运行在独立的线程池中,一旦达到最大线程数,更多的合并请求将会阻塞等待,直到有可用的合并线程。

合并调度器支持下列动态设置: 
index.merge.scheduler.max_thread_count

最大线程数默认为 Math.max(1,Math.min(4,Runtime.getRuntime().availableProcessors() / 2)),对于固态硬盘(SSD)工作得很好;如果使用传统机械硬盘,则降低到1。

机械介质在并发I/O方面有较大的时间开销,因此需要减少线程数,以便能按索引并发访问磁盘。该设置允许每次有max_thread_count + 2个线程操作磁盘,所以设置为1表示支持3个线程。

如果使用机械硬盘而不是SSD,就要在elasticsearch配置文件中加入以下配置: 
index.merge.scheduler.max_thread_count: 1

当然也可以为单个索引库设置:
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
}'


 3 事务日志的清理

在节点挂掉时事务日志可以防止数据丢失,设计初衷是帮助在flush时原本丢失的分片恢复运行。该日志每5秒,或者在每个索引、删除、更新或批量请求(不管先后顺序)完成时,会提交到磁盘一次。

对Lucene的变更仅会在一次Lucene提交后持久化到磁盘,Lucene提交是比较重量级的操作,索引不能再每个索引或删除操作后就执行。当进程退出或硬件故障时,一次提交后或另一次提交前的变更将会丢失。

为防止这些数据丢失,每个分片有一个事务日志,或者与之关联的预写日志。任何索引或删除操作,在内置的Lucene索引处理完成后都是写到事务日志中。崩溃发生后,就可以从事务日志回放最近的事务来恢复分片。

Elasticsearch的flush操作,本质上是执行了一次Lucene提交并启动了一个新的事务日志;这些都是在后台自动完成的,目的是确保事务日志不会变得过大,否则恢复数据期间的回放操作可能需要消耗相当长的时间。这个功能同样暴露了一个API供调用,虽然很少需要手动触发。

与刷新(refresh)一个索引分片相比,真正昂贵的操作是flush其事务日志(这涉及到Lucene提交)。Elasticsearch基于许多随时可变的定时器来执行flush。通过延迟flush或者彻底关闭flush可以提升索引吞吐量。不过并没有免费的午餐,延迟flush最终实际执行时显然会消耗更长的时间。

下列可动态更新的配置控制着内存缓存刷新到磁盘的频率:

index.translog.flush_threshold_size - 一旦事务日志达到这个值,就会发生一次flush;默认值为512mb。

index.translog.flush_threshold_ops - 在多少操作后执行flush,默认无限制。

index.translog.flush_threshold_period - 触发一次flush前的等待时间,不管日志大小,默认值为30分钟。

index.translog.interval - 检查是否需要flush的时间间隔,随机在该时间到2倍之间取值,默认为5秒。

可以把index.translog.flush_threshold_size的值从默认值的512MB调大比如到1GB,这样在一次flush发生前就可以在日志中积累更大的段。通过构建更大的段,就可以减少flush的次数以及大段的合并次数。所有这些措施加起来就会减少磁盘I/O并获得更好的索引效率。

当然,这需要一定数量的可用堆内存,用于额外的缓存空间,所以调整此类配置时请注意这一点。


 4 索引缓冲区的容量规划

索引缓冲区用于存储新的索引文档,如果满了,缓冲区的文档就会写到磁盘上的一个段。节点上所有分片的缓冲区都是独立的。

下列配置项是静态的,并且必须在集群的每个数据节点上都配置:

indices.memory.index_buffer_size - 可设置为百分比或者字节数大小,默认是10%,表示总内存的10%分配给该节点,作为索引缓冲区大小,全局共享。

indices.memory.min_index_buffer_size - 如果index_buffer_size设置为百分比,那么这项配置用于指定一个绝对下限,默认是48MB。

indices.memory.max_index_buffer_size - 如果index_buffer_size设置为百分比,那么这项配置用于指定一个绝对上限,默认是无限制。

配置项indices.memory.index_buffer_size定义了可供索引操作使用的堆内存百分比(剩余堆内存将主要用于检索操作)。如果要索引很多数据,默认的10%可能会太小,有必要调大该值。


5 索引和批量操作的线程池大小

接下来试试在节点级别调大索引和批量操作的线程池大小,看看否带来性能提升。

index - 用于索引和删除操作。线程类型是固定大小的(fixed),默认大小是可用处理器核数,队列大小queue_size是200,该线程池最大为1+可用处理器核数。

bulk - 用于批量操作。线程类型是固定大小的,默认大小是可用处理器核数,队列大小是50,线程池最大为1+可用处理器核数。

单个分片与独立的Lucene是一个层次,因此同时执行索引的并发线程数是有上限的,在Lucene中默认是8,而在ES中可以通过index.index_concurrency配置项来设置。

在为该参数设置默认值时应当多想一想,特别是对于往一个索引库索引数据时,一个节点只有一个分片的情况。

由于索引/批量线程池可以保护和控制并发,所以大部分时候都可以考虑调大默认值;尤其是对于节点上没有其他分片的情况(评估是否值得),可以考虑调大该值。


关于译者


杨振涛

vivo互联网搜索引擎团队负责人,开发经理。10年数据和软件领域经验,先后从事基因测序、电商、IM及厂商互联网领域的系统架构设计和实现。专注于实时分布式系统和大数据的存储、检索和可视化,尤其是搜索引擎及深度学习在NLP方向的应用。技术翻译爱好者,TED Translator,InfoQ中文社区编辑。


 
 
未经授权,禁止转载。
 
英文原文地址:https://qbox.io/blog/maximize- ... art-2 
继续阅读 »


本文翻译自QBox官方博客的“Elasticsearch索引性能优化”系列文章中的第二篇,版权归原作者 Adam Vanderbush所有。该系列文章共有三篇,其中第一篇已有同行翻译,参考链接http://www.zcfy.cc/article/how ... .html   后续还会有第三篇的推送,敬请关注。


 
作者:Adam Vanderbush
译者:杨振涛@vivo
 
本系列文章重点关注如何最大化地提升elasticsearch的索引吞吐量和降低监控与管理负荷。

Elasticsearch是准实时的,这表示当索引一个文档后,需要等待下一次刷新后就可以搜索到该文档了。

刷新是一个开销较大的操作,这就是为什么默认要设置一个特定的间隔,而不是每索引一个文档就刷新一次。如果想索引大批量的文档,并不需要立刻就搜索到新的索引信息,为了优化索引性能甚至搜索性能,可以临时降低刷新的频率,直到索引操作完成。

一个索引库的分片由多个段组成。Lucene的核心数据结构中,一个段本质上是索引库的一个变更集。这些段是在每次刷新时所创建,随后会在后台合并到一起,以保证资源的高效使用;每个段都会消耗文件句柄、内存和CPU。工作在该场景背后的Lucene负责段的合并,一旦处理不当,可能会消耗昂贵的计算资源并导致Elasticsearch自动降级索引请求到一个单一线程上。

本文将继续关注Elasticsearch的索引性能调优,重点聚焦在集群和索引级别的各种索引配置项设置。

 
1 关注refresh_interval参数

这个间隔通过参数index.refresh_interval设置,既可以在Elasticsearch配置文件里全局设置,也可以针对每一个索引库单独设置。如果同时设置,索引库设置会覆盖全局配置。默认值是1s,因此最新索引的文档最多不超过1s后即可搜索到。

因为刷新是非常昂贵的操作,提升索引吞吐量的方式之一就是增大refresh_interval;更少的刷新意味着更低的负载,并且更多的资源可以向索引线程倾斜。因此,根据搜索需求,可以考虑设置刷新间隔为大于1秒的值;甚至可以考虑在某些时候,比如执行批量索引时,临时关闭索引库的刷新操作,执行结束后再手动打开。

更新设置API可以在批量索引时动态改变索引以便更加高效,然后再修改为更加实时的索引状态。在批量索引开始前,设置:
curl -XPUT 'localhost:9200/test/_settings' -d '{
"index" : {
"refresh_interval" : "-1"
}
}'

如果要做一次较大的批量导入,可以考虑设置index.number_of_replicas: 0来禁止副本。当设置了副本后,整个文档会被发送到副本节点,并重复索引过程;这意味着每个副本都会执行分析、索引及可能的合并操作。反之,如果索引时设置0副本,完成后再打开副本支持,恢复过程实质上只是一个网络字节流传输的过程,这比重复索引过程要高效得多了。
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'

刷新API支持显式地刷新一个或多个索引库,以便让上次刷新后的所有操作完成并可被搜索感知。实时或近实时能力取决于所使用的索引引擎。比如,内置引擎要求显式调用刷新,而默认地刷新是周期性执行的。
curl -XPOST 'localhost:9200/my_index/_refresh'


 2 段与合并

段合并是一个计算开销较大的操作,而且会消耗大量的磁盘I/O。由于合并操作比较耗时,尤其是较大的段,所以一般设定为后台执行;这也没什么太大问题,因为大段的合并相对还是比较少的。

但也有时候,合并速率会低于生产速率;一旦如此,Elasticsearch将会自动地限流索引请求到一个单一线程。这能阻止段爆发问题,否则在合并前可能会生成数百个段。

Elasticsearch在这里默认是比较保守的:不希望搜索性能受到后台合并操作的挤兑;但有时(尤其是使用SSD,或写日志的场景)节流限制会过低。

默认的20 MB/s对于传统机械磁盘是一个挺不错的设置;如果使用SSD,可能要考虑加大该设置到100–200 MB/s。
curl -XPUT 'localhost:9200/test/_settings' -d '{
"index" : {
"refresh_interval" : "-1"
}
}'

如果正在做批量导入,且根本不介意搜索,就可以彻底关闭合并限流;这样索引操作就会根据磁盘的速率尽可能快地执行:
curl -XPUT 'localhost:9200/_cluster/settings' -d '{
"transient" : {
"indices.store.throttle.type" : "none"
}
}'

设置限流类型为none就可以完全关闭合并限流;等批量导入完成后再恢复该配置项为merge。
curl -XPUT 'localhost:9200/_cluster/settings' -d '{
"transient" : {
"indices.store.throttle.type" : "merge"
}
}'

注意:上面的设置只适用于Elasticsearch 1.X版本,Elasticsearch 2.X移除了索引级别的速率限制(indices.store.throttle.type、 indices.store.throttle.max_bytes_per_sec、index.store.throttle.type、 index.store.throttle.max_bytes_per_sec),下沉到Lucene的ConcurrentMergeScheduler,以自动管理限流。

合并调度器(ConcurrentMergeScheduler)在需要时会控制合并操作的执行。合并操作运行在独立的线程池中,一旦达到最大线程数,更多的合并请求将会阻塞等待,直到有可用的合并线程。

合并调度器支持下列动态设置: 
index.merge.scheduler.max_thread_count

最大线程数默认为 Math.max(1,Math.min(4,Runtime.getRuntime().availableProcessors() / 2)),对于固态硬盘(SSD)工作得很好;如果使用传统机械硬盘,则降低到1。

机械介质在并发I/O方面有较大的时间开销,因此需要减少线程数,以便能按索引并发访问磁盘。该设置允许每次有max_thread_count + 2个线程操作磁盘,所以设置为1表示支持3个线程。

如果使用机械硬盘而不是SSD,就要在elasticsearch配置文件中加入以下配置: 
index.merge.scheduler.max_thread_count: 1

当然也可以为单个索引库设置:
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
}'


 3 事务日志的清理

在节点挂掉时事务日志可以防止数据丢失,设计初衷是帮助在flush时原本丢失的分片恢复运行。该日志每5秒,或者在每个索引、删除、更新或批量请求(不管先后顺序)完成时,会提交到磁盘一次。

对Lucene的变更仅会在一次Lucene提交后持久化到磁盘,Lucene提交是比较重量级的操作,索引不能再每个索引或删除操作后就执行。当进程退出或硬件故障时,一次提交后或另一次提交前的变更将会丢失。

为防止这些数据丢失,每个分片有一个事务日志,或者与之关联的预写日志。任何索引或删除操作,在内置的Lucene索引处理完成后都是写到事务日志中。崩溃发生后,就可以从事务日志回放最近的事务来恢复分片。

Elasticsearch的flush操作,本质上是执行了一次Lucene提交并启动了一个新的事务日志;这些都是在后台自动完成的,目的是确保事务日志不会变得过大,否则恢复数据期间的回放操作可能需要消耗相当长的时间。这个功能同样暴露了一个API供调用,虽然很少需要手动触发。

与刷新(refresh)一个索引分片相比,真正昂贵的操作是flush其事务日志(这涉及到Lucene提交)。Elasticsearch基于许多随时可变的定时器来执行flush。通过延迟flush或者彻底关闭flush可以提升索引吞吐量。不过并没有免费的午餐,延迟flush最终实际执行时显然会消耗更长的时间。

下列可动态更新的配置控制着内存缓存刷新到磁盘的频率:

index.translog.flush_threshold_size - 一旦事务日志达到这个值,就会发生一次flush;默认值为512mb。

index.translog.flush_threshold_ops - 在多少操作后执行flush,默认无限制。

index.translog.flush_threshold_period - 触发一次flush前的等待时间,不管日志大小,默认值为30分钟。

index.translog.interval - 检查是否需要flush的时间间隔,随机在该时间到2倍之间取值,默认为5秒。

可以把index.translog.flush_threshold_size的值从默认值的512MB调大比如到1GB,这样在一次flush发生前就可以在日志中积累更大的段。通过构建更大的段,就可以减少flush的次数以及大段的合并次数。所有这些措施加起来就会减少磁盘I/O并获得更好的索引效率。

当然,这需要一定数量的可用堆内存,用于额外的缓存空间,所以调整此类配置时请注意这一点。


 4 索引缓冲区的容量规划

索引缓冲区用于存储新的索引文档,如果满了,缓冲区的文档就会写到磁盘上的一个段。节点上所有分片的缓冲区都是独立的。

下列配置项是静态的,并且必须在集群的每个数据节点上都配置:

indices.memory.index_buffer_size - 可设置为百分比或者字节数大小,默认是10%,表示总内存的10%分配给该节点,作为索引缓冲区大小,全局共享。

indices.memory.min_index_buffer_size - 如果index_buffer_size设置为百分比,那么这项配置用于指定一个绝对下限,默认是48MB。

indices.memory.max_index_buffer_size - 如果index_buffer_size设置为百分比,那么这项配置用于指定一个绝对上限,默认是无限制。

配置项indices.memory.index_buffer_size定义了可供索引操作使用的堆内存百分比(剩余堆内存将主要用于检索操作)。如果要索引很多数据,默认的10%可能会太小,有必要调大该值。


5 索引和批量操作的线程池大小

接下来试试在节点级别调大索引和批量操作的线程池大小,看看否带来性能提升。

index - 用于索引和删除操作。线程类型是固定大小的(fixed),默认大小是可用处理器核数,队列大小queue_size是200,该线程池最大为1+可用处理器核数。

bulk - 用于批量操作。线程类型是固定大小的,默认大小是可用处理器核数,队列大小是50,线程池最大为1+可用处理器核数。

单个分片与独立的Lucene是一个层次,因此同时执行索引的并发线程数是有上限的,在Lucene中默认是8,而在ES中可以通过index.index_concurrency配置项来设置。

在为该参数设置默认值时应当多想一想,特别是对于往一个索引库索引数据时,一个节点只有一个分片的情况。

由于索引/批量线程池可以保护和控制并发,所以大部分时候都可以考虑调大默认值;尤其是对于节点上没有其他分片的情况(评估是否值得),可以考虑调大该值。


关于译者


杨振涛

vivo互联网搜索引擎团队负责人,开发经理。10年数据和软件领域经验,先后从事基因测序、电商、IM及厂商互联网领域的系统架构设计和实现。专注于实时分布式系统和大数据的存储、检索和可视化,尤其是搜索引擎及深度学习在NLP方向的应用。技术翻译爱好者,TED Translator,InfoQ中文社区编辑。


 
 
未经授权,禁止转载。
 
英文原文地址:https://qbox.io/blog/maximize- ... art-2  收起阅读 »

社区日报 第70期 (2017-10-15)

1.(自备梯子)如何在避免停机的情况下远程迁移Elasticsearch集群。
http://t.cn/ROlVXTV
2.(自备梯子)每个软件工程师都应该知道的关于如何改进搜索体验的理论知识。
http://t.cn/Rp0DO48
3.一个在线旅游服务业IT主管讲述Elasticsearch对企业改进搜索和自动数据分析方面的帮助。
http://t.cn/ROWKRkJ

编辑:至尊宝
归档:https://elasticsearch.cn/article/314
订阅:https://tinyletter.com/elastic-daily
继续阅读 »
1.(自备梯子)如何在避免停机的情况下远程迁移Elasticsearch集群。
http://t.cn/ROlVXTV
2.(自备梯子)每个软件工程师都应该知道的关于如何改进搜索体验的理论知识。
http://t.cn/Rp0DO48
3.一个在线旅游服务业IT主管讲述Elasticsearch对企业改进搜索和自动数据分析方面的帮助。
http://t.cn/ROWKRkJ

编辑:至尊宝
归档:https://elasticsearch.cn/article/314
订阅:https://tinyletter.com/elastic-daily 收起阅读 »

社区日报 第69期 (2017-10-14)

1、使用nested结构如何进行个性化的排序
http://t.cn/RONaiTA
2、从es2.3.4升级到es5.4.1,性能提升30-40%的案例
http://t.cn/RONXHBr
3、java9在es6上的简单测评报告,喜欢尝鲜的可以试试
http://t.cn/RONC5Fk
编辑:bsll
归档:https://www.elasticsearch.cn/article/313
订阅:https://tinyletter.com/elastic-daily
 
继续阅读 »
1、使用nested结构如何进行个性化的排序
http://t.cn/RONaiTA
2、从es2.3.4升级到es5.4.1,性能提升30-40%的案例
http://t.cn/RONXHBr
3、java9在es6上的简单测评报告,喜欢尝鲜的可以试试
http://t.cn/RONC5Fk
编辑:bsll
归档:https://www.elasticsearch.cn/article/313
订阅:https://tinyletter.com/elastic-daily
  收起阅读 »

Elastic与阿里云达成合作伙伴关系 提供 ” 阿里云 Elasticsearch ” 的新服务

新服务发布 -阿里云 Elasticsearch 将包含 Elasticsearch、Kibana 及 Elastic 的 X-Pack 功能

Elastic - 旗下拥有 Elasticsearch,以及使用最广泛的开源产品集合 Elastic Stack,用于解决搜索、日志和数据分析等关键任务型用例 - 今天宣布与阿里巴巴集团(纽约证券交易所代码:BABA,「阿里巴巴」)旗下云计算平台阿里云达成新的合作伙伴关系,旨在共同研发及发布于阿里云上提供托管的 Elasticsearch,为中国市场提供崭新的用户体验。

这项名为 “ 阿里云 Elasticsearch ” 的新服务能让阿里巴巴的客户随心所欲地运用 Elasticsearch 强大的实时搜索、采集及数据分析功能,是一站式而且主导性的解决方案。

阿里云总裁胡晓明先生表示:“作为全球领先的云计算服务提供商,阿里云内致力于通过我们的平台向客户提供最先进的产品,使其保持竞争优势并促进创新。” 他指出:“阿里云 Elasticsearch 将会成为一项高度差异化的服务,因为它运用了 Elastic 先进的搜索产品及强大的 X-Pack 功能,不论在服务的任何层面上,均容易上手使用以及方便管理。”

阿里云 Elasticsearch 现已正式上线,简单配置即可添加到客户的云计算服务之上。通过 Elasticsearch 实时搜索的能力与客户应用相结合,以 Logstash 或 Beats 将数据导入阿里云 Elasticsearch 里,使用 Kibana 仪表板把实时及历史数据可视化,加上 X-Pack 的一系列功能如 security、alerting、monitoring、reporting、Graph 分析及 machine learning,为开发人员提供一站式产品的体验。

此外,阿里云和 Elastic 会着力于技术提升,确保阿里云 Elasticsearch 与时并进,拥有最新的功能。在未来,日志导入功能及其他服务也将相继可用。

Elastic 创始人兼首席执行官 Shay Banon 先生表示:“中国对我们来说是一个不断增长的市场,过去几年间,我们看到 Elasticsearch 的社区版图扩展至超过 5000 多位开发人员。 通过与亚洲最大的云端供应商阿里云合作,并配合 Elasticsearch 的实时处理能力、强大的 X-Pack 功能,如 security,alerting和 machine learning,我们能够一同加快中国广大开发者生态的创新步伐,构建、托管及管理更多不同的应用。”



aliyun-alibaba-simon-shay-handshake.jpg


阿里云总裁胡晓明与 Elastic 创始人兼首席执行官 Shay Banon



了解更多

阿里云 Elasticsearch
Elastic & Alibaba Blog

关于阿里云

阿里云创立于 2009 年, 为阿里巴巴集团旗下云计算业务。现时被 Gartner 评为全球 3 大基础设施即服务 (IaaS) 供货商之一。根据 IDC 2016年调研显示,阿里云为中国最大的公共云端服务供货商,基础设施即服务 (IaaS) 收入全球排行第四。阿里云提供全面的云计算服务,支持世界各地的企业,包括在阿里巴巴集团市场上做生意的商家、初创公司、企业级客户及政府机构等。阿里云现时为国际奥林匹克委员会官方云服务官方合作伙伴。有关更多信息,请访问 https://www.aliyun.com

关于 Elastic

Elastic 通过构建软件,让用户能够实时地、大规模地将数据用于搜索、日志和分析场景。Elastic 创立于 2012 年,相继开发了开源的 Elastic Stack(Elasticsearch、Kibana、Beats 和 Logstash)、X-Pack(商业功能)和 Elastic Cloud(托管服务)。截至目前,累计下载量超过 1.5 亿。Benchmark Capital、Index Ventures 和 NEA 为 Elastic 提供了超过 1 亿美元资金作为支持,Elastic 共有 600 多名员工,分布在 30 个国家/地区。有关更多信息,请访问 elastic.co/cn。

https://www.elastic.co/cn/abou ... cloud
继续阅读 »
新服务发布 -阿里云 Elasticsearch 将包含 Elasticsearch、Kibana 及 Elastic 的 X-Pack 功能

Elastic - 旗下拥有 Elasticsearch,以及使用最广泛的开源产品集合 Elastic Stack,用于解决搜索、日志和数据分析等关键任务型用例 - 今天宣布与阿里巴巴集团(纽约证券交易所代码:BABA,「阿里巴巴」)旗下云计算平台阿里云达成新的合作伙伴关系,旨在共同研发及发布于阿里云上提供托管的 Elasticsearch,为中国市场提供崭新的用户体验。

这项名为 “ 阿里云 Elasticsearch ” 的新服务能让阿里巴巴的客户随心所欲地运用 Elasticsearch 强大的实时搜索、采集及数据分析功能,是一站式而且主导性的解决方案。

阿里云总裁胡晓明先生表示:“作为全球领先的云计算服务提供商,阿里云内致力于通过我们的平台向客户提供最先进的产品,使其保持竞争优势并促进创新。” 他指出:“阿里云 Elasticsearch 将会成为一项高度差异化的服务,因为它运用了 Elastic 先进的搜索产品及强大的 X-Pack 功能,不论在服务的任何层面上,均容易上手使用以及方便管理。”

阿里云 Elasticsearch 现已正式上线,简单配置即可添加到客户的云计算服务之上。通过 Elasticsearch 实时搜索的能力与客户应用相结合,以 Logstash 或 Beats 将数据导入阿里云 Elasticsearch 里,使用 Kibana 仪表板把实时及历史数据可视化,加上 X-Pack 的一系列功能如 security、alerting、monitoring、reporting、Graph 分析及 machine learning,为开发人员提供一站式产品的体验。

此外,阿里云和 Elastic 会着力于技术提升,确保阿里云 Elasticsearch 与时并进,拥有最新的功能。在未来,日志导入功能及其他服务也将相继可用。

Elastic 创始人兼首席执行官 Shay Banon 先生表示:“中国对我们来说是一个不断增长的市场,过去几年间,我们看到 Elasticsearch 的社区版图扩展至超过 5000 多位开发人员。 通过与亚洲最大的云端供应商阿里云合作,并配合 Elasticsearch 的实时处理能力、强大的 X-Pack 功能,如 security,alerting和 machine learning,我们能够一同加快中国广大开发者生态的创新步伐,构建、托管及管理更多不同的应用。”



aliyun-alibaba-simon-shay-handshake.jpg


阿里云总裁胡晓明与 Elastic 创始人兼首席执行官 Shay Banon



了解更多

阿里云 Elasticsearch
Elastic & Alibaba Blog

关于阿里云

阿里云创立于 2009 年, 为阿里巴巴集团旗下云计算业务。现时被 Gartner 评为全球 3 大基础设施即服务 (IaaS) 供货商之一。根据 IDC 2016年调研显示,阿里云为中国最大的公共云端服务供货商,基础设施即服务 (IaaS) 收入全球排行第四。阿里云提供全面的云计算服务,支持世界各地的企业,包括在阿里巴巴集团市场上做生意的商家、初创公司、企业级客户及政府机构等。阿里云现时为国际奥林匹克委员会官方云服务官方合作伙伴。有关更多信息,请访问 https://www.aliyun.com

关于 Elastic

Elastic 通过构建软件,让用户能够实时地、大规模地将数据用于搜索、日志和分析场景。Elastic 创立于 2012 年,相继开发了开源的 Elastic Stack(Elasticsearch、Kibana、Beats 和 Logstash)、X-Pack(商业功能)和 Elastic Cloud(托管服务)。截至目前,累计下载量超过 1.5 亿。Benchmark Capital、Index Ventures 和 NEA 为 Elastic 提供了超过 1 亿美元资金作为支持,Elastic 共有 600 多名员工,分布在 30 个国家/地区。有关更多信息,请访问 elastic.co/cn。

https://www.elastic.co/cn/abou ... cloud 收起阅读 »

【杉岩招聘】 ES研发工程师招聘

岗位职责:

围绕Elasticsearch、Lucene进行优化开发,满足业务系统要求;

优化搜索引擎的性能。


任职要求:

本科以上学历,两年以上开发经验;

熟悉Solr,Elasticsearch等至少一个基于Lucene的开源搜索引擎,研究过Lucene源码优先;

具备处理海量数据的经验者优先;

遇到难题能够持续保持积极,乐观的态度,并最终解决问题;

具有良好的沟通能力和团队合作能力;

有很好的求知欲和创新能力。
 
简历请发送至:  liaoying@szsandstone.com
继续阅读 »
岗位职责:

围绕Elasticsearch、Lucene进行优化开发,满足业务系统要求;

优化搜索引擎的性能。


任职要求:

本科以上学历,两年以上开发经验;

熟悉Solr,Elasticsearch等至少一个基于Lucene的开源搜索引擎,研究过Lucene源码优先;

具备处理海量数据的经验者优先;

遇到难题能够持续保持积极,乐观的态度,并最终解决问题;

具有良好的沟通能力和团队合作能力;

有很好的求知欲和创新能力。
 
简历请发送至:  liaoying@szsandstone.com 收起阅读 »

社区日报 第68期 (2017-10-13)

1、一个不错的 Elasticsearch API 兼容性的实时监控
http://t.cn/RO5pcz3
2、性能优化,带主键的索引场景性能提升 ~9% !
http://t.cn/RoJex1R
3、比一比 | ES中文分词哪家强?
http://t.cn/ROyBcAB

编辑:laoyang360
归档:https://elasticsearch.cn/article/310 
订阅:https://tinyletter.com/elastic-daily 

 
继续阅读 »
1、一个不错的 Elasticsearch API 兼容性的实时监控
http://t.cn/RO5pcz3
2、性能优化,带主键的索引场景性能提升 ~9% !
http://t.cn/RoJex1R
3、比一比 | ES中文分词哪家强?
http://t.cn/ROyBcAB

编辑:laoyang360
归档:https://elasticsearch.cn/article/310 
订阅:https://tinyletter.com/elastic-daily 

  收起阅读 »

Elasticsearch 创始人 Shay Banon:让数据自己说话

转载 http://www.infoq.com/cn/articles/let-data-talk-itself-shaybanon

嘉宾|Shay Banon , 作者|谢然/ InfoQ

随着互联网数据规模的爆炸式增长,如何从海量的历史、实时数据中快速获取有用的信息,变得越来越具有挑战性。而这其中,搜索作为获取信息最高效的途径之一,已经越来越受到人们的青睐。

一款优秀的搜索引擎,它连接了普通用户和网站网页,用户可以轻而易举且免费地搜索到想看的网站和内容,而这些网站的内容被搜索引擎检索到,通过搜索引擎技术呈现给用户。

10 月 13 日,在 2017 杭州云栖大会上,Elasticsearch 与阿里云宣布达成战略合作,共同研发及发布阿里云上提供托管的 Elasticsearch,为中国市场提供崭新的用户体验。Elasticsearch 挺进中国市场面临的机遇和挑战如何?阿里云 Elasticsearch 为中国用户提供了哪些新服务?为此,InfoQ 采访了 Elasticsearch 的创始人兼首席执行官 Shay Banon。

经过短短一个小时的交流,能明显感觉 Shay Banon 有着灵敏的商业嗅觉。他在搜索的领域深耕了 18 年,差不多 8 年前创立了 Elasticsearch,他说,创业最重要的是找到自己擅长的地方,并且保持激情和热爱,创业,意味着你要寻找生活中的问题,然后用创造性思维去解决它们。

Elasticsearch 源于一个食谱的应用

在谈及当年接触 Lucene 并开发 Elasticsearch 的初衷的时候, Shay Banon 认为自己参与 Lucene 完全是一种偶然,当年他还是一个待业工程师,跟随自己的新婚妻子来到伦敦,妻子想在伦敦学习做一名厨师,而自己则想为妻子开发一个方便搜索菜谱的应用,所以才接触到 Lucene。直接使用 Lucene 构建搜索有很多问题,包含大量重复性的工作,所以 Shay Banon 便在 Lucene 的基础上不断地进行抽象,让 Java 程序嵌入搜索变得更容易,经过一段时间的打磨便诞生了他的第一个开源作品“Compass”,中文即“指南针”的意思。之后,他找到了一份面对高性能分布式开发环境的新工作,在工作中他渐渐发现越来越需要一个易用的、高性能、实时、分布式搜索服务,于是决定重写 Compass,将它从一个库打造成了一个独立的 server,并创建了开源项目。

第一个公开版本出现在 2010 年 2 月,在那之后 Elasticsearch 已经成为 Github 上最受欢迎的项目之一。

Elasticsearch 的成功源自开源

经过八年,Elasticsearch 在中国也颇受广大工程师欢迎, Shay Banon 说 Elasticsearch 成功的关键因素就是开源还有除了搜索之外的不同用例,如 日志管理、安全和分析。

他认为,开放源代码搜索引擎为人们学习、研究并掌握搜索技术提供了极好的途径与素材,推动了搜索技术的普及与发展,使越来越多的人开始了解并推广使用搜索技术。使用开源搜索引擎,可以大大缩短构建搜索应用的周期,并可根据应用需求打造个性化搜索应用,甚至构建符合特定需求的搜索引擎系统。搜索引擎的开源,无论是对技术人员还是普通用户,都是一个福音。

Shay Banon 有一个愿景,使世界上每个开发人员能够使用搜索作为基础来简单地解决他们最复杂的用例。通过实时和大规模提供数据,Elastic 的产品已经下载了超过 1.5 亿次累积的时间,用于构建现代搜索,日志记录,安全性,指标和分析应用程序。

技术助推力量

当今世界,技术的日新月异加剧了市场竞争力的此消彼涨过程,企业越来越重视技术创新所带来的竞争力量的增强以及由此创造的短期和长期市场利益,逐步形成以技术创新为核心的发展战略。企业之间的竞争,不仅仅是规模上的竞争,更重要的是企业间的技术创新实力的较量。

马云在云栖大会上演讲时,谈到技术对于未来的重要性,“在未来面前我们都是孩子,未来没有专家”,他认为未来发展得好的公司一定是能将互联网技术用得最好的公司。

任何一种新兴技术,都必然要经历螺旋式上升的发展轨迹,也必须符合技术生命周期的发展规律,即从概念提出、泡沫、破灭、冷静、成熟、应用兴起,再到重生与再创新。对于企业来讲,在企业方向和研发战略上,一定要把握和尊重技术产业领域的发展规律。

Shay Banon 介绍了 Elasticsearch 里的几项关键技术处于的趋势。

shay-1.jpg

Shay Banon 说他及他的团队会不断在技术之路上不断创新,让 Elasticsearch 争取可以为不同的用户解决各种问题。

Elasticsearch 和阿里云合作 大步迈进中国市场

当谈及 Elasticsearch 挺进中国市场的战略时, Shay Banon 表示:“中国对我们来说是一个不断增长的市场,过去几年间,我们看到 Elasticsearch 的社区版图扩展至超过 5000 多位开发人员。中国也是全球最大的市场之一,差不多有 1.9 亿的开发者,希望这 1.9 亿开发者都能用到开源的 Elasticsearch 的产品,并且取得成功。今天 Elasticsearch 选择与阿里云合作,并配合 Elasticsearch 的实时处理能力、强大的 X-Pack 功能,如 security,alerting 和 machine learning,共同加快中国广大开发者生态的创新步伐,构建、托管及管理更多不同的应用。”除此之外,Shay Banon 认为 Elasticsearch 接下来会针对中国市场,大力推广其商业化产品 X-Pack,让越来越多的人了解与使用。

“阿里云 Elasticsearch” 现已正式上线,简单配置即可添加到客户的云计算服务之上。通过 Elasticsearch 实时搜索的能力与客户应用相结合,以 Logstash 或 Beats 将数据导入阿里云 Elasticsearch 里,使用 Kibana 仪表板把实时及历史数据可视化,加上 X-Pack 的一系列功能如 security、alerting、monitoring、reporting、Graph 分析及 machine learning,为开发人员提供一站式产品的体验。

阿里云 Elasticsearch 的新服务能让阿里巴巴的客户随心所欲地运用 Elasticserach 强大的实时搜索、采集及数据分析功能,是一站式而且主导性的解决方案。

此外,阿里云和 Elasticsearch会着力于技术提升,确保阿里云 Elasticsearch 与时并进,拥有最新的功能。在未来,日志导入功能及其他服务也将相继可用。

搜索引擎的数据挖掘优势

大数据时代,也是信息爆炸的时代,是否拥有信息已经不再重要,重要的是如何能够快速的找到所需信息,而搜索引擎在这方面有着天然优势,搜索引擎的数据挖掘将产生更加明显的效果。

很多搜索技术的改进都离不开大数据技术。搜索引擎从本质上看,就是一种典型的大数据应用。目前,搜索在大数据领域已经跨进了一大步,人们可以实时搜索到想要的信息。

根据最新的数据库引擎排名显示,Elasticsearch,Solr 和 Splunk 分别占据了数据库搜索引擎的前三位。

shay-2.png

从趋势上来看,Elasticsearch 和 Splunk 上升明显,Elasticsearch 更是表现出了非常强劲的势头。

shay-3.png

在生产环境记录应用的运行日志已经成为惯例,但日志需要经过处理和分析才有意义,第三方日志管理工具的出现正旨在解决这个问题。当下比较有代表性的日志管理工具有 Splunk 和 Logstash (注:Logstash 用途在于将数据插入到 Elasticsearch 和 Kibana 中可视化日志)。

Shay Banon 表示在日志分析领域,Elasticsearch 最大的竞争对手就是 Splunk ,在商业软件付钱与开源软件免费之间选择,Elasticsearch 是全世界最受欢迎的开源解决方案,而且会以灵活性,实时能力和规模地处理大量数据,所以如果你在内地问开发者,大部分开发者倾向于 Elastic Stack。

他举例, 类似于 Netflix,Facebook,Microsoft 以及 Linkedln 公司在日志基础架构上会选择运行大型 Elasticsearch 集群。此外,Elastic Stack 能够在不同范畴使用,比如欺诈检测和特定领域的业务分析,这将使 Elastic 不继扩张。

机器学习赋能用户解决复杂问题

云计算的发展,使得数据的采集、处理和分析都变得容易,大数据得以存在于各行各业各种数据体系中,人工智能因此成为了一个火爆的领域。

而其中的机器学习就是基于搜索技术建立起来的,而搜索带来的海量数据积累,又能够构建一套基于海量数据的数据统计分析,从而能够为一些应用场景下的关键决策带来指导和支撑。

Shay Banon 强调机器学习在数据搜索领域的重要价值:“以后不是跟数据讲我们要什么,而是数据主动告诉我们这边有什么,这就是机器学习的力量。

一点小小的担忧

搜索引擎知道我们的出行路线、地理位置、工作信息、日常行为模式和交际圈子,它比任何保险公司或银行都了解我们的风险状况,随着可穿戴智能设备的兴起,它也可能比医生更了解我们自身的身体状况。或者说,搜索引擎将变得比我们自己更了解自己。

这是信息时代独特的背景,对于效率的追求使我们不可避免的享受互联网搜索引擎等服务带给我们的信息服务,同时也不可避免的享受个人信息外泄的苦恼。搜索引擎的机器学习势必需要越来越多的用户信息,这与我们的隐私权存在本质上的冲突。或许,我们已经意识到这一点,但在效率面前对此无能为力。

给广大工程师的建议:

计算机世界变化的速度是惊人的。程序员被认为是最接近计算机世界的职业,几乎所有的科技新产品都得由程序员来写代码。

Shay Banon 建议广大程序员要不断地学习新的技能,并且铭记在过往使用那些技能时得到的经验。有激情,并且热爱这份职业,时刻站在终端用户的角度去评估自己所编写的软件,而不是在封闭的空间里编写代码。

除此之外,程序员还要擅于借助工具,开发过程中选择适合自己和项目开发所需要的工具。正所谓工欲善其事, 必先利其器。

写在最后:

Shay Banon 非常喜欢马云说过的这句话,“帮助年轻人,帮助弱小的人,因为小树苗也可能成长为参天大树。你将种子埋入这些年轻人的脑中,等他们成长起来,就可以改变世界。”

帮助别人,让别人强大,你才能更强大。这才是生命的意义。

-END-

继续阅读 »

转载 http://www.infoq.com/cn/articles/let-data-talk-itself-shaybanon

嘉宾|Shay Banon , 作者|谢然/ InfoQ

随着互联网数据规模的爆炸式增长,如何从海量的历史、实时数据中快速获取有用的信息,变得越来越具有挑战性。而这其中,搜索作为获取信息最高效的途径之一,已经越来越受到人们的青睐。

一款优秀的搜索引擎,它连接了普通用户和网站网页,用户可以轻而易举且免费地搜索到想看的网站和内容,而这些网站的内容被搜索引擎检索到,通过搜索引擎技术呈现给用户。

10 月 13 日,在 2017 杭州云栖大会上,Elasticsearch 与阿里云宣布达成战略合作,共同研发及发布阿里云上提供托管的 Elasticsearch,为中国市场提供崭新的用户体验。Elasticsearch 挺进中国市场面临的机遇和挑战如何?阿里云 Elasticsearch 为中国用户提供了哪些新服务?为此,InfoQ 采访了 Elasticsearch 的创始人兼首席执行官 Shay Banon。

经过短短一个小时的交流,能明显感觉 Shay Banon 有着灵敏的商业嗅觉。他在搜索的领域深耕了 18 年,差不多 8 年前创立了 Elasticsearch,他说,创业最重要的是找到自己擅长的地方,并且保持激情和热爱,创业,意味着你要寻找生活中的问题,然后用创造性思维去解决它们。

Elasticsearch 源于一个食谱的应用

在谈及当年接触 Lucene 并开发 Elasticsearch 的初衷的时候, Shay Banon 认为自己参与 Lucene 完全是一种偶然,当年他还是一个待业工程师,跟随自己的新婚妻子来到伦敦,妻子想在伦敦学习做一名厨师,而自己则想为妻子开发一个方便搜索菜谱的应用,所以才接触到 Lucene。直接使用 Lucene 构建搜索有很多问题,包含大量重复性的工作,所以 Shay Banon 便在 Lucene 的基础上不断地进行抽象,让 Java 程序嵌入搜索变得更容易,经过一段时间的打磨便诞生了他的第一个开源作品“Compass”,中文即“指南针”的意思。之后,他找到了一份面对高性能分布式开发环境的新工作,在工作中他渐渐发现越来越需要一个易用的、高性能、实时、分布式搜索服务,于是决定重写 Compass,将它从一个库打造成了一个独立的 server,并创建了开源项目。

第一个公开版本出现在 2010 年 2 月,在那之后 Elasticsearch 已经成为 Github 上最受欢迎的项目之一。

Elasticsearch 的成功源自开源

经过八年,Elasticsearch 在中国也颇受广大工程师欢迎, Shay Banon 说 Elasticsearch 成功的关键因素就是开源还有除了搜索之外的不同用例,如 日志管理、安全和分析。

他认为,开放源代码搜索引擎为人们学习、研究并掌握搜索技术提供了极好的途径与素材,推动了搜索技术的普及与发展,使越来越多的人开始了解并推广使用搜索技术。使用开源搜索引擎,可以大大缩短构建搜索应用的周期,并可根据应用需求打造个性化搜索应用,甚至构建符合特定需求的搜索引擎系统。搜索引擎的开源,无论是对技术人员还是普通用户,都是一个福音。

Shay Banon 有一个愿景,使世界上每个开发人员能够使用搜索作为基础来简单地解决他们最复杂的用例。通过实时和大规模提供数据,Elastic 的产品已经下载了超过 1.5 亿次累积的时间,用于构建现代搜索,日志记录,安全性,指标和分析应用程序。

技术助推力量

当今世界,技术的日新月异加剧了市场竞争力的此消彼涨过程,企业越来越重视技术创新所带来的竞争力量的增强以及由此创造的短期和长期市场利益,逐步形成以技术创新为核心的发展战略。企业之间的竞争,不仅仅是规模上的竞争,更重要的是企业间的技术创新实力的较量。

马云在云栖大会上演讲时,谈到技术对于未来的重要性,“在未来面前我们都是孩子,未来没有专家”,他认为未来发展得好的公司一定是能将互联网技术用得最好的公司。

任何一种新兴技术,都必然要经历螺旋式上升的发展轨迹,也必须符合技术生命周期的发展规律,即从概念提出、泡沫、破灭、冷静、成熟、应用兴起,再到重生与再创新。对于企业来讲,在企业方向和研发战略上,一定要把握和尊重技术产业领域的发展规律。

Shay Banon 介绍了 Elasticsearch 里的几项关键技术处于的趋势。

shay-1.jpg

Shay Banon 说他及他的团队会不断在技术之路上不断创新,让 Elasticsearch 争取可以为不同的用户解决各种问题。

Elasticsearch 和阿里云合作 大步迈进中国市场

当谈及 Elasticsearch 挺进中国市场的战略时, Shay Banon 表示:“中国对我们来说是一个不断增长的市场,过去几年间,我们看到 Elasticsearch 的社区版图扩展至超过 5000 多位开发人员。中国也是全球最大的市场之一,差不多有 1.9 亿的开发者,希望这 1.9 亿开发者都能用到开源的 Elasticsearch 的产品,并且取得成功。今天 Elasticsearch 选择与阿里云合作,并配合 Elasticsearch 的实时处理能力、强大的 X-Pack 功能,如 security,alerting 和 machine learning,共同加快中国广大开发者生态的创新步伐,构建、托管及管理更多不同的应用。”除此之外,Shay Banon 认为 Elasticsearch 接下来会针对中国市场,大力推广其商业化产品 X-Pack,让越来越多的人了解与使用。

“阿里云 Elasticsearch” 现已正式上线,简单配置即可添加到客户的云计算服务之上。通过 Elasticsearch 实时搜索的能力与客户应用相结合,以 Logstash 或 Beats 将数据导入阿里云 Elasticsearch 里,使用 Kibana 仪表板把实时及历史数据可视化,加上 X-Pack 的一系列功能如 security、alerting、monitoring、reporting、Graph 分析及 machine learning,为开发人员提供一站式产品的体验。

阿里云 Elasticsearch 的新服务能让阿里巴巴的客户随心所欲地运用 Elasticserach 强大的实时搜索、采集及数据分析功能,是一站式而且主导性的解决方案。

此外,阿里云和 Elasticsearch会着力于技术提升,确保阿里云 Elasticsearch 与时并进,拥有最新的功能。在未来,日志导入功能及其他服务也将相继可用。

搜索引擎的数据挖掘优势

大数据时代,也是信息爆炸的时代,是否拥有信息已经不再重要,重要的是如何能够快速的找到所需信息,而搜索引擎在这方面有着天然优势,搜索引擎的数据挖掘将产生更加明显的效果。

很多搜索技术的改进都离不开大数据技术。搜索引擎从本质上看,就是一种典型的大数据应用。目前,搜索在大数据领域已经跨进了一大步,人们可以实时搜索到想要的信息。

根据最新的数据库引擎排名显示,Elasticsearch,Solr 和 Splunk 分别占据了数据库搜索引擎的前三位。

shay-2.png

从趋势上来看,Elasticsearch 和 Splunk 上升明显,Elasticsearch 更是表现出了非常强劲的势头。

shay-3.png

在生产环境记录应用的运行日志已经成为惯例,但日志需要经过处理和分析才有意义,第三方日志管理工具的出现正旨在解决这个问题。当下比较有代表性的日志管理工具有 Splunk 和 Logstash (注:Logstash 用途在于将数据插入到 Elasticsearch 和 Kibana 中可视化日志)。

Shay Banon 表示在日志分析领域,Elasticsearch 最大的竞争对手就是 Splunk ,在商业软件付钱与开源软件免费之间选择,Elasticsearch 是全世界最受欢迎的开源解决方案,而且会以灵活性,实时能力和规模地处理大量数据,所以如果你在内地问开发者,大部分开发者倾向于 Elastic Stack。

他举例, 类似于 Netflix,Facebook,Microsoft 以及 Linkedln 公司在日志基础架构上会选择运行大型 Elasticsearch 集群。此外,Elastic Stack 能够在不同范畴使用,比如欺诈检测和特定领域的业务分析,这将使 Elastic 不继扩张。

机器学习赋能用户解决复杂问题

云计算的发展,使得数据的采集、处理和分析都变得容易,大数据得以存在于各行各业各种数据体系中,人工智能因此成为了一个火爆的领域。

而其中的机器学习就是基于搜索技术建立起来的,而搜索带来的海量数据积累,又能够构建一套基于海量数据的数据统计分析,从而能够为一些应用场景下的关键决策带来指导和支撑。

Shay Banon 强调机器学习在数据搜索领域的重要价值:“以后不是跟数据讲我们要什么,而是数据主动告诉我们这边有什么,这就是机器学习的力量。

一点小小的担忧

搜索引擎知道我们的出行路线、地理位置、工作信息、日常行为模式和交际圈子,它比任何保险公司或银行都了解我们的风险状况,随着可穿戴智能设备的兴起,它也可能比医生更了解我们自身的身体状况。或者说,搜索引擎将变得比我们自己更了解自己。

这是信息时代独特的背景,对于效率的追求使我们不可避免的享受互联网搜索引擎等服务带给我们的信息服务,同时也不可避免的享受个人信息外泄的苦恼。搜索引擎的机器学习势必需要越来越多的用户信息,这与我们的隐私权存在本质上的冲突。或许,我们已经意识到这一点,但在效率面前对此无能为力。

给广大工程师的建议:

计算机世界变化的速度是惊人的。程序员被认为是最接近计算机世界的职业,几乎所有的科技新产品都得由程序员来写代码。

Shay Banon 建议广大程序员要不断地学习新的技能,并且铭记在过往使用那些技能时得到的经验。有激情,并且热爱这份职业,时刻站在终端用户的角度去评估自己所编写的软件,而不是在封闭的空间里编写代码。

除此之外,程序员还要擅于借助工具,开发过程中选择适合自己和项目开发所需要的工具。正所谓工欲善其事, 必先利其器。

写在最后:

Shay Banon 非常喜欢马云说过的这句话,“帮助年轻人,帮助弱小的人,因为小树苗也可能成长为参天大树。你将种子埋入这些年轻人的脑中,等他们成长起来,就可以改变世界。”

帮助别人,让别人强大,你才能更强大。这才是生命的意义。

-END-

收起阅读 »

社区日报 第67期 (2017-10-12)

1.awesome elasticstack
http://t.cn/RO2qZJx
2.用filebeat处理mysql日志到es
http://t.cn/ROiWg0k
3.使用filebeat的注意事项
http://t.cn/ROiWFsE

编辑:金桥
归档:https://elasticsearch.cn/article/309
订阅:https://tinyletter.com/elastic-daily
继续阅读 »
1.awesome elasticstack
http://t.cn/RO2qZJx
2.用filebeat处理mysql日志到es
http://t.cn/ROiWg0k
3.使用filebeat的注意事项
http://t.cn/ROiWFsE

编辑:金桥
归档:https://elasticsearch.cn/article/309
订阅:https://tinyletter.com/elastic-daily 收起阅读 »

社区日报 第66期 (2017-10-11)

1.Elasticsearch Log日志文件的那些事儿(请自备梯子)
http://t.cn/ROJXBR1
2.还在为 Elasticsearch 集群规划发愁吗?来看看完美方案吧!
http://t.cn/ROJaPRo
3.来看看 Kibana 6 新增的 dashboard only 模式吧! 
http://t.cn/ROJaiqT

编辑:rockybean
归档:https://elasticsearch.cn/article/308
订阅:https://tinyletter.com/elastic-daily 
继续阅读 »
1.Elasticsearch Log日志文件的那些事儿(请自备梯子)
http://t.cn/ROJXBR1
2.还在为 Elasticsearch 集群规划发愁吗?来看看完美方案吧!
http://t.cn/ROJaPRo
3.来看看 Kibana 6 新增的 dashboard only 模式吧! 
http://t.cn/ROJaiqT

编辑:rockybean
归档:https://elasticsearch.cn/article/308
订阅:https://tinyletter.com/elastic-daily  收起阅读 »

社区日报 第65期 (2017-10-10)

1.一步一步教你如何保证elastic-stack数据的安全。
http://t.cn/ROqjpND 
2.数据分析师的探险之旅,X-Pack还是R?
http://t.cn/ROqjYzk 
3.深入分析如何使用ES中的父子文档。
http://t.cn/ROqjmzP 

编辑:叮咚光军
归档:https://elasticsearch.cn/article/307 
订阅:https://tinyletter.com/elastic-daily 

 
继续阅读 »
1.一步一步教你如何保证elastic-stack数据的安全。
http://t.cn/ROqjpND 
2.数据分析师的探险之旅,X-Pack还是R?
http://t.cn/ROqjYzk 
3.深入分析如何使用ES中的父子文档。
http://t.cn/ROqjmzP 

编辑:叮咚光军
归档:https://elasticsearch.cn/article/307 
订阅:https://tinyletter.com/elastic-daily 

  收起阅读 »