ElasticSearch, Apache Lucene ve Solr altyapıları üzerinde, Java programlama dili kullanılarak geliştirilmiş bir metin arama işlemlerinde kullanılan NoSQL teknolojisidir.
Veriler kaydedilirken indexlenir. Bu özellik sayesinde arama çok hızlı gerçekleşir.
Full-text search için bir örneğe bakacak olursak, elimizde 3 metin olduğunu düşünelim. Dokümanları sisteme insert ederken bir yandan hangi dokümanda gerçtiğini kaydeder.
💡Kafamızın karışmasını önlemek adına İlişkisel veritabanlarında kullanılan terimlerin elastic search’teki karşılığını not edelim.
Elastic Search Yükleme
Ben Ubuntu 20.04 ortamı üzerinde kurulum yaptım. Yararlandığım linki aşağıya bırakıyorum.
Ve elasticsearch’ü restart ederek kullanmaya başlıyorum.
Postman üzerinden CRUD İşlemleri
ElasticSearch 9200 portu üzerinden çalışıyor. Şimdi bu porttan işlemler gerçekleştirelim.
Index Oluşturma
Put ile bir index oluşturalım.
Doküman Ekleme
Yine put kullanılarak önce hangi index’e girileceğini ardından slash ve table adı en sonda ise id bilgisi girilmeli.
Body olarak nasıl bir belge ekleyeceksek bunu JSON formatında gönderelim.
Bu şekilde istediğiniz kadar create işlemi yapabilirsiniz. Ben bir kaç telefon daha ekleyeceğim.
Yeni veri eklerken body’mizde aynı kolonların olması gerekmez. Farklı özellikler açıp onları direkt ekleyebiliriz.
Not. Aynı id üzerinden tekrar veri oluşturmaya çalışsaydık. Verimiz güncellenecek ve bu versiyon şeklinde kaydedilecekti.
Search ile Verileri Listeleme
Query kullanarak Search İşlemi
Markası Xiomi olanları getir demek istersek
http://localhost:9200/myindex/phones/_search yerine http://localhost:9200/myindex/phones/_count kullanarak da kaç tane sonuç döndüğünü direkt alabilirsiniz.
Verileri Silme
Id vererek veya belli bir özelliğe göre silme işlemleri yapılabilir.
Bu yazımız bu kadar :) Kullandığımız sorgulara aşağıdaki adresten ulaşabilirsiniz.