Se você está entrando no mundo de Dados ou DevOps, existe uma habilidade que é praticamente um pré-requisito universal: saber falar com o banco de dados. E a língua oficial desse universo é o SQL.
Não importa se você está construindo uma aplicação em Kubernetes, otimizando queries em um pipeline de dados ou analisando logs de infraestrutura, o SQL estará lá.
Neste post, vamos entender o que é o SQL, como ele funciona e ver exemplos práticos utilizando o PostgreSQL, um dos bancos de dados de código aberto mais robustos e populares do mercado.
O que é SQL?
SQL significa Structured Query Language (Linguagem de Consulta Estruturada). Ao contrário de linguagens de programação como Python, Go ou Java, o SQL é uma linguagem declarativa.
💡 Em suma: Em linguagens imperativas, você diz como o computador deve fazer algo. No SQL, você diz apenas o que você quer, e o motor do banco de dados (SGBD) se vira para descobrir a forma mais eficiente de te entregar o resultado.
O SQL é utilizado para interagir com Bancos de Dados Relacionais. Esses bancos organizam as informações em tabelas (compostas por linhas e colunas), que se relacionam entre si.
Por que usar o PostgreSQL como exemplo?
O PostgreSQL (ou simplesmente Postgres) é conhecido como o banco de dados relacional de código aberto mais avançado do mundo. Ele é extremamente aderente aos padrões oficiais do SQL, suporta cargas de trabalho massivas, possui excelente integração com ecossistemas DevOps e é a escolha padrão de milhares de empresas globais.
Os 4 Pilares do SQL (O famoso CRUD)
A interação com o banco de dados gira em torno de quatro operações básicas, que no SQL são traduzidas por comandos muito intuitivos. Vamos criar um cenário prático: um sistema de cadastro de servidores de infraestrutura.
1. Criando a Tabela (DDL – Data Definition Language)
Antes de inserir dados, precisamos definir a estrutura da nossa tabela.
CREATE TABLE servidores (
id SERIAL PRIMARY KEY,
nome VARCHAR(100) NOT NULL,
ip_publico VARCHAR(45) UNIQUE,
vcpus INT,
memoria_gb INT,
status VARCHAR(20) DEFAULT 'ativo'
);
2. Inserindo Dados (INSERT)
Com a tabela pronta, vamos alimentar o banco com alguns servidores de teste.
INSERT INTO servidores (nome, ip_publico, vcpus, memoria_gb)
VALUES
('prod-app-01', '192.168.1.10', 4, 16),
('prod-db-01', '192.168.1.11', 8, 32),
('staging-api', '192.168.1.50', 2, 8);
3. Consultando os Dados (SELECT)
Essa é a parte onde o SQL brilha. Podemos filtrar, ordenar e extrair exatamente o que precisamos.
- Consulta simples (trazer tudo):
SELECT * FROM servidores;
Consulta com filtro (Apenas servidores robustos, com mais de 4 vCPUs):
SELECT nome, ip_publico FROM servidores
WHERE vcpus > 4;
4. Atualizando e Deletando (UPDATE e DELETE)
Na rotina de DevOps ou administração de dados, atualizar o estado dos componentes é constante.
- Alterando o status de um servidor específico:
UPDATE servidores
SET status = 'manutencao'
WHERE nome = 'staging-api';
Removendo um registro:
DELETE FROM servidores
WHERE nome = 'staging-api';
Dica de ouro: Nunca esqueça o WHERE em um UPDATE ou DELETE, a menos que queira apagar o banco inteiro e testar o seu backup!)
SQL no ecossistema DevOps e Dados
Por que você deve dominar isso se o seu foco é DevOps ou Engenharia de Dados?
- Observabilidade: Ferramentas de monitoramento como Grafana e Prometheus utilizam variações de SQL (ou integrações diretas) para extrair métricas de bancos relacionais.
- Infraestrutura como Código (IaC): Automatizar o deploy de um cluster PostgreSQL via Terraform ou Helm Charts exige que você entenda como o banco gerencia conexões, storages e permissões de usuários via SQL.
- Pipelines de ETL/ELT: Ferramentas modernas de transformação de dados (como o dbt) utilizam SQL puro para transformar gigabytes de dados brutos em insights de negócios dentro de Data Warehouses.
Conclusão
O SQL não é apenas uma tecnologia dos anos 70 que sobreviveu ao tempo; ele é a fundação de como o ecossistema de tecnologia moderno lida com dados estruturados. Aprender a sintaxe básica é rápido, mas dominar a otimização de queries e a modelagem de dados é o que diferencia um profissional comum de um especialista de alto nível.
No próximo post da nossa seção de SQL, vamos entender o que são JOINs e como conectar tabelas diferentes no PostgreSQL. Fique ligado!
Gostou do artigo? Deixe nos comentários qual ferramenta você usa hoje para gerenciar suas queries SQL (DBeaver, pgAdmin, CLI)!