Yanıtlar:
Belgelere bakarken, bunun için bir referans bulmakta zorlanıyorum, ancak kısa cevap "evet" nodetool repair, kümenizdeki her düğümde çalıştırmanız gerekiyor . Bulabildiğim en yakın nokta, düğümlerin onarımı ile ilgili olarak, bir kerede kümenizdeki birden fazla düğümde onarım çalıştırmamanız gerektiğini gösteren belgelerdir .
Ayrıca çalıştırabilirsiniz onarım ile -prcari düğüm sorumlu olduğunu ilk belirteç aralığa onarım işlemini sınırlayan bayrağı. Bu, kalan düğümlerde çalıştırıldığında işin çoğaltılmasını azaltır.
-prher düğümde çalıştırırsanız tüm anahtar boşluklarını kaplayacaktır.
-prbayrakla zaman kazanabilirsiniz .
Nasıl davrandığı yapılandırmanıza, Cassandra'nın hangi sürümünü kullandığınıza ve onarım komutunu nasıl çalıştırdığınıza bağlıdır.
nodetool repairBir kümede yalnızca tek bir düğümde çalıştırırsanız , düğümün sorumlu olduğu tüm verileri (belirteç aralıkları) ve bu verilerden sorumlu diğer düğümleri onarır.
Örneğin, nodetool repairkomutu belirli bir kümedeki tek bir düğümde çalıştırırsanız :
Bununla birlikte, -hostsve -dcbayraklarını kullanarak onarım yapmak için hangi ana bilgisayarların ve veri merkezlerinin tanımlanması mümkündür . Ayrıca kullandığınız takdirde -prçalıştırmak zorunda kalacak (sadece düğüm sorumludur ilk belirteç aralığı bulacaktır) bayrağı nodetool repair -prüzerinde tüm kümedeki düğümler.
Akılda tutulması gereken bir diğer bayrak -incCassandra 2.1'de yer alan bayraktır. Bu seçenek yalnızca yeni verileri onaracaktır (önceden onarılmamış veriler). Buna güvenirken, özellikle verileri sık sık siliyorsanız dikkatli olun. ( daha fazlası )
Akılda tutulması gereken başka bir şey, Cassandra'da onarımların varsayılan şekilde yapılmasının değişebileceğidir. Cassandra 2.1'den itibaren çalışırken sadece nodetool repairvarsayılan olarak tam sıralı onarım gerçekleştirir. Sürümünüzün ne yaptığına bakmak isteyeceksiniz.
Konu hakkında daha fazla bilgi için:
Hayır, her bir düğümde koşmanıza gerek yoktur. belgelerdenodetool repair açıkça belirtilen düğümler kümesi üzerinde çalışır .
Onarımı çalıştırmak istediğiniz düğümleri veya verilerin bir bölümünü sınırlayabilirsiniz. Örneğin, -prdüğümün sorumlu olduğu bölüm aralığı için seçenek sunabilirsiniz , ancak bunun tüm kümede çalıştırılması gerekir. Ancak seçerseniz -local, düğümün yerel veri merkezindeki düğümler onarılır.
nodetool repairTek bir düğümde çalıştırmak , tüm yapılandırmalardaki tüm düğümlerdeki tüm çoğaltılmış verileri onarmak için yeterli değildir. nodetool repairTek bir düğümde çalıştırmak , yalnızca o düğümde çoğaltılmış verileri onarır. ( -prSeçeneğin eklenmesi, onarımı bu düğümün ilk çoğaltma olduğu verilerle sınırlar.) Ancak kümenizde bu düğümde çoğaltılmamış veriler varsa nodetool repair, ek düğümlerde çalıştırmanız gerekir .
-prher düğümde koşarsam, bu tüm tuş alanını kaplayacak mı?