A Fundação Apache anunciou o lançamento do Cassandra 1.0, a primeira versão principal do popular banco de dados NoSQL open source, baseado em colunas e distribuído. O release introduz a compressão de dados e grandes melhorias em desempenho, entre outros avanços.
O Cassandra é construído sobre o modelo de dados orientado a colunas que é base dos projetos Dynamo da Amazon e BigTable do Google. Desenvolvido inicialmente pelo Facebook, que o liberou como código aberto em 2008, o projeto permanece em desenvolvimento pela comunidade open source desde então.
O Cassandra 1.0 suporta a compressão de dados por ColumnFamily (um "recipiente" de colunas similar a uma tabela de banco de dados relacional). O processo de compressão é executado em segundo plano, não tendo impacto negativo sobre o tempo de resposta. A compressão reduz o espaço ocupado pelos dados por um fator de 2 a 4 vezes, resultando em melhoria de desempenho indireta de 25-35% em leituras e 5-10% em escritas, de acordo com Pavel Yaskevich, da Datastax, empresa que desenvolve um produto comercial baseado no Cassandra e contribui para o projeto.
O desempenho tem sido foco de grandes melhorias entre as versões 0.6 e 1.0. De acordo com Jonathan Ellis, VP do projeto na Apache, em comparação com o release disponível nesta mesma data em 2010, foi aumentada a velocidade de escrita em 40% e em "fenomenais 400%" na leitura.
Outros avanços incluem:
- Melhorias no gerenciamento de memória através de caches fora do heap, alocação em arena e otimização automática. Os ganhos são na redução de pausas do coletor de lixo e em desempenho mais previsível.
- Gerenciamento de espaço em disco melhorado, especialmente com relação ao espaço ocupado por logs de commits, e com apagamento imediato de arquivos de dados obsoletos.
- Nova estratégia de compactação em níveis (leveled compaction), que traz desempenho mais previsível e garante um tamanho fixo para o SStable.
- Melhoria no recurso de Hinted Handoffs, reduzindo a necessidade de reparação de leituras.
- Melhorias de desempenho em muitas áreas, incluindo CQL, reparação e outras.
Comentários da comunidade
Ajuda-Modelo de Dados Cassandra
by Richiely Batista /
Ajuda-Modelo de Dados Cassandra
by Richiely Batista /
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
Olá pessoal,
meu nome é Richiely Batista, sou estudante de Ciências da computação pela Universidade Federal de Goiás pelo 6º período e estou participando da disciplina de Sistemas Distribuídos onde estamos com uma linha de pesquisa sobre o Apache Cassandra.
Gostaria de perguntar pra vocês alguma fonte de conhecimento sobre o modelo de dados do Cassandra. Qualquer coisa relacionada, artigo, dissertações, tópicos, forums de discussão, qualquer orientação útil, já serão muito bem vindos