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)