elastic search

İbrahim Yıldız
2 min readJan 30, 2024

Elasticsearch, açık kaynaklı bir arama ve analiz motoru olarak öne çıkan bir yazılımdır. Apache Lucene projesine dayanan bu teknoloji, büyük veri kümelerinde hızlı, dağıtık ve gerçek zamanlı arama ve analiz yetenekleri sunar. Elasticsearch’in mimarisi, kullanım alanları, çevre bileşenleri ve temel terminolojisiyle ilgili bu blog yazısında daha detaylı bir bakış atalım.

Mimarisi:

Elasticsearch, dağıtık bir sistem olup genellikle bir küme (cluster) içinde çalışır. Her küme, birden çok düğümden (node) oluşur ve bu düğümler bir araya gelerek yüksek ölçeklenebilirlik ve hata toleransı sağlar.

Düğümler (Nodes):

  • Fiziksel veya sanal makinelerde çalışan Elasticsearch örnekleridir.
  • Veriler depolanır ve sorgulanır.
  • Bir küme içinde birden çok düğüm bulunabilir.

Küme (Cluster):

  • Düğümlerin bir araya gelerek oluşturduğu bir grup.
  • Veri dağıtımı, yüksek erişilebilirlik ve performans artışı sağlar.

Shard ve Replica:

  • Verilerin parçalara bölünmüş hali olan shard’lar, performans ve ölçeklenebilirlik açısından önemlidir.
  • Shard’ların kopyaları olan replica’lar, yedeklenmiş verileri sağlayarak hata toleransını artırır.

Kullanım Alanları:

Elasticsearch, geniş bir kullanım alanına sahiptir ve birçok endüstri tarafından tercih edilmektedir.

Log Analizi:

  • Büyük log verilerini hızlı bir şekilde analiz ederek sorunları tespit etme.
  • Logstash gibi araçlarla entegre edilerek logların indekslenmesi.

Metin Madenciliği:

  • Metin verilerini analiz ederek anlamlı içgörüler elde etme.
  • Kibana gibi görselleştirme araçlarıyla metin madenciliği sonuçlarını görüntüleme.

İş Zekası:

  • Büyük veri setlerini analiz ederek iş zekası uygulamalarını destekleme.
  • Grafana gibi araçlarla zengin görselleştirmeler oluşturma.

Uygulama İzleme:

  • Gerçek zamanlı olarak uygulama performansını ve loglarını izleme.
  • Beats gibi ajanlarla uygulama verilerini Elasticsearch’e gönderme.

Çevre Bileşenler:

Logstash:

  • Elasticsearch’e veri akışını kolaylaştıran bir log toplama ve işleme aracı.
  • Log verilerini standartlaştırma ve filtreleme.

Kibana:

  • Elasticsearch üzerindeki verileri görselleştirmek için kullanılan bir analiz ve görselleştirme aracı.
  • Grafikler, tablolar ve haritalar gibi çeşitli görselleştirmeler sunar.

Beats:

  • Hafif ajanlar olarak kullanılan veri toplama araçları.
  • Farklı kaynaklardan (örneğin, sistem logları, ağ verileri) verileri Elasticsearch’e gönderir.

Temel Terminoloji:

Döküman (Document):

  • Elasticsearch’te temel veri birimi, JSON formatında saklanır.
  • Örneğin, bir müşteri veya ürün bilgisi.

İndeks (Index):

  • Bir veya daha fazla döküman koleksiyonunu içerir.
  • Genellikle benzer türdeki verileri gruplamak için kullanılır.

Alan (Field):

  • Bir dökümandaki JSON anahtar-değer çiftleri.
  • Örneğin, bir müşteri dökümanında “ad”, “soyad”, “email” gibi alanlar.

Elasticsearch, geniş bir topluluk tarafından desteklenir ve sürekli olarak geliştirilmektedir. Bu, büyük veri setlerinde etkili arama ve analiz yapmak isteyen birçok organizasyon için ideal bir çözümdür. Verilerinizi hızlı bir şekilde sorgulamak, analiz etmek ve görselleştirmek istiyorsanız, Elasticsearch’i göz önünde bulundurmalısınız.

--

--