Elasticsearch 權威指南(中文版)
Elasticsearch 權威指南(中文版)
閱讀地址:Elasticsearch權威指南(中文版)
原書地址:Elasticsearch the definitive guide
原作者: clinton gormley,zachary tong
譯者: Looly
參與翻譯: iridiumcao cvvnx1 conan007ai
感謝參與翻譯的小伙伴們~~
郵箱: loolly@gmail.com
微博: @路小磊
項目地址:
https://github.com/looly/elasticsearch-definitive-guide-cn
http://git.oschina.net/loolly/elasticsearch-definitive-guide-cn
閱讀地址:
說明
之前接觸Elasticsearch只是最簡單的使用,想要深入了解內部功能,借助翻譯同時系統學習。由于英語比較菜,第一次翻譯文檔,如有不妥,歡迎提issue:
Elasticsearch是一個基于Apache Lucene(TM)的開源搜索引擎,無論在開源還是專有領域,Lucene可以被認為是迄今為止最先進、性能最好的、功能最全的搜索引擎庫。
但是,Lucene只是一個庫。想要發揮其強大的作用,你需使用Java并要將其集成到你的應用中,Lucene的確非常復雜,你需要深入的了解檢索相關知識來理解它是如何工作的。
Elasticsearch也是使用Java編寫并使用Lucene來建立索引并實現搜索功能,但是它的目的是通過簡單連貫的RESTful API讓全文搜索變得簡單并隱藏Lucene的復雜性。
不過,Elasticsearch不僅僅是Lucene和全文搜索引擎,它還提供:
- 分布式的實時文件存儲,每個字段都被索引并可被搜索
- 實時分析的分布式搜索引擎
- 可以擴展到上百臺服務器,處理PB級結構化或非結構化數據
而且,所有的這些功能被集成到一臺服務器,你的應用可以通過簡單的RESTful API、各種語言的客戶端甚至命令行與之交互。
上手Elasticsearch非常。它提供了許多合理的缺省值,并對初學者隱藏了復雜的搜索引擎理論。它開箱即用(安裝即可使用),只需很少的學習既可在生產環境中使用。
Elasticsearch在Apache 2 license下許可使用,可以免費下載、使用和修改。
隨著知識的積累,你可以根據不同的問題領域定制Elasticsearch的高級特性,這一切都是可配置的,并且配置非常靈活。
多年前,一個叫做Shay Banon的剛結婚不久的失業開發者,由于妻子要去倫敦學習廚師,他便跟著也去了。在他找工作的過程中,為了給妻子構建一個食譜的搜索引擎,他開始構建一個早起版本的Lucene。
基于Lucene工作會比較困難,所以Shay開始抽象Lucene代碼以便Java程序猿可以在應用中添加搜索功能。他第一次開源這個項目時把它叫做“Compass”。
后來Shay找到一份工作,這份工作處在高性能和內存數據網格的分布式環境中,因此高性能的、實時的、分布式的搜索引擎也是理所當然需要的。然后他決定重寫Compass庫做為一個獨立的服務叫做Elasticsearch。
第一個公開版本出現在2010年二月,在那之后Elasticsearch已經變成Github上最受歡迎的項目之一,而且已經超過300人為此項目做出貢獻。公司已經圍繞Elasticsearch提供了商業支持用于擴展新功能,不過Elasticsearch將永遠開源且對所有人可用。