Too young, too simple. Sometimes, naive & stupid

Elasticsearch指南

Elasticsearch是什么

Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎。它允许您快速,近实时地存储,搜索和分析大量数据。它通常用作支持具有复杂搜索功能和需求的应用程序的底层引擎/技术。

Elasticsearch诞生的故事

大佬的世界都是传奇的,其实这个搜索引擎的诞生是一个叫Shay Banon的待业工程师跟随他的新婚妻子来到伦敦,

他妻子想成为一名厨师,这位大佬想为妻子开发一个方便搜索菜谱的应用;他本想直接使用Lucene来构建搜索引擎,但是发现会议很多坑以及重复性工作,所以他就开始造轮子,记录Lucene的技术上进行不断的抽象让搜索引擎变得更容易,经过一段时间,Shay Banon的第一个开源作品诞生了,名字叫“Compass”;后来Shay Banon的工作处于一个高性能的分布式开发环境中, 他渐渐发现需要一个易用、高性能、实时的分布式搜索服务,然后开始重写“Compass”;把它打造一个独立的服务,改名为“Elasticsearch”

后来”Elasticsearch“在github上非常受关注,再后来Shay Banon成立了Elasticsearch的公司,商业话的方式也是以技术支持的方式,但是,Elasticsearch承诺,永远都将是开源并且免费的。

ps:菜谱没做出来,却做出来了github 31000+的开源搜索项目。

核心概念 解释
Near Realtime (近时性) 接近实时性,轻微延迟,1s
Cluster(集群) 一个或多个Node组成的集合
Node(节点) 组成集群的独立Elasticsearch节点
Index(索引) 具有相似特征的文档集合
Document(文档) 可被索引的基本信息单位
Shards & Replicas(分片&复制) 数据分割存放,提高性能;复制分片存放多份,提供高可用