面向文档
程序中的对象很少是单纯的键值与数值的列表。更多的时候它拥有一个复杂的结构,比如包含了日期、地理位置、对象、数组等。
你需要把这些对象存储在数据库中。但是如果存在传统的关系型数据库中,每次重建它你都要检索一遍数据。
Elasticsearch 是 面向文档型数据库,这意味着它存储的是整个对象或者 文档,它不但会存储它们,还会为他们建立索引,这样你就可以搜索他们了。
JSON
Elasticsearch使用 JSON (或称作JavaScript Object Notation ) 作为文档序列化的格式。
JSON 已经被大多数语言支持,也成为 NoSQL 领域的一个标准格式。它简单、简洁、易于阅读。
Elasticsearch 中,将对象转换为 JSON 并作为索引要比在表结构中做相同的事情简单多了。
The official Elasticsearch clients 也可以帮你自动结构化 JSON。