Elasticsearch 基础入门(二)
你知道的, 為了搜索…?
Elasticsearch 是一個開源的搜索引擎,建立在一個全文搜索引擎庫?Apache Lucene??基礎之上。 Lucene 可以說是當下最先進、高性能、全功能的搜索引擎庫—?無論是開源還是私有。
但是 Lucene 僅僅只是一個庫。為了充分發揮其功能,你需要使用 Java 并將 Lucene 直接集成到應用程序中。 更糟糕的是,您可能需要獲得信息檢索學位才能了解其工作原理。Lucene?非常?復雜。
Elasticsearch 也是使用 Java 編寫的,它的內部使用 Lucene 做索引與搜索,但是它的目的是使全文檢索變得簡單, 通過隱藏 Lucene 的復雜性,取而代之的提供一套簡單一致的 RESTful API。
然而,Elasticsearch 不僅僅是 Lucene,并且也不僅僅只是一個全文搜索引擎。 它可以被下面這樣準確的形容:
- 一個分布式的實時文檔存儲,每個字段?可以被索引與搜索
- 一個分布式實時分析搜索引擎
- 能勝任上百個服務節點的擴展,并支持 PB 級別的結構化或者非結構化數據
Elasticsearch 將所有的功能打包成一個單獨的服務,這樣你可以通過程序與它提供的簡單的 RESTful API 進行通信, 可以使用自己喜歡的編程語言充當 web 客戶端,甚至可以使用命令行(去充當這個客戶端)。
就 Elasticsearch 而言,起步很簡單。對于初學者來說,它預設了一些適當的默認值,并隱藏了復雜的搜索理論知識。 它?開箱即用?。只需最少的理解,你很快就能具有生產力。
隨著你知識的積累,你可以利用 Elasticsearch 更多的高級特性,它的整個引擎是可配置并且靈活的。 從眾多高級特性中,挑選恰當去修飾的 Elasticsearch,使它能解決你本地遇到的問題。
你可以免費下載,使用,修改 Elasticsearch。它在?Apache 2 license?協議下發布的, 這是眾多靈活的開源協議之一。Elasticsearch 的源碼被托管在 Github 上?github.com/elastic/elasticsearch。 如果你想加入我們這個令人驚奇的 contributors 社區,看這里?Contributing to Elasticsearch。
如果你對 Elasticsearch 有任何相關的問題,包括特定的特性(specific features)、語言客戶端(language clients)、插件(plugins),可以在這里?discuss.elastic.co?加入討論。
回憶時光
許多年前,一個剛結婚的名叫 Shay Banon 的失業開發者,跟著他的妻子去了倫敦,他的妻子在那里學習廚師。 在尋找一個賺錢的工作的時候,為了給他的妻子做一個食譜搜索引擎,他開始使用 Lucene 的一個早期版本。
直接使用 Lucene 是很難的,因此 Shay 開始做一個抽象層,Java 開發者使用它可以很簡單的給他們的程序添加搜索功能。 他發布了他的第一個開源項目 Compass。
后來 Shay 獲得了一份工作,主要是高性能,分布式環境下的內存數據網格。這個對于高性能,實時,分布式搜索引擎的需求尤為突出, 他決定重寫 Compass,把它變為一個獨立的服務并取名 Elasticsearch。
第一個公開版本在2010年2月發布,從此以后,Elasticsearch 已經成為了 Github 上最活躍的項目之一,他擁有超過300名 contributors(目前736名 contributors )。 一家公司已經開始圍繞 Elasticsearch 提供商業服務,并開發新的特性,但是,Elasticsearch 將永遠開源并對所有人可用。
據說,Shay 的妻子還在等著她的食譜搜索引擎…?
學習鏈接:https://www.elastic.co/guide/cn/elasticsearch/guide/current/running-elasticsearch.html
總結
以上是生活随笔為你收集整理的Elasticsearch 基础入门(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 日常生活小技巧 -- 网络调试助手
- 下一篇: ESP32开发 -- 试玩ESP32