### 搜索 – 基本工具
到目前為止,我們已經(jīng)學(xué)習(xí)了Elasticsearch的分布式NOSQL文檔存儲(chǔ),我們可以直接把JSON文檔扔到Elasticsearch中,然后直接通過(guò)ID來(lái)進(jìn)行調(diào)取。但是Elasticsearch真正的強(qiáng)大之處在于將混亂變得有意義——將大數(shù)據(jù)變成大量的信息。
這也是我們使用JSON文檔而不是無(wú)規(guī)則數(shù)據(jù)的原因。Elasticsearch不僅僅只是_存儲(chǔ)_文檔,同時(shí)它還_索引_了這些文檔以便搜索。**文檔中每一個(gè)字段都被索引并且可以被查詢**。不僅如此,在一個(gè)查詢中,Elasticsearch可以使用**所有**索引,并且以驚人的速度返回結(jié)果。這是傳統(tǒng)數(shù)據(jù)庫(kù)永遠(yuǎn)也不能企及的。
這個(gè)_搜索_可以是:
- 類似于`年齡`、`性別`、`加入日期`等結(jié)構(gòu)化數(shù)據(jù),類似于在SQL中進(jìn)行查詢。
- 全文搜索,查找整個(gè)文檔中匹配關(guān)鍵字的內(nèi)容,并根據(jù)_相關(guān)性_
- 或者結(jié)合兩者。
雖然很多搜索操作是安裝好Elasticsearch就可以用的,但是想發(fā)揮它的潛力,你需要明白以下內(nèi)容:
| 名字 | 說(shuō)明 |
|-----|-----|
| _映射 (Mapping)_ | 每個(gè)字段中的數(shù)據(jù)如何被解釋 |
| _統(tǒng)計(jì) (Analysis)_ | 可搜索的全文是如何被處理的 |
| _查詢 (Query DSL)_ | Elasticsearch使用的靈活強(qiáng)的查詢語(yǔ)言 |
上述的每一個(gè)內(nèi)容都是一個(gè)大的主題,我們將會(huì)在之后的《深入搜索》中詳細(xì)探討它們。 本章中我們將針對(duì)先去介紹它們?nèi)齻€(gè)的基本概念 —— 已經(jīng)足夠能幫助你理解搜索是如何運(yùn)作的了。
我們將向你介紹`search`API的簡(jiǎn)單實(shí)用方式。
> ### 測(cè)試數(shù)據(jù)
我們本章使用的文檔可以在下面的git中找到:[https://gist.github.com/clintongormley/8579281](https://gist.github.com/clintongormley/8579281)
你可以下載然后導(dǎo)入到你的shell中以方便你的學(xué)習(xí)使用。
- Introduction
- 入門
- 初識(shí)
- 安裝
- API
- 文檔
- 索引
- 搜索
- 匯總
- 小結(jié)
- 分布式
- 本章總結(jié)
- 分布式集群
- 空集群
- 集群健康
- 添加索引
- 容錯(cuò)移轉(zhuǎn)
- 橫向擴(kuò)展
- 擴(kuò)展
- 故障恢復(fù)
- 索引
- 文檔
- Get
- 存在
- 更新
- 創(chuàng)建
- 刪除
- 版本控制
- 局部更新
- Mget
- Bulk
- 總結(jié)
- 分布式文檔存儲(chǔ)
- 路由
- 主從互通
- 創(chuàng)建索引刪除
- 獲取
- 局部更新
- 批量請(qǐng)求
- 批量格式
- 搜索
- 空白搜索
- 多索引多類型
- 分頁(yè)
- 查詢語(yǔ)句
- 映射與統(tǒng)計(jì)
- Exact_vs_full_text
- Inverted_index
- Analysis
- Mapping
- Complex_datatypes
