DEV Community

Cover image for Da mudança do Redis surge o Valkey defendendo o Open Source
Thiago Machado
Thiago Machado

Posted on

Da mudança do Redis surge o Valkey defendendo o Open Source

Recentemente, o Redis, um dos principais provedores de soluções de armazenamento de dados em memória e broker, anunciou uma mudança significativa em sua abordagem de licenciamento. Migrando da Licença BSD de 3 Cláusulas(3-Clause BSD) para um modelo de licença dupla, oferece agora a Redis Source Available License versão 2 (RSALv2) ou a Server-Side Public License versão 1 (SSPLv1).

Essa decisão causa ressonância na comunidade de desenvolvedores, lembrando a transição do MySQL para o MariaDB após a aquisição do MySQL pela Oracle.

Do que se tratam as licenças ?

A RSALv2 restringe a oferta de serviços gerenciados sem compartilhar modificações, impedindo grandes corporações de usar o software sem contribuir de volta. A SSPLv1, mais restritiva, exige que serviços que usam o software e são oferecidos ao público compartilhem o código-fonte completo, promovendo um ecossistema de software livre mais robusto e transparente. Ambas visam proteger o investimento comunitário e incentivar a colaboração.

Aquisições Históricas: MySQL e MariaDB

A história do MySQL e do MariaDB é um exemplo emblemático de como uma comunidade pode responder a mudanças corporativas que poderiam limitar a liberdade de um software open source. Quando a Oracle adquiriu o MySQL, havia uma preocupação legítima de que a nova gestão pudesse restringir o desenvolvimento open source da plataforma. Em resposta, a comunidade, liderada por um dos fundadores originais do MySQL, Michael "Monty" Widenius, iniciou o projeto MariaDB como um fork do MySQL.

Licenças do MySQL

O MySQL usa uma abordagem de licenciamento dual, dependendo do uso que será feito do software:

  • GNU General Public License (GPL) versão 2: Para a maioria dos usuários, o MySQL é disponibilizado sob a GPL versão 2. Esta é uma licença de software livre que permite que os usuários modifiquem e compartilhem o software, desde que suas modificações e software derivado também sejam distribuídos sob a GPL. O uso sob a GPL é adequado quando o MySQL é usado em aplicações também licenciadas de maneira compatível com a GPL, ou quando não se necessita de distribuição do software modificado.

  • Licença Comercial: Para empresas que não querem liberar o código-fonte de suas aplicações que incorporam MySQL ou que usam MySQL de maneira que não seja compatível com a GPL, a Oracle (que adquiriu o MySQL em 2010) oferece uma licença comercial. Isso permite o uso do MySQL em aplicações proprietárias.

Licenças do MariaDB

O MariaDB, por outro lado, é oferecido sob a GPL versão 2, mas com a garantia de que continuará sendo oferecido sob uma licença de software livre:

  • GNU General Public License (GPL) versão 2: A fundação MariaDB garante que todas as versões do MariaDB permaneçam livres e abertas sob a GPL versão 2. Isso assegura que, ao contrário do MySQL, não haverá uma opção de licença comercial que restrinja como o código pode ser usado ou modificado. O MariaDB é, portanto, mais alinhado com os princípios tradicionais do software livre/open source em comparação ao MySQL pós-aquisição pela Oracle.

Essas diferenças refletem as distintas filosofias por trás de cada projeto: enquanto o MySQL pode ser usado em aplicações proprietárias sob sua licença comercial, o MariaDB se mantém estritamente dentro dos limites do open source sob a GPL.

Sistema Licença Categoria Descrição
Redis RSALv2, SSPLv1 Restricted Restrições para uso em serviços gerenciados e exigência de compartilhamento de código em certos contextos, menos permissiva para uso comercial.
MySQL GPL v2, Licença Comercial Restricted GPL v2 permite uso aberto mas com restrições de compatibilidade, Licença Comercial necessária para aplicações proprietárias.
Valkey BSD 3-Clause Open Source Muito permissiva, permite uso e modificação sem restrições significativas.
MariaDB GPL v2 Open Source Permissiva dentro dos padrões open source, exige que alterações e distribuições permaneçam open source, mas sem restrições comerciais adicionais.

Melhorias e Continuidade Open Source

MariaDB continuou a evoluir, ouvindo e se alinhando com as expectativas da comunidade open source:

  • Desenvolvimento Ativo: MariaDB tem recebido atualizações regulares que introduzem novas funcionalidades, mantendo-se sempre à frente das necessidades dos desenvolvedores.
  • Compatibilidade com MySQL: Inicialmente, MariaDB foi feito para ser totalmente compatível com MySQL, garantindo que os usuários pudessem mudar de um sistema para outro sem problemas.
  • Inovações: MariaDB introduziu várias inovações, incluindo motores de armazenamento avançados como Aria e TokuDB, que oferecem melhor desempenho e funcionalidades.

MySQL, sob gestão da Oracle, também continuou a desenvolver-se, garantindo que a tecnologia não fosse eclipsada pela sua contraparte open source:

  • Melhoria na Performance: As versões recentes de MySQL oferecem melhorias significativas no desempenho e na segurança.
  • Funcionalidades Empresariais: Incorporação de características orientadas para o empresariado, como a replicação baseada em grupo e melhorias na segurança. Ambos os projetos têm prosperado, garantindo que a tecnologia MySQL original mantenha-se relevante e útil, tanto em formas open source como em variantes comerciais.

A Reação da Comunidade

Valkey é visto como um Farol de Esperança em resposta à mudança do Redis, liderado pela Linux Foundation com apoio de grandes empresas como a Amazon e a Google.

As mudanças nas licenças do Redis e o surgimento de projetos como Valkey são lembretes vitais de que o ecossistema de software é dinâmico e requer uma vigilância constante. Como engenheiro que acompanhou várias transições no mundo do open source, vejo esses movimentos como essenciais para o equilíbrio entre inovação aberta e o direito de os criadores e colaboradores serem justamente recompensados. Nesse caso, pelo histórico, todos ganham.

A história nos mostra que a comunidade de código aberto é resiliente e adaptativa. Projetos como o Valkey não são apenas respostas a mudanças imediatas, mas também um investimento no futuro da tecnologia open source, garantindo que ela permaneça sustentável, inclusiva e inovadora. Como a evolução do MySQL para o MariaDB, ou a aquisição positiva da Java pela Sun Microsystems, a trajetória do Redis pode muito bem ser um catalisador para novas ideias e melhores práticas em open source.

Alternativas

Apache Cassandra [https://cassandra.apache.org]
Amazon DynamoDB [https://aws.amazon.com/pt/dynamodb/]
Apache Ignite [https://ignite.apache.org/]
Azure Cosmo DB[https://azure.microsoft.com]
Dragonfly [https://www.dragonflydb.io/redis-alternative]
KeyDB [https://docs.keydb.dev/]
Memcached [https://memcached.org/]
Valkey [https://valkey.io]

Referências

Valkey - Linux Foundation Launches Open Source Community [https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community]
Valkey - Github [https://github.com/valkey-io/valkey]
Anúncio oficial do Redis [https://redis.io/blog/what-redis-license-change-means-for-our-managed-service-providers/]
Docker hub(UNSTABLE) [https://hub.docker.com/r/valkey/valkey]
Licença RSALv2 [https://redis.io/legal/rsalv2-agreement/]
Licença SSPLv1 [https://redis.io/legal/server-side-public-license-sspl/]
Why AWS, Google and Oracle are backing the Valkey Redis fork [https://techcrunch.com/2024/03/31/why-aws-google-and-oracle-are-backing-the-valkey-redis-fork/]
Redis is no longer open source as of yesterday [https://www.reddit.com/r/selfhosted/comments/1bkhky1/fyi_redis_is_no_longer_open_source_as_of_yesterday/]
MySQL-MariaDB history talk [https://mariadb.org/wp-content/uploads/2019/11/MySQL-MariaDB-story.pdf]
Acquisition of Sun Microsystems by Oracle [https://en.wikipedia.org/wiki/Acquisition_of_Sun_Microsystems_by_Oracle_Corporation]

Top comments (0)