4.1 索引
索引(index)是ElasticSearch存放具體數(shù)據(jù)的地方昂拂,是一類具有相似特征的文檔的集合干厚。ElasticSearch中索引的概念具有不同意思召锈,這里的索引相當于關系數(shù)據(jù)庫中的一個數(shù)據(jù)庫實例(database)。在ElasticSearch中索引還可以作為動詞,表示對數(shù)據(jù)進行索引操作伟姐。
5.2 類型
在6.0之前的版本,一個ElasticSearch索引中,可以有多個類型付魔;從6.0版本開始,一個ElasticSearch索引中飞蹂,只有一個類型几苍。一個類型是索引的一個邏輯上的分類,通常具有一組相同字段的文檔組成陈哑。ElasticSearch的概念相當于關系數(shù)據(jù)庫的數(shù)據(jù)表妻坝。
5.3 文檔
文檔是ElasticSearch可被索引的基礎邏輯單元,相當于關系數(shù)據(jù)庫中的一行數(shù)據(jù)惊窖。ElasticSearch的文檔具有JSON格式刽宪,由多個字段組成,字段相當于關系數(shù)據(jù)庫中的列爬坑。
5.4 對比
ElasticSearch | RDBS |
---|---|
索引(index) | 數(shù)據(jù)庫(database) |
類型(type) | 表(table) |
文檔(document) | 行(row) |
字段(field) | 列(column) |
映射(mapping) | 表結構(schema) |
查詢DSL | SQL |
GET | select |
PUT/POST | update |
DELETE | delete |
5.5 分片
當數(shù)據(jù)量較大時纠屋,索引的存儲空間需求超出單個節(jié)點磁盤容量的限制,或者出現(xiàn)單個節(jié)點處理速度較慢盾计。為了解決這些問題售担,ElasticSearch將索引中的數(shù)據(jù)進行切分成多個分片(shard),每個分片存儲這個索引的一部分數(shù)據(jù)署辉,分布在不同節(jié)點上族铆。當需要查詢索引時,ElasticSearch將查詢發(fā)送到每個相關分片哭尝,之后將查詢結果合并哥攘,這個過程對ElasticSearch應用來說是透明的,用戶感知不到分片的存在。
一個索引的分片一旦指定逝淹,不再修改耕姊。
5.6 副本
其實,分片全稱是主分片栅葡,簡稱分片茉兰。主分片是相對于副本來說的,副本是對主分片的一個或多個復制版本(或稱拷貝)欣簇,這些復制版本(拷貝)可以稱為復制分片规脸,可以直接稱之為副本。當主分片丟失時熊咽,集群可以將一個副本升級為新的主分片莫鸭。