Update 01.ES简介.md
This commit is contained in:
@@ -16,14 +16,18 @@ Elasticsearch 处于最核心的位置,它可以帮我们对数据进行快速
|
||||
|
||||
|
||||
## 文档(Document)
|
||||
Elasticsearch是面向文档的,文档是所有可搜索数据的最小单位。
|
||||
|
||||
|
||||
Elasticsearch是面向文档的,文档是所有可搜索数据的最小单位。如果用关系型数据库类比的话,文档就好像是数据库中的一行记录。
|
||||
|
||||
Elasticsearch的文档是以JSON进行序列化并保存的,每个JSON对象由一个或多个字段组成,字段类型可以是布尔,数值,字符串、二进制、日期等数据类型。
|
||||
|
||||
- 日志文件中的日志项
|
||||
- 一本电影的具体信息/—张唱片的详细信息
|
||||
- MP3播放器里的一首歌/ 一篇PDF文档中的具体内容
|
||||
|
||||
- 文档会被序列化成JSON格式,保存在Elasticsearch中,JSON对象由字段组成。每个字段都有对应的字段类型(字符串/数值/布尔/日期/二进制/范围类型)。
|
||||
- 结构灵活。你的文档不依赖于预定义的架构。例如,并非所有事件都需要描述值,因此可以完全省略该字段。但它可能需要新的字段,例如位置的纬度和经度。
|
||||
- 结构灵活。你的文档不依赖于预定义的架构。例如: 并非所有事件都需要描述值,因此可以完全省略该字段。但它可能需要新的字段,例如位置的纬度和经度。
|
||||
- 它可以是分层的。可以将其视为文档中的文档。字段的值可以很简单,就像位置字段的值可以是字符串一样。它还可以包含其他字段和值。例如,位置字段可能包含城市和街道地址。
|
||||
- 每个文档都有一个Unique ID,你可以自己指定ID,或者通过Elasticsearch自动生成。
|
||||
|
||||
@@ -79,6 +83,15 @@ Elasticsearch 具有 schema-less 的能力,这意味着无需显式指定如
|
||||
|
||||
传统的RDBMS, 在插入数据之前需要定义表结构,各个字段的类型及长度等。当我们在ES中建立一个索引的第一个文档时,如果你没有创建它的 schema,那么 Elasticsearch 会根据所输入字段的数据进行猜测它的数据类型,比如上面的 user 被被认为是 text 类型,而 uid 将被猜测为整数类型。这种方式我们称之为 schema on write,也即当我们写入第一个文档时,Elasticsearch 会自动帮我们创建相应的 schema。在 Elasticsearch 的术语中,mapping 被称作为 Elasticsearch 的数据 schema。一旦一个索引的某个字段的类型被确定下来之后,那么后续导入的文档的这个字段的类型必须是和之前的是一致,否则写入将导致错误。schema on write 可能在某些时候不是我们想要的,那么在这种情况下,我们可以事先创建一个索引的 schema。你将在后面的文章中看到。在最新的 Elasticsearch 设计中,也出现了一种叫做 schema on read 的设计。
|
||||
|
||||
|
||||
# 索引
|
||||
|
||||
在ES中,索引是ES组织文档的方式,是拥有相结构文档的集合,可以把ES的索引类比为关系型数据库的一张数据表。一个表可以存放多行数据。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# ES集群
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user