Sistema de armazenamento Apache Cassandra 3
O sistema de armazenamento Apache Cassandra 3 é um sistema de armazenamento de valor-chave distribuído de código aberto. Foi originalmente desenvolvido pelo Facebook para armazenar grandes quantidades de dados.
Principais características
1. Distribuído
A principal característica do Cassandra é que ele não é um banco de dados único, mas um serviço de rede distribuído composto por um grupo de nós de banco de dados. As operações de gravação no Cassandra são replicadas para outros nós, enquanto as operações de leitura são roteadas para um nó específico para leitura.
2. Estruturação baseada em colunas
Cassandra usa um modelo de dados baseado em colunas, semelhante ao BigTable do Google. Este modelo permite aos usuários armazenar e consultar dados conforme necessário, sem a necessidade de definir antecipadamente toda a estrutura de dados.
3. Alta elasticidade
Cassandra é altamente escalável e nós podem ser facilmente adicionados para expandir a capacidade do cluster sem reiniciar nenhum processo, alterar consultas de aplicativos ou migrar dados manualmente.
Recursos do Cassandra em comparação com outros bancos de dados
Cassandra é um banco de dados híbrido não relacional, semelhante ao BigTable do Google. Possui funções mais ricas que o Dynomite (sistema de armazenamento distribuído de valores-chave), mas seu suporte não é tão bom quanto o armazenamento de documentos MongoDB (entre um banco de dados relacional e um não-relacional). banco de dados relacional). Um produto de código aberto entre os bancos de dados relacionais, é o mais rico em recursos entre os bancos de dados não relacionais e é mais semelhante a um banco de dados relacional. A estrutura de dados suportada é muito flexível e tem um formato bjson semelhante ao json. pode armazenar tipos de dados mais complexos).
Cassandra foi originalmente desenvolvido pelo Facebook e mais tarde se tornou um projeto de código aberto. É muito adequado para necessidades de banco de dados em computação em nuvem social de rede. É baseado no Dynamo totalmente distribuído proprietário da Amazon e combina o modelo de dados baseado em família de colunas do Google BigTable. O armazenamento descentralizado P2P pode ser chamado de Dynamo 2.0 em muitos aspectos.
Comparado com outros bancos de dados, Cassandra possui os seguintes recursos excelentes:
1. Flexibilidade de esquema: Com Cassandra, assim como em um armazenamento de documentos, você não precisa determinar antecipadamente os campos de um registro. Você pode adicionar ou remover campos à vontade enquanto o sistema está em execução. Este é um enorme ganho de eficiência em grandes implantações.
2. Verdadeira escalabilidade: Cassandra é escalonável horizontalmente no sentido puro. Para adicionar mais capacidade ao cluster, basta apontar para outra máquina. Você não precisa reiniciar nenhum processo, alterar consultas de aplicativos ou migrar dados manualmente.
3. Identificação de vários data centers: você pode ajustar o layout do nó para evitar falhas em um data center. O data center de backup conterá pelo menos uma cópia completa de cada registro, garantindo a segurança dos dados.
Outras funções
Além dos principais recursos mencionados acima, Cassandra também oferece alguns outros recursos:
1. Consulta de intervalo: se não quiser realizar todas as consultas de valores-chave, você pode definir o intervalo de chaves a serem consultadas.
2. Estrutura de dados de lista: No modo misto, supercolunas podem ser adicionadas à estrutura de dados de cinco dimensões. Isso é muito conveniente para indexação por usuário.
3. Operações de gravação distribuídas: Cassandra permite ler ou gravar centralmente qualquer dado em qualquer lugar, a qualquer hora, sem nenhum ponto único de falha.
Resumir
Apache Cassandra 3 é um poderoso sistema de armazenamento de valor-chave distribuído de código aberto que oferece alta escalabilidade, flexibilidade de esquema e confiabilidade, tornando-o ideal para aplicativos que precisam armazenar e processar grandes quantidades de dados.