Sistemas de código aberto (open source) e de uso gratuito (parte 5)

Nos posts anteriores vimos as partes 1, 2, 3 e 4 de um resumo de soluções de software gratuitas, livres e/ou de código aberto bem conhecidas no mercado, com as quais tive a oportunidade de trabalhar ou de ter algum tipo de contato. Nesta parte 5, vamos conhecer outras 15 soluções bem populares na comunidade tech e muito utilizadas por aí.

Para começar este post decidi falar de um sistema gerenciador de banco de dados relacional muito importante no mundo da tecnologia, que ajudou a popularizar os sistemas web e contribuiu significativamente com o desenvolvimento de muitas soluções open source, inclusive, várias citadas nestes posts sobre sistemas de código aberto e de uso gratuito, o MySQL.

Logotipo do MySQL
Logotipo do MySQL

Nome da solução: MySQL e MariaDB
Tipo: sistema de gerenciamento de banco de dados (DBMS / Database Management System)
Descrição: o MySQL é uma solução de gerenciamento de bancos de dados relacional open source criado em 1995, na Suécia, por um grupo de programadores e cientistas da computação, que passou a ser amplamente utilizado por empresas de todo o mundo, incluindo a NASA, HP, Nokia, Sony, Lufthansa e muitas outras, principalmente pelo fato de ser integrado a tecnologias Web, como a linguagem PHP. Em 2008, o MySQL foi adquirido pela então Sun Microsystems, posteriormente adquirida pela Oracle, em 2010. Após essa aquisição, um dos fundadores do MySQL anunciou o MariaDB, um fork (bifurcação), também open source, do MySQL, com foco em desempenho, segurança e compatibilidade. O MySQL, hoje desenvolvido e mantido pela Oracle, possui uma versão em nuvem específica para a execução de transações, análises em tempo real (data warehouse e data lakes) com IA generativa e machine learning, o MySQL HeatWave.
Site oficial: https://www.mysql.com e https://mariadb.org
> O conjunto de soluções Linux, Apache, MySQL/MariaDB e PHP (LAMP) formam uma stack muito famosa do mundo da tecnologia que é responsável pela arquitetura de muitas soluções de software, incluindo várias citadas nestes posts sobre softwares livre / de código aberto.

Nome da solução: phpMyAdmin
Tipo: solução para administração do MySQL e MariaDB
Descrição: sistema Web livre e open source para administração de bancos de dados MySQL e MariaDB criado em 1998. Através da sua interface, desenvolvida em PHP, é possível criar e remover bases de dados, criar, remover e alterar tabelas, inserir, remover e editar campos e registros, além de permitir a execução de códigos SQL. O phpMyAdmin se tornou muito popular, especialmente entre programadores Web e em soluções de hospedagens de sites e sistemas Web, devido a sua construção e integração com o Linux e o Apache. Sua gestão é realizada via interface web.
Site oficial: https://phpmyadmin.net
> Aqui está um link interessante sobre a instalação do PMA.

Nome da solução: Apache Kafka
Tipo: sistema de processamento de fluxo (stream processing)
Descrição: plataforma distribuída de transmissão de dados que pode publicar, subscrever, armazenar e processar fluxos de registro em tempo real. O Kafka é uma solução para o conceito de mensageria, ou seja, para processar fluxos de dados provenientes de diversas fontes (como aplicativos distribuídos) e entregá-los a vários clientes (broker), possibilitando movimentar grandes volumes de dados através de um publisher (remetente), que classifica a mensagem (tópico ou fila), e um subscriber (receptor), que assina para receber as mensagens classificadas. Sua gestão é realizada via linha de comando, porém, é possível utilizar o Kafka-UI, uma aplicação open source para monitorar e gerenciar clusters do Apache Kafka através de uma interface web.
Site oficial: https://kafka.apache.org
> Aqui está um link interessante sobre a instalação e configuração do Kafka.

Nome da solução: RabbitMQ
Tipo: sistema de fila de mensagens (message broker)
Descrição: sistema de mensageria open source para processar fluxos de dados provenientes de diversas fontes (como aplicativos distribuídos), ou seja, permitir a comunicação assíncrona entre diferentes sistemas, semelhante ao Apache Kafka. O RabbitMQ utiliza o AMQP (Advanced Message Queuing Protocol), um protocolo de camada de aplicação (Modelo OSI – Camada 7) de padrão aberto, para middleware orientado a mensagens. O RabbitMQ é mantido pela Broadcom. Sua gestão é realizada via interface web.
Site oficial: https://rabbitmq.com
> Aqui está o link oficial para a instalação do RabbitMQ.

Nome da solução: Apache Hadoop
Tipo: sistema de arquivos distribuídos
Descrição: solução open source para processamento distribuído de grandes volumes de dados (Big data) em clusters de computadores, principalmente para processamento em lote, ou seja, para lidar com grandes conjuntos de dados que são processados em blocos, geralmente offline. Usa um sistema de arquivos próprio, o Hadoop Distributed File System (HDFS), permitindo o armazenamento de dados distribuídos em várias máquinas e sendo eficiente para analisar grandes volumes de dados históricos, como logs ou bancos de dados, onde a velocidade imediata não é fundamental.
Site oficial: https://hadoop.apache.org

Nome da solução: Apache Spark
Tipo: plataforma para computação distribuída
Descrição: solução open source de processamento de dados em grande escala (Big data) otimizada para computação distribuída, ou seja, para que o processamento seja realizado por vários computadores conectados e que trabalham em conjunto, tornando o sistema mais escalável, eficiente e tolerante a falhas. O Spark é uma solução que oferece tanto processamento em lote quanto processamento em tempo real (streaming), sendo mais rápido que o Hadoop por utilizar processamento em memória, tornando-o mais eficiente para workloads que precisam de respostas rápidas e para tarefas complexas, como machine learning.
Site oficial: https://spark.apache.org

Os grandes provedores de Cloud possuem suas próprias soluções de Big Data, ou seja, estratégias e tecnologias para a manipulação de grandes volumes de dados (que não podem ser processados de maneira eficiente por técnicas tradicionais), incluindo soluções de gestão para o Apache Hadoop e Apache Spark, como é o caso do Oracle Data Flow, o Amazon EMR, o Google Dataproc e o Microsoft Azure HDInsight

Nome da solução: Nginx
Tipo: servidor web (HTTP server)
Descrição: servidor open source para páginas web de alto desempenho, que pode lidar de maneira eficiente com uma garnde quantidade de conexões simultâneas. Criado pelo russo Igor Sysoev, em 2004, o Nginx que também é amplamente utilizado como proxy reverso, balanceador de carga HTTP e streaming, foi adquirido pela F5 em 2019. Junto do Apache e do IIS, da Microsoft, é um dos servidores HTTP mais utilizados do mundo.
Site oficial: https://nginx.com
> Aqui está um link interessante para a instalação e configuração do Nginx.

Nome da solução: Prometheus
Tipo: sistema de monitoramento de eventos e alertas
Descrição: ferramenta open source para monitoramento e alerta que tem como principal objetivo o de coletar e armazenar (em banco de dados) métricas de aplicativos e da infraestrutura de tecnologia, permitindo auxiliar em estratégias de observabilidade. O Prometheus, inicialmente desenvolvido na SoundCloud, ainda em 2012, hoje é um projeto CNCF (Cloud Native Computing Foundation) da Linux Foundation. Sua gestão é realizada via interface web.
Site oficial: https://prometheus.io
> Aqui está o link oficial para a instalação do Prometheus.

Nome da solução: Grafana
Tipo: aplicativo de análise e visualização de dados
Descrição: plataforma open source interativa para visualização de métricas e monitoramento, que pode ser integrada a diversas fontes de dados, como sistemas de monitoramento de eventos e alertas, como o Zabbix e o Prometheus, clusters Kubernetes e vários serviços em nuvem. A interface do Grafana é altamente personalizável, contando com recursos para compartilhamento de painéis (tabelas e gráficos diversos), gestão de alertas, plugins e gestão de usuários. A Grafana Labs, responsável pelo Grafana, oferece também uma série de produtos comerciais relacionados a observabilidade. Sua gestão é realizada via interface web.
Site oficial: https://grafana.com
> Aqui está o link oficial para a instalação do Grafana.

Nome da solução: Metabase
Tipo: aplicativo de análise e visualização de dados
Descrição: ferramenta open source de interface amigável para visualização de dados bem conhecida no mercado de business intelligence. Assim como o Grafana, o Metabase também pode ser integrado a diversas fontes de dados, permitindo realizar a análise de dados de sistemas e aplicativos em uma interface simples e centralizada, que permite a criação de painéis (dashboards), com recursos de compartilhamento e gestão de usuários. Sua gestão é realizada via interface web.
Site oficial: https://metabase.com
> Aqui está um link interessante para a instalação do MB.

Nome da solução: Kanboard
Tipo: gerenciador de projetos (PM / Project Management)
Descrição: sistema open source de gestão de projetos baseado no método Kanban (criado pela Toyota na década de 60). Com uma interface bastante simples e minimalista, o sistema permite realizar o controle de tarefas através do status do seu andamento (quadro Kanban), que exibe o status atual de um projeto de maneira lúdica, sem a necessidade de nenhum tipo de explicação ou treinamento. Sua gestão é realizada via interface web.
Site oficial: https://kanboard.org
> Aqui está o link oficial para a instalação do Kanboard.

Nome da solução: Rocket.Chat
Tipo: plataforma de comunicação
Descrição: plataforma de comunicação com suporte a chat, videoconferências, integrações com ferramentas externas, como o Slack, Microsoft Teams e WhatsApp (comunicação omnichannel), e diversas funcionalidades para automação de tarefas. Criado pelo  brasileiro Gabriel Engel, o Rocket.Chat possui versões comerciais e versão open source (self-hosted). Sua gestão é realizada via interface web.
Site oficial: https://pt-br.rocket.chat/platform/open-source
> Aqui está o link oficial para a instalação do Rocket.Chat.

Nome da solução: OpenWRT
Tipo: sistema operacional embarcado
Descrição: sistema operacional baseado em Linux embarcado (firmware) para roteadores, principalmente para dispositivos de rede sem fio (como roteadores e pontos de acesso), que tem o objetivo de fornecer funcionalidades avançadas e personalização completa a equipamentos (desde que compatíveis) que, originalmente, podem ser limitados com seu software original. Sua gestão é realizada via interface web.
Site oficial: https://openwrt.org
> Aqui está o link oficial para a instalação do OWRT em um TP-Link wireless router.

Nome da solução: vTiger
Tipo: sistema de gestão de relacionamento com clientes (CRM / Customer Relationship Management)
Descrição: sistema de gestão de relacionamento com clientes com módulos para vendas, suporte ao cliente (leads e contatos), automação de marketing, gestão de projetos, help desk e colaboração interna. Possui versões comerciais, versão community edition (CE) e open source (self-hosted). Sua gestão é realizada via interface web.
Site oficial: https://www.vtiger.com/open-source-crm
> Aqui está o link oficial para instalação do vTiger.

Nome da solução: phpBB
Tipo: sistema gerenciador de fóruns
Descrição: sistema open source de quadro de avisos, mais conhecido como fóruns (ou até mesmo BBS / Bulletin Board System), que permite gerir comunidades (grupos de usuários) e realizar a publicação de informações e arquivos de maneira categorizada, como de interesses comuns (públicos) ou específicos (privados). A primeira versão do phpBB foi lançada no início dos anos 2000, época que a Internet ainda era dominada por este tipo de espaço (fóruns), considerado por alguns como as primeiras redes sociais, e outros sistemas de comunicação/mensagens, como o IRC, o ICQ e o MSN Messenger. Sua gestão é realizada via interface web.
Site oficial: https://www.phpbb.com
> Aqui está o link oficial para instalação do phpBB.

Nos próximos posts veremos outras soluções gratuitas e/ou open source* conhecidas no mercado de tecnologia, como o MidPoint, PortainerAsterisk, aaPanel, Heimdall, Rustdesk, LimeSurvey, Bacula, Netbird, Shlink e outros.

Nem todas as soluções descritas neste post são realmente open source, ou seja, com código-fonte aberto e uso livre. Algumas podem ser apenas gratuitas, limitadas ao uso em ambientes domésticos ou oferecidas em versões community (comunidade), que disponibilizam parte do seu sistema de maneira gratuita e uma alternativa mais completa e/ou com suporte dedicado em uma versão comercial. Além disso, é importante destacar que existem várias licenças de código aberto, como a GPL (General Public License), MIT e Apache, cada uma tendo suas próprias condições e restrições. Por fim, vale ressaltar que, mesmo sendo open source e gratuitas, muitas destas soluções podem exigir algum tipo configuração manual, que demanda conhecimento técnico especializado, além de recursos computacionais próprios para sua hospedagem e utilização.

Gostou dest post? Então não deixe de conferir A história da Internet: uma linha do tempo sobre a origem e evolução da maior revolução tecnológica do mundo e A tecnologia e sua sopa de termos, sigas e abreviaturas.

*Com informações dos sites oficiais das ferramentas e soluções citadas neste post.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.