面向文檔
程序中的對象很少是單純的鍵值與數值的列表。更多的時候它擁有一個復雜的結構,比如包含了日期、地理位置、對象、數組等。
你需要把這些對象存儲在數據庫中。但是如果存在傳統的關系型數據庫中,每次重建它你都要檢索一遍數據。
Elasticsearch 是 面向文檔型數據庫,這意味著它存儲的是整個對象或者 文檔,它不但會存儲它們,還會為他們建立索引,這樣你就可以搜索他們了。
JSON
Elasticsearch使用 JSON (或稱作JavaScript Object Notation ) 作為文檔序列化的格式。
JSON 已經被大多數語言支持,也成為 NoSQL 領域的一個標準格式。它簡單、簡潔、易于閱讀。
Elasticsearch 中,將對象轉換為 JSON 并作為索引要比在表結構中做相同的事情簡單多了。
The official Elasticsearch clients 也可以幫你自動結構化 JSON。