2016-03-24 22 views
0

Büyük belgeleri depolamak için Elastic Search kullanıyorum. Yerel veriler için yerel (ES/Lucene'de elde edilemeyen) özel veri sorguları çalıştırmak istiyorum. Bununla demek istediğim, ağ üzerindeki GB'leri yalnızca yarısı atmak için sürüklemek istemiyorum.Sorgulamaya özel Elastic Search düğüm

Buradaki çözümüm, her düğümde, localhost ES örneğini sorgulayacak bir Java işlemine sahip olacağım.

Soruma göre, belirli bir ES düğümünde, yalnızca başka düğümlerin sorgusunu değil, birincil düğüm olan parçaları sorgulamak mümkün mü?

cevap

1

Arama isteklerini yürütmek için hangi parçaların yürütüleceğini kontrol etmek için elasticsearch preferences kullanabilirsiniz.

curl localhost:9200/_search?preference=xyzabc123 -d ' 
{ 
    "query": { 
     "match": { 
      "title": "elasticsearch" 
     } 
    } 
}' 

_primary

operasyon gidecek ve sadece birincil kırıkların üzerinde yürütülecek.

_primary_first operasyon gidecek ve primer kırıkta yürütülecek ve (üstlenme) mevcut değil ise, diğer kırıkların üzerinde çalıştırır.

_replica

operasyon gidecek ve sadece çoğaltma kırıkta yürütülecek.

_replica_first operasyon gidecek ve sadece çoğaltma kırıkta yürütülecek ve (üstlenme) mevcut değil ise, diğer kırıkların üzerinde çalıştırır.

_local

operasyon mümkünse yerel tahsis kırıkta yürütülecek tercih edecektir.

_only_node: xyz

sağlanan düğüm kimliği (bu durumda xyz) ile bir düğümde sadece yürütmek kısıtlar.

Reference

İlgili konular