Elasticsearch 是什麼?
Elasticsearch 是一個分散式的、開源的搜尋分析引擎,支援各種資料型別,包括文字、數字、地理、結構化、非結構化。
Elasticsearch 是基於 Apache Lucene 的。
Elasticsearch 因其簡單的 REST API、分散式特性、告訴、可擴充套件而聞名。
Elasticsearch 是 Elastic 產品棧的核心,Elastic 產品棧是個開源工具集合,用於資料接收、儲存、分析、視覺化。
一個搜尋和分析引擎
Elasticsearch 可以讓你儲存所有型別的資料。
你可能認為搜尋是關於文字的,的確,Elasticsearch 精通索引和查詢文字。
但是,那不是全部,你還可以儲存數字型別的資料、Geo 地理型別的資料。
Elasticsearch 不僅可以查詢資料,還可以做彙總、聚合等等操作。
開源
Elasticsearch 是免費、開源的。
Elasticsearch 所屬的 Elastic 公司,是一家商業盈利性質的公司,但你並不需要因為使用 Elasticsearch 而付費。
Elastic 公司使用的是增值服務模式,你付費的話可以得到更多的支援和產品特性。
一個完整的生態
Elasticsearch 是 Elastic 產品棧的核心。
其中的工具可以幫助你實現視覺化(Kibana)、接入(Beats、Logstash)和管理儲存在 Elasticsearch 中的資料。
除了官方工具,還有大量免費和商用的工具庫可以使用。
彈性
搜尋技術有彈性是什麼意思?
-
Elasticsearch 可以輕鬆進行節點擴充套件。
-
你可以非常輕鬆的使用 Elasticsearch,非常容易起步,而且,還通過多種方式幫助你成功的使用在產品環境中。
分散式
可擴充套件性是 Elasticsearch 的一個巨大優勢。
在你起步的時候,可以使用一個節點,在壯大之後,Elasticsearch 可以輕鬆的擴充套件。
新增物理節點,然後在配置檔案中列出即可。
在新節點加入之後,你的 indexes 會自動分佈到新的節點。
可以用來做什麼?
使用場景例如:
- 文件存錯查詢
可以很好地儲存和查詢文件,用於應用程式搜尋、企業搜尋和網站搜尋。
- 日誌儲存和索引
使用 ELK,輕鬆儲存和分析日誌。
ELK 還通常用於監控基礎資訊、應用程式效能和使用情況。
-
地理資料儲存和分析
-
商業智慧平臺
在各類場景中,可以抽象出2種資料型別:
- 靜態資料
Elasticsearch 用作搜尋引擎。
- 時間序列資料
時序資料傳送到 Elasticsearch,用於產品分析、報告、異常檢測 ……
Elasticsearch 的替代方案
Elasticsearch 的競爭對手只有一個,Apache Solr,有著和 Elasticsearch 相似的特性,但 Solr 的發展勢頭遠不及 Elasticsearch。
可以看到,2014年左右 Elasticsearch 的受歡迎程度大大超過了 Solr。
小結
上面的內容可以讓你對 Elasticsearch 有一個基本的認識,包括 Elasticsearch 是什麼、可以用來做什麼、市場地位。