1、ElasticSearch中存储文档的过错称之为索引,ElasticSearch中文档归属于一种类型(type),而这些类型存在于索引(index)当中,对比关系型数据如下:
Relational DB -> Databases -> Tables -> Rows -> Columns
Elasticsearch -> Indices -> Types -> Documents -> Fields
2、ElasticSearch index、type、document关系
ElasticSearch集群可以包含多个索引(indices)(数据库),每个索引可以包含多个类型(type)(表),每个类型包含多个文档(documents)(行),每个文档包含多个字段(Fields)(列)。
3、索引含义的区分
索引(名词),相当于传统关系数据库中的数据库,它是相关文档存储的地方,index的复数是indices或indexes。
索引(动词),“索引一个文档”表示把一个文档存储到索引(名词)里,以便它可以被检索或者查询。这很像SQL中的insert,差别是,如果文档已经存在,新的文档将覆盖旧的文档。
倒排索引,传统数据库为特定列增加一个索引,例如B-Tree索引来加速检索。ElasticSearch和Lucene使用一种叫做倒排索引(inverted index)的数据结构来达到相同的目的。默认情况下,文档中的所有字段都会被索引(拥有一个倒排索引),只有这样它们才是可被搜索的。
4、ElasticSearch中对时间的索引
时间字符串格式:yyyy-MM-dd'T'HH:mm:ss.SSS
如果是java.util.Date调用map接口会自动转换成上面的字符串格式