1.索引
索引是elasticsearch中存放数据的地方,可以理解为关系型数据库中的一个数据库。
2.类型
类型用于区分同一个索引的不同数据类型,相当于关系型数据库中表
3.文档
文档是elasticsearch中存储的实体,类比于关系型数据库,每个文档相当于关系型数据库表中的一行数据,es的文档格式全部是JSON格式。
文档由字段组成,相当于关系型数据库中的列的属性,不同的是es的不同文档可以具有不同的字段集合。
4.集群和节点
elasticsearch是一个分布式全文搜索引擎,既可以作为一个独立的搜索服务器工作,也可以使用多台服务器同时运行,这就构成了一个集群(cluster),集群的每一个服务器称为一个节点(node)
5.分片
当数据量比较大的时候,受RAM,硬盘容量的限制,同时一个节点的计算能力有限。可以将数据切分,每部分是一个单独的lucene索引,称为分片(shard)。每个分片可以被存储在集群的不同节点上。当需要查询由多个分片构成的索引时,elasticsearch将查询发送到每个相关的分片,之后将查询结果合并。过程对应用透明,无需知道分片的存在。
一个索引的分片一旦指定,不能修改。
6.副本
副本是对原始分片的精确拷贝,原始分片称之为主分片,对索引的所有操作直接作用于主分片上。每个主分片可以有多个或零个副分片。主分片丢失,集群可以将一个副分片提升为新的主分片。
test为索引名称,01234为五个分片,p0PWCH4为节点名称。
7.获取index索引里的一条记录:
GET index/fulltext/1
结果:
{
"_index": "index",
"_type": "fulltext",
"_id": "1",
"_version": 1,
"found": true,
"_source": {
"content": "美国留给伊拉克的是个烂摊子吗"
}
}