一个采用Restful API 标准的高扩展性和高可用性的实时数据分析的全文搜索工具 涉及到的一些概念: node(节点), Cluster:(集群,一个或多个node组织在一起), Document:(文档)一个文档是一个可被索引的基础信息单元, index:(索引) 一个拥有几分相似特征的文档的集合 Type:(类型) 一个索引中,你可以定义一种或多种类型 Field:(列) Field是Elasticsearch的最小单元,相当于数据的某一列,一个文档中可能包含多个field Shards:(分片) Elasticsearch将索引分成若干份,每个部门是一个shard。 why?因为一个索引的大小可能会超出单个节点这个硬盘限制的大小(也就是说这个节点硬盘没那么大容量) 比如:一个具有10亿个文档的索引,它的大小可能就占据了将近1TB的磁盘空间,而你的节点可能就没有那么大的磁盘,其次,如果1TB大小的索引放在一个节点上,那么单个节点处理搜索的请求肯定会响应很慢。这个shards 在索引创建的时候就可以定义,默认值是5份,但是索引创建完之后,这个值就没法更改了。 Replicas:(复制) 是索引一份或多份的拷贝