ElasticSearch'ün Apache Lucene üzerine inşa edildiğini biliyorum, ancak ikisi arasındaki önemli farkları bilmek istiyorum.
ElasticSearch'ün Apache Lucene üzerine inşa edildiğini biliyorum, ancak ikisi arasındaki önemli farkları bilmek istiyorum.
Yanıtlar:
Lucene bir Java kitaplığıdır . Bunu projenize dahil edebilir ve işlev çağrılarını kullanarak işlevlerine bakabilirsiniz.
Elasticsearch bir olan JSON Tabanlı, Dağıtılmış , web sunucusu Lucene üzerine inşa. Altında asıl işi yapan Lucene olsa da, Elasticsearch bize Lucene üzerinde uygun bir katman sağlıyor. Elasticsearch'te oluşturulan her parça ayrı bir Lucene örneğidir. Yani özetlemek için
@Vineeth Mohan'a ek olarak kelimelerine :
Yüksek kullanılabilirlik: Elasticsearch dağıtılmıştır, böylece veri replikasyonunu yönetebilir, bu da kümenizde birden fazla veri kopyasına sahip olunması anlamına gelir. Bu, yüksek kullanılabilirlik sağlar.
Güçlü Sorgu DSL : Elasticsearch, Lucene üzerinde sorguları okumak ve yazmak için bize JSON arayüzü sunar. Elasticsearch sayesinde, Lucene sözdizimini bilmeden karmaşık sorgular yazabilirsiniz.
Şemasız (Şemasız): için alanların (ad, değer çiftleri) schema
önceden tanımlanması gerekmez. Verileri indekslediğinizde, elasticsearch, sihir gibi çalışma zamanında otomatik olarak şema oluşturabilir.
Kullanım açısından cevaplayacağım.
Lucene bir arama motoru kitaplığıdır . Kendi arama motorunuzu oluşturmak için kullanmak istersiniz: ya yeni bir Elasticsearch ya da Solr rakibi ya da kullanım durumunuz için dar bir şey (örneğin, metin analizi).
Elasticsearch bir arama motorudur . Çoğu kişi bunu günlük toplama, ürün arama veya bu ikisinin bir çeşidi için kullanır (örneğin, sosyal medya analizi veya bazı arama kriterleri için ilgili kişileri bulmak). Lucene üzerine inşa edilmiştir, bu nedenle özelliklerinin çoğunu (hepsini olmasa da) ortaya çıkarır . Ayrıca en önemlisi, üstüne çok şey ekler: