数据输入和输出
面向对象编程语言中的对象是帮助我们表示和处理现实世界具有潜在的复杂的数据结构的实体。
在存储这些实体时,传统的关系型数据库以行和列的形式(类似电子表格)存储数据。但是这种不灵活的存储媒介导致我们所使用对象的灵活性都丢失了。
JSON 是一种极好的表现对象的方式,现在已经是 NoSQL 世界交换数据的标准了,当一个对象被序列化成为 JSON,它被称为一个 JSON 文档。ES 就是一个 分布式的文档存储。
尽管现存的 NoSQL 允许以 文档的形式存储对象,但它们仍旧需要我们思考如何快速的查询数据,并确定哪些字段需要被索引以加快数据检索。
在 Elasticsearch 中,每个字段都是默认被索引的,即每个字段都有为了快速检索设置的专用倒排索引。
一、文档
一个文档不仅包含它的数据,也包含元数据:
_index:索引,表示因共同特性被分组到一起的文档集合(不能以下划线开头,不能包含逗号)。
_type:索引中的子分区,已过期(6.0.0)。
_id:文档的唯一标识,当创建新文档时,要么提供自己的_id,要么让 ES 帮你生成。