Introdução aos pomos em Cassandra



Isso define os informantes e o papel que eles desempenham em Cassandra

O que é um pomo?

Um delator determina em quais data centers e racks serão gravados e lidos. O trabalho de um informante é simplesmente determinar a proximidade relativa do hospedeiro. Portanto, se um nó tiver 3 opções para copiar os dados, qual host ele deve selecionar? De qual host ele deve preferir os dados?

Se esse for o tipo de informação que o host gostaria de receber, ele chamará um informante específico para ver qual host está relativamente mais próximo. Os bufos reúnem informações sobre a topologia da rede. Dependendo do tipo de snitch usado, eles estarão cientes da topologia de rede que uma pessoa está usando e podem rotear as solicitações com eficiência.





Para um único cluster de data center, usar o pomo simples padrão é suficiente. Portanto, um simples pomo nada mais é do que um pomo desatento. Ele não sabe sobre os racks e data centers em um cluster. Não possui nenhuma informação, por isso assumirá que não existem racks e escolherá o host mais próximo em termos de largura de banda de rede disponível. Ele não vai considerar se precisa preferir um nó do mesmo rack ou mesmo data center. Mas outras réplicas disponíveis são compatíveis com rack e existem diferentes tipos de informantes.

Tipos de pomo

Pomo Simples Ele tem a estratégia de colocar a cópia da linha no próximo nó disponível, caminhando no sentido horário pelos nós.



Rack Inferring Snitch - Tenta colocar cópias de linhas de racks diferentes no data center. Ele saberá sobre o rack e o data center e tentará colocar cópias em diferentes racks e data centers. A partir do endereço IP, ele pode determinar o endereço do data center e o rack. Portanto, o endereço IP deverá ser configurado de forma que a segunda unidade de endereço IP seja usada para identificar o data center. A terceira unidade identifica o rack.

Snitch de arquivo de propriedade - Na inferência de rack, ele fará a leitura do endereço IP, mas caso o endereço não esteja configurado dessa forma, há a opção de definir esta informação em um arquivo de propriedade. Então, como você define essas informações em um arquivo de propriedade?

Os detalhes deverão ser definidos em cada nó do cluster nas propriedades de topologia do Cassandra. Este arquivo deve ser o mesmo em todos os nós e não deve ser diferente de um nó para o outro.



Tem alguma questão para nós? Mencione-os na seção de comentários e entraremos em contato com você.