Estou avaliando o melhor design para a instalação do Cassandra.
Não há tanta informação na Internet sobre o uso dos dois primeiros níveis de acesso que Cassandra fornece - espaços de chave e famílias de colunas .
Gostaria de saber se e quais serão as penalidades se você optar por criar uma quantidade extensa de espaços de chave ou famílias de colunas (> 10.000).
Um post antigo em algum lugar sugeria que Cassandra reserva memória para cada família de colunas. O artigo era sobre a versão 0.6 e a versão atual é 1.0. Este ainda é o caso e um problema real?
Quais são as penalidades do uso de milhares de famílias de colunas ou espaços de chave no Cassandra?
Respostas:
O Cassandra 1.0 usa no mínimo 1 MB de heap por CF. Portanto, 1000 ou 2000 CFs serão adequados para tamanhos de heap típicos, mas 10000 provavelmente não serão. O JVM GC se sai mal com montes muito grandes; Eu recomendo ficar com menos de 8GB.
fonte
A inicialização de um nó Cassandra começará a demorar muito mais se você tiver muitas famílias de colunas. Isso também afetará a quantidade de memória que está sendo usada.
Portanto, essa quantidade de memória não será usada para caches de linha / chave e indexação. O desempenho pode diminuir ainda mais à medida que você continua adicionando famílias de colunas, dependendo do hardware específico de seus nós.
fonte