Pergunte a opinião de oito pessoas diferentes e você obterá oito respostas diferentes. O projeto de código aberto Apache Cassandra é construído e mantido por uma coleção de indivíduos que chegam com suas próprias motivações. Alguns adoram novos recursos. Alguns adoram extrair todo o desempenho possível do sistema. Alguns querem facilitar a vida dos operadores. O que os une? Eles estão trabalhando como uma equipe distribuída em direção a um único objetivo: um banco de dados incrível que está cada vez melhor.
Cassandra é um esforço colaborativo de engenheiros de diferentes partes do mundo que compartilham um objetivo comum de criar o melhor produto possível. Eles resolvem problemas para seus empregadores enquanto contribuem com o código -fonte aberto do projeto. Aqueles que ganham a confiança da comunidade e podem fazer alterações no código base são chamados de “committers”. Tornar-se um committer requer dedicação e paixão pelo projeto. Recentemente, o projeto realizou um evento chamado
Haddad nos diz que está ansioso para oferecer suporte ao Java 17 e seus coletores de lixo de baixa latência como o ZGC no Cassandra 5.0. O ex-desenvolvedor da Netflix e da Apple, que é um committer do Cassandra desde 2017, diz que esses coletores fornecerão tempos de pausa abaixo de um milissegundo e um modelo "definir e esquecer", tornando o gerenciamento de memória menos opressor para os usuários do Cassandra. À medida que o projeto amadurece e o gerenciamento de memória fica ainda melhor, haverá melhorias na duração e na frequência das pausas do GC, facilitando a execução de nós mais densos, o que economizará dinheiro para os usuários.
“Isso significa que veremos pausas de GC menos frequentes — e, quando acontecerem, levarão menos tempo. Isso facilitará a execução de nós mais densos, o que significa que a execução do cluster será mais barata. Adoro a ideia de economizar dinheiro apenas fazendo um upgrade.”
De la Peña , um engenheiro de software DataStax e um committer Cassandra desde 2016, está entusiasmado com o recurso de mascaramento de dados dinâmicos no Cassandra 5.0, que permite que informações confidenciais sejam obscurecidas enquanto ainda permite o acesso às colunas mascaradas. Esse recurso substitui os valores reais das colunas por dados genéricos usando uma série de funções SQL regulares que transformam os valores das células. Os administradores podem anexar essas funções de mascaramento às colunas do esquema da tabela, para que os usuários sem privilégios sempre vejam os dados mascarados, mesmo que não especifiquem as funções na consulta. O conjunto de funções de mascaramento disponíveis é relativamente pequeno no momento, mas os usuários podem usar suas próprias funções definidas pelo usuário para mascaramento, facilitando a adição de tipos personalizados de mascaramento.
“É um recurso de anonimização de segurança que está disponível em muitos bancos de dados por aí
e está muito atrasado em Cassandra.
Chella, líder sênior de engenharia da Netflix e committer desde 2019, está entusiasmada com os novos recursos do Cassandra 5.0 que fornecem mais proteções para desenvolvedores, melhoram a estabilidade e aprimoram a experiência operacional. A introdução de proteções no Cassandra 4.1 permitiu limites flexíveis e rígidos nas ações do usuário, e o Cassandra 5.0 adiciona várias novas proteções para aumentar a confiabilidade, a disponibilidade e a experiência do usuário. Essas proteções codificam as práticas recomendadas e evitam erros catastróficos, como a eliminação de espaços de chave críticos para a produção ou a perda de dados.
“Essas grades de proteção certamente ajudam a evitar muitos desses momentos de 'oops'.”
Semb Weaver, um committer do Cassandra desde 2016 e arquiteto principal da DataStax, aprecia como o Cassandra 5.0 incorpora o “código aberto real”, por ter vários fornecedores, empresas e funcionários por trás de seus colaboradores. Isso cria uma comunidade de desenvolvimento diversificada com um rico conjunto de recursos e aplicativos e enfatiza a importância da higiene da engenharia, construindo QA e CI para melhorar a confiança e habilitar recursos radicais. Ele diz que esses princípios e práticas levarão a uma maior longevidade, sustentabilidade e modernização da tecnologia, além de incentivar a diversidade e a colaboração na comunidade.
“É o que permite alguns dos recursos radicais que estão chegando no 5.0 – coisas como o Accord – que não podemos ultrapassar a linha de chegada se não estivermos todos trabalhando juntos como uma equipe.”
West, um engenheiro de software sênior da Netflix e um Cassandra Committer desde 2020, está entusiasmado com a forma como as melhorias no Cassandra 5.0 levarão a uma melhor confiabilidade e desempenho, o que resultará em mais sono para ele como engenheiro de plantão. Ele destaca o novo recurso de metadados transacionais e as memtables aprimoradas que permitirão mais gravações mais rapidamente. Ele também descreve como as novas tabelas virtuais, diagnósticos e métricas fornecerão mais informações sobre Cassandra e ajudarão a resolver incidentes mais rapidamente.
“Eu sei que com o Cassandra 5.0 [que] quando vou para a cama, é menos provável que eu acorde – e quando eu acordo, vou resolver nossos problemas mais rapidamente e voltar para a cama mais rápido.”
Um engenheiro DataStax que tem sido um committer desde 2020, Dimitrova está ansiosamente antecipando a implementação do protocolo Accord pela comunidade. Esse protocolo permitirá um consenso global e permitirá que as transações ACID sejam realizadas em escala, tornando os desenvolvedores mais eficientes sem comprometer o desempenho ou a escalabilidade. O consenso global é crucial em coisas como transferências bancárias; as garantias de simultaneidade garantem que apenas um processo possa fazer alterações por vez. A nova sintaxe que estamos criando para desenvolvedores incluirá declarações de transação de início e confirmação, que permitem que todas as operações dentro da declaração sejam totalmente compatíveis com ACID.
Poland, um líder de tecnologia da DataStax que se tornou um committer em 2021, gosta dos benefícios da estratégia de compactação unificada (UCS) do Cassandra 5.0, que combina antigas estratégias de compactação herdadas, como CT, estratégias de compactação em camadas e de nível. O UCS é uma estratégia de compactação significativamente mais rápida que reduziu a sobrecarga de espaço e permite o paralelismo. A estratégia também possui um fator de dimensionamento que pode ser ajustado para cargas de trabalho específicas, sejam elas de leitura intensa ou de gravação intensa, ou ambas. Não há necessidade de saber como as estratégias legadas funcionam e não há sobrecarga para migrar para o UCS.
“Se você precisa que seja pesado para escrever, pode ajustá-lo para isso; se você precisar que ele seja pesado para leitura, pode sintonizar isso; e se você quiser apenas algo intermediário, funciona bem para qualquer que seja sua carga de trabalho.
Lerer tornou-se um committer há oito anos. O líder técnico da DataStax observa que o índice secundário de armazenamento anexado (SASI) foi adicionado em 2016, mas não foi investido o suficiente e teve que ser comercializado experimentalmente no Cassandra 4.0, pois não atendia aos padrões desejados. O SAI foi construído sobre o SASI e possui seu próprio conjunto de inovações, incluindo a capacidade de indexar várias colunas sem problemas de escalabilidade e otimização para uso de espaço e consultas numéricas.
“O SAI permitirá um novo conjunto de recursos de consulta, sem as desvantagens da indexação secundária ou SASI”.
Lambov, um engenheiro da DataStax que é committer do Cassandra desde 2015, está entusiasmado com a capacidade de armazenamento local no Cassandra 5.0. A mudança gira em torno do memtable, que é uma área de armazenamento temporário na memória do computador onde os dados são armazenados antes de serem gravados em um armazenamento mais permanente. O objetivo da nova implementação é facilitar o uso de diferentes tipos de memtables e selecionar o melhor para cada caso de uso específico. Uma das novas implementações é baseada em um
Explorar um projeto de código aberto bem-sucedido é uma jornada cativante, tanto do ponto de vista humano quanto tecnológico. Embora a tecnologia possa ser o foco inicial de um projeto de software, são as pessoas envolvidas que o tornam verdadeiramente fascinante. Cada pessoa traz suas emoções e desejos únicos para a mesa, o que pode resultar em resultados positivos ou negativos. Em um projeto de código aberto, os desejos dos indivíduos de melhorar algo são expostos e abertos a críticas. No entanto, é na determinação de trabalhar juntos e seguir em frente que a verdadeira magia do projeto acontece.
Quais recursos você espera do Cassandra 5.0? Pessoalmente, estou entusiasmado com as melhorias do desenvolvedor que mudarão o jogo, como transações ACID, novos esquemas de indexação e nova sintaxe como o operador NOT. Como um committer do Cassandra, gosto de ver os desenvolvedores usarem esses novos recursos e criarem coisas incríveis. Se você não verifica Cassandra há algum tempo, agora é um bom momento para fazê-lo. Junte-se ao resto da comunidade de usuários em
Publicado também aqui .