Elasticsearch Nedir?

İngilizce: Elasticsearch

Elasticsearch, büyük metin ve log verileri üzerinde hızlı arama, filtreleme ve analitik sorgular çalıştıran dağıtık arama motorudur.

Elasticsearch Nedir?

Elasticsearch, Apache Lucene üzerine kurulu dağıtık arama ve analitik motorudur. Büyük hacimli metin, log, olay ve ürün verisini indeksleyerek tam metin arama, filtreleme, sıralama ve agregasyon sorgularını hızlı çalıştırmak için kullanılır.

Nasıl Çalışır?

Veri Elasticsearch’e belge olarak yazılır. Her belge JSON benzeri alanlardan oluşur. Metin alanları analyzer’lardan geçerek kelimelere ayrılır ve ters indeks yapısına eklenir. Bu sayede “kırmızı ayakkabı” gibi bir arama, tüm kayıtları tek tek taramadan ilgili belgelere ulaşabilir.

Cluster yapısında indeksler shard’lara bölünür; replica shard’lar hem yedeklilik hem de okuma kapasitesi sağlar. Bu dağıtık yapı güçlüdür, fakat mapping, bellek, disk, shard sayısı ve sorgu maliyeti dikkatli yönetilmezse performans sorunları oluşabilir.

Nerede Kullanılır?

  • E-ticaret ürün araması ve filtreleri
  • Log arama ve uygulama gözlemlenebilirliği
  • Doküman, destek kaydı veya bilgi bankası araması
  • Güvenlik olayları ve metrik analitiği

İş Dünyasında Kullanımı

Elasticsearch, klasik ilişkisel veritabanının yerine her zaman geçmez; çoğu projede ana veri kaynağından beslenen ayrı bir arama katmanı olarak çalışır. NoSQL özellikleri taşısa da temel değeri arama ve analitiktir.

Kibana ile birlikte kullanıldığında logları görselleştirmek, sorgu denemek ve dashboard hazırlamak kolaylaşır. Ürün aramasında ise eş anlamlılar, typo toleransı, ranking ve güncel stok verisi birlikte tasarlanmalıdır.