Elasticsearch权威指南中文版.docxVIP

  • 128
  • 0
  • 约6.79千字
  • 约 13页
  • 2021-01-30 发布于山东
  • 举报
Elasticsearch 权威指南(中文版) 1、入门 Elasticsearch 是一个实时分布式搜索和分析引擎。 它让你以前所未有的速度 处理大数据成为可能。 它用于全文搜索、结构化搜索、分析以及将这三者混合使用 : 维基百科使用 Elasticsearch 提供全文搜索并高亮关键字, 以及输入实时搜索 (search-as-you-type) 和搜索纠错 (did-you-mean) 等搜索建议功能。 英国卫报使用 Elasticsearch 结合用户日志和社交网络数据提供给他们的编辑 以实时的反馈,以便及时了解公众对新发表的文章的回应。 StackOverflow 结合全文搜索与地理位置查询,以及 more-like-this 功能 来找到相关的问题和答案。 Github 使用 Elasticsearch 检索 1300 亿行的代码。 但是 Elasticsearch 不仅用于大型企业, 它还让像 DataDog 以及 Klout 这样 的创业公司将最初的想法变成可扩展的解决方案。 Elasticsearch 可以在你的 笔记本上运行,也可以在数以百计的服务器上处理 PB 级别的数据。 Elasticsearch 所涉及到的每一项技术都不是创新或者革命性的,全文搜索, 分析系统以及分布式数据库这些早就已经存在了。 它的革命性在于将这些独立且有用的技术整合成一个一体化的、实时的应用。它对新用户的门槛很低,当然它也会跟上你技能和需求增长的步伐。 如果你打算看这本书,说明你已经有数据了,但光有数据是不够的,除非你能对这些数据做些什么事情。 很不幸,现在大部分数据库在提取可用知识方面显得异常无能。的确,它们能够通过时间戳或者精确匹配做过滤,但是它们能够进行全文搜索,处理同义词和根据相关性给文档打分吗?它们能根据同一份数据生成分析和聚合的结果吗?最重要的是,它们在没有大量工作进程(线程)的情况下能做到对数据的实时处理吗? 这就是 Elasticsearch 存在的理由: Elasticsearch 鼓励你浏览并利用你的数 据,而不是让它烂在数据库里,因为在数据库里实在太难查询了。 Elasticsearch 是你新认识的最好的朋友。 1.1、是什么 为了搜索,你懂的 Elasticsearch 是一个基于 Apache Lucene(TM) 的开源搜索引擎。无论在开 源还是专有领域, Lucene 可以被认为是迄今为止最先进、性能最好的、功能 最全的搜索引擎库。 但是, Lucene 只是一个库。想要使用它,你必须使用 Java 来作为开发语言 并将其直接集成到你的应用中,更糟糕的是, Lucene 非常复杂,你需要深入 了解检索的相关知识来理解它是如何工作的。 Elasticsearch 也使用 Java 开发并使用 Lucene 作为其核心来实现所有索引 和搜索的功能,但是它的目的是通过简单的 RESTful API 来隐藏 Lucene 的复杂 性,从而让全文搜索变得简单。 不过,Elasticsearch 不仅仅是 Lucene 和全文搜索, 我们还能这样去描述它: ? ? ?  分布式的实时文件存储,每个字段都被索引并可被搜索分布式的实时分析搜索引擎 可以扩展到上百台服务器,处理 PB 级结构化或非结构化数据 而且,所有的这些功能被集成到一个服务里面,你的应用可以通过简单的 RESTful API 、各种语言的客户端甚至命令行与之交互。 上手 Elasticsearch 非常容易。它提供了许多合理的缺省值,并对初学者隐藏 了复杂的搜索引擎理论。它开箱即用(安装即可使用),只需很少的学习既可在生产环境中使用。 Elasticsearch 在 Apache 2 license 下许可使用,可以免费下载、使用和修 改。 随着你对 Elasticsearch 的理解加深,你可以根据不同的问题领域定制 Elasticsearch 的高级特性,这一切都是可配置的,并且配置非常灵活。 模糊的历史 多年前,一个叫做 Shay Banon 的刚结婚不久的失业开发者,由于妻子要去 伦敦学习厨师,他便跟着也去了。在他找工作的过程中,为了给妻子构建一个 食谱的搜索引擎,他开始构建一个早期版本的 Lucene 。 直接基于 Lucene 工作会比较困难,所以 Shay 开始抽象 Lucene 代码以便 Java 程序员可以在应用中添加搜索功能。他发布了他的第一个开源项目,叫 做 “Compass” 。 后来 Shay 找到一份工作, 这份工作处在高性能和内存数据网格的分布式环境 中,因此高性能的、实时的、分布式的搜索引擎也是理所当然需要的。然后他决定重写 Compass 库使其成为一个独立的服务叫做 Elasticsearch

文档评论(0)

1亿VIP精品文档

相关文档