Elasticsearch - Dizin API'leri

Bu API'ler, ayarlar, takma adlar, eşlemeler, dizin şablonları gibi dizinin tüm yönlerini yönetmekten sorumludur.

Dizin Oluştur

Bu API, bir dizin oluşturmanıza yardımcı olur. Bir kullanıcı JSON nesnelerini herhangi bir dizine geçirirken otomatik olarak bir dizin oluşturulabilir veya bundan önce oluşturulabilir. Bir dizin oluşturmak için ayarlar, eşlemeler ve takma adlar içeren bir PUT isteği veya gövde içermeyen basit bir istek göndermeniz yeterlidir.

PUT colleges

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

{
   "acknowledged" : true,
   "shards_acknowledged" : true,
   "index" : "colleges"
}

Yukarıdaki komuta bazı ayarlar da ekleyebiliriz -

PUT colleges
{
  "settings" : {
      "index" : {
         "number_of_shards" : 3,
         "number_of_replicas" : 2
      }
   }
}

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

{
   "acknowledged" : true,
   "shards_acknowledged" : true,
   "index" : "colleges"
}

Dizini Sil

Bu API, herhangi bir dizini silmenize yardımcı olur. Sadece söz konusu Dizinin adıyla bir silme talebini iletmeniz gerekir.

DELETE /colleges

Sadece _all veya * kullanarak tüm dizinleri silebilirsiniz.

Dizini Al

Bu API, bir veya daha fazla dizine alma isteği gönderilerek çağrılabilir. Bu, indeks hakkındaki bilgileri döndürür.

GET colleges

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

{
   "colleges" : {
      "aliases" : {
         "alias_1" : { },
         "alias_2" : {
            "filter" : {
               "term" : {
                  "user" : "pkay"
               }
            },
            "index_routing" : "pkay",
            "search_routing" : "pkay"
         }
      },
      "mappings" : { },
      "settings" : {
         "index" : {
            "creation_date" : "1556245406616",
            "number_of_shards" : "1",
            "number_of_replicas" : "1",
            "uuid" : "3ExJbdl2R1qDLssIkwDAug",
            "version" : {
               "created" : "7000099"
            },
            "provided_name" : "colleges"
         }
      }
   }
}

_All veya * kullanarak tüm endekslerin bilgisine ulaşabilirsiniz.

Dizin Var

Bir dizinin varlığı, sadece o dizine bir alma isteği gönderilerek belirlenebilir. HTTP yanıtı 200 ise, var; 404 ise mevcut değildir.

HEAD colleges

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

200-OK

Dizin Ayarları

Dizin ayarlarını, URL'nin sonuna _settings anahtar kelimesini ekleyerek alabilirsiniz.

GET /colleges/_settings

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

{
   "colleges" : {
      "settings" : {
         "index" : {
            "creation_date" : "1556245406616",
            "number_of_shards" : "1",
            "number_of_replicas" : "1",
            "uuid" : "3ExJbdl2R1qDLssIkwDAug",
            "version" : {
               "created" : "7000099"
            },
            "provided_name" : "colleges"
         }
      }
   }
}

Dizin İstatistikleri

Bu API, belirli bir indeksle ilgili istatistikleri çıkarmanıza yardımcı olur. Sonunda dizin URL'si ve _stats anahtar kelimesini içeren bir alma isteği göndermeniz yeterlidir.

GET /_stats

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

………………………………………………
},
   "request_cache" : {
      "memory_size_in_bytes" : 849,
      "evictions" : 0,
      "hit_count" : 1171,
      "miss_count" : 4
   },
   "recovery" : {
      "current_as_source" : 0,
      "current_as_target" : 0,
      "throttle_time_in_millis" : 0
   }
} ………………………………………………

Flush

Bir dizinin temizleme işlemi, şu anda yalnızca işlem günlüğünde saklanan tüm verilerin Lucene'de kalıcı olarak saklanmasını sağlar. Bu, Lucene indeksli açıldıktan sonra verilerin işlem günlüklerinden yeniden indekslenmesi gerekmediğinden kurtarma sürelerini azaltır.

POST colleges/_flush

Yukarıdaki kodu çalıştırırken, çıktıyı aşağıda gösterildiği gibi elde ederiz -

{
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   } 
}