写点什么

基于 Lucene 的分布式搜索引擎: Elasticsearch 1.3.0 发布

  • 2014-08-03
  • 本文字数:1010 字

    阅读完需:约 3 分钟

ElasticSearch 是一个基于 Lucene 构建的开源、分布式、RESTful 的搜索引擎,且遵守 Apache2 协议。ElasticSearch 还能够用于云计算中,且能够满足实时搜索的需要,具有稳定、可靠、快速、安装使用方便等特点。它支持通过HTTP 使用JSON 进行数据索引,还可以通过集成插件的方式,支持Thrift、Servlet、Memcached、ZeroMQ 等的传输协议。近日, Elasticsearch 1.3.0 版本发布,它是最新的稳定版本,且基于 Lucene 4.9。该版本不仅添加了许多新功能,还提高了安全性、稳定性和性能,同时修复了大量的 bug,建议对索引性能有很高要求的应用进行版本升级。主要改进包括:

  • 默认禁用了 JSONP,提高了安全性
  • 默认启用磁盘空间分配决策者
  • 提高了 StemmerTokenFilter 的性能
  • 移除不必要的中间接口
  • 移除不安全的、非法的内存访问方法
  • 实现了主机的在异步方式下即可更新映射
  • 使用 429 错误码替换 503 的错误码反馈到客户端
  • 新增了 percentiles_rank 聚集
  • 新增了 top_hits 聚集
  • 新增了 Lucene 表达式脚本引擎
  • 新增了对 Groovy 脚本语言支持和 Groovy 沙盒
  • 实现了存储在索引中的搜索模板在搜索时可以被检索和使用
  • 能够运行存储在.scripts 索引中的脚本或者模板
  • Elasticsearch 可以在内存里跟踪最近索引文档的版本,自动清理版本映射
  • Translog 刷新阀值不再由日志的数量控制,而是以日志的字节数量大小控制。
  • 在索引过程中可以自动调整用做索引缓存区的 RAM 数量

由于 Elasticsearch 具有能够实时搜索、开源、稳定、快速、支持分布式等众多优点,所以许多国外著名的公司都在使用 ElasticSearch,如 Github、Mozilla、Sony 等公司,其中我们所熟知的 Github 在 2013 年 1 月升级了他的代码搜索,由 Solr 转为 Elasticsearch。目前它的集群规模为 26 个索引存储节点和 8 个客户端节点(负责处理搜索请求),能够搜索 20TB 的数据,这些数据包括 13 亿的文件和 1300 亿行的代码。

Elasticsearch 1.3.0 发布的同时, Elasticsearch 1.2.3 也发布了,它是 1.2.x 系列版本的一个 bug 修复版本,详细信息参见该版本的发布页面。

欲知Elasticsearch 更多相关详细信息,请登录其首页查看。 Elasticsearch 1.3.0 已经提供了 ZIP 、 TAR.GZ 、 DEB 、 RPM 多种格式的下载源,开发者可以根据自己的操作系统选定合适的格式下载。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。