ElasticSearch的简介
Elaticsearch,简称为es, es是⼀个开源的⾼扩展的分布式全⽂检索引擎,它可以近乎实时的存储、检索数据;本⾝扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使⽤Java开发并使⽤ Lucene作为其核⼼来实现所有索引和搜索的功能,但是它的⽬的是通过简单的RESTful API来隐藏 Lucene的复杂性,从⽽让全⽂搜索变得简单。
ElasticSearch相关概念(术语)
Elasticsearch是⾯向⽂档的,这意味着它可以存储整个对象或⽂档(document)。然 ⽽它不仅仅是存储,还会索引(index)每个⽂档的内容使之可以被搜索。在Elasticsearch中,你可以对⽂档(⽽⾮成⾏成列的数据)进⾏索引、搜索、排序、过滤。
Elasticsearch核⼼概念
1 、索引 index
⼀个索引就是⼀个拥有⼏分相似特征的⽂档的集合。⽐如说,你可以有⼀个客户数据的索引,另⼀个产 品⽬录的索引,还有⼀个订单数据的索引。⼀个索引由⼀个名字来标识(必须全部是⼩写字母的),并且当我们要对对应于这个索引中的⽂档进⾏索引、搜索、更新和删除的时候,都要使⽤到这个名字。在 ⼀个集群中,可以定义任意多的索引。
2 、类型 type
在⼀个索引中,你可以定义⼀种或多种类型。⼀个类型是你的索引的⼀个逻辑上的分类/分区,其语义 完全由你来定。通常,会为具有⼀组共同字段的⽂档定义⼀个类型。
3 、字段Field
相当于是数据表的字段,对⽂档数据根据不同属性进⾏的分类标识。
4 、⽂档 document
⼀个⽂档是⼀个可被索引的基础信息单元。⽂档以JSON格式来表⽰, ⽽JSON是⼀个到处存在的互联⽹数据交互格式。 在⼀个index/type⾥⾯,你可以存储任意多的⽂档。