Um banco de dados SQL, também conhecido como banco de dados relacional, é um sistema que armazena e organiza dados em tabelas altamente estruturadas de linhas e colunas. Esses bancos de dados oferecem a linguagem de consulta estruturada (SQL) para ler e gravar os dados e são categorizados como sistemas de gerenciamento de banco de dados relacionais (RDBMS).
As instruções SQL são usadas para criar e atualizar a estrutura de tabelas, ler e gravar dados, gerenciar permissões de usuários e realizar tarefas administrativas. Por exemplo, uma instrução CREATE é usada para criar uma tabela, uma instrução INSERT adiciona uma nova linha a uma tabela e uma instrução SELECT executa uma consulta de banco de dados. As declarações que fazem mudanças estruturais ou administrativas geralmente são reservadas para desenvolvedores e administradores de software, enquanto as operações de leitura e gravação são realizadas por aplicativos de usuários finais.
Um banco de dados relacional mantém a capacidade de vincular informações em várias tabelas. Com esse formato, é fácil gerar insights rapidamente sobre as relações entre várias colunas ou pontos de dados nessas tabelas. Um banco de dados relacional pode criar índices para colunas específicas para consultas mais rápidas.
Por exemplo, uma instituição de saúde pode manter uma tabela com linhas de informações de pacientes, em que cada linha é um paciente e as colunas contêm pontos de dados, como o nome do paciente, informações de seguro e detalhes de contato. Pode haver uma segunda tabela que armazena informações de visitas. Um banco de dados relacional usa um ID exclusivo para cada linha para manter as informações do paciente vinculadas nas duas tabelas. Assim, você pode consultar rapidamente as visitas de cada paciente.
Inscreva-se em um teste gratuito para qualquer um dos bancos de dados SQL do Google Cloud, incluindo o AlloyDB, Cloud SQL e o Spanner.
O SQL (Structured Query Language) é uma linguagem de programação usada para armazenar, recuperar e gerenciar dados em um banco de dados relacional. As declarações de SQL são semelhantes ao inglês, tornando a linguagem acessível a desenvolvedores de software, analistas de dados e outros profissionais.
As empresas escolhem bancos de dados SQL por serem:
Há vários mecanismos (produtos) de banco de dados SQL usados para criar aplicativos de software. Alguns dos mais conhecidos são PostgreSQL, MySQL, SQL Server e Oracle. Alguns mecanismos de banco de dados são de código aberto, enquanto outros são ofertas comerciais.
O PostgreSQL é um banco de dados relacional de objetos (ORDBMS) de código aberto projetado para desempenho corporativo e valorizado pela confiabilidade e recursos robustos. Com uma longa história de desenvolvimento e o uso do SQL, ele é um dos bancos de dados de código aberto mais conhecidos do mundo.
A linguagem procedural padrão é uma extensão do pgSQL (PL/pgSQL), com extensões de linguagem procedural de Tcl, Perl e Python incluídas na distribuição padrão (escritas como PL/Tcl, PL/Perl e PL/Python). Muitas outras linguagens são compatíveis com extensões, incluindo Java, Ruby, C, C++, Delphi e JavaScript.
Para uma comparação mais detalhada, acesse nosso guia PostgreSQL x SQL.
O MySQL é um banco de dados relacional de código aberto criado em 1995 e atualmente patrocinado pela Oracle. Ele oferece suporte a consultas SQL e pode ser administrado por uma interface gráfica do usuário (GUI) ou uma linha de comando.
O MySQL pode ser implantado manualmente em uma máquina física ou por um provedor de serviços de nuvem. As empresas estão cada vez mais optando por serviços totalmente gerenciados para reduzir a carga de manutenção dos bancos de dados.
O SQL Server é um banco de dados da Microsoft que executa consultas SQL. Conheça as diferenças entre o PostgreSQL e o SQL Server.
Há muitos mecanismos de banco de dados não relacionais em uso comum, e muitos deles usam um formato não tabular para armazenar dados. Alguns deles aceitam consultas semelhantes a SQL, o que deu origem ao termo "NoSQL", que significa "Não apenas SQL".
Por que as organizações usam bancos de dados NoSQL não relacionais para alguns aplicativos, mas permanecem com os bancos de dados SQL relacionais para outros? A escolha do banco de dados certo geralmente se resume ao seu caso de uso. Veja quando usar SQL versus NoSQL.
Os bancos de dados SQL são excelentes para gerenciar dados relacionais estruturados e consultas complexas. Os bancos de dados SQL são compatíveis com ACID, o que os torna adequados para informações transacionais em que os dados são altamente estruturados. Por exemplo, os pedidos de venda são adequados para um banco de dados SQL, porque todos os pedidos contêm as mesmas colunas e a integridade é fundamental.
Em contraste, os bancos de dados NoSQL usam um formato não tabular para armazenar dados. Os dados podem ser documentos, pares de chave-valor, gráficos e qualquer outro formato que não se encaixe bem no modelo relacional. Por exemplo, um site é uma boa opção para um banco de dados de documentos, já que páginas diferentes podem ter estruturas diferentes.
Confira alguns exemplos de casos de uso do SQL:
Ao contrário dos bancos de dados SQL, os bancos de dados NoSQL não precisam gerenciar relações de dados complexas e indexação extensa, então eles geralmente são altamente escalonáveis e oferecem desempenho consistente. Os bancos de dados NoSQL geralmente são implementados com arquiteturas de escalonamento horizontal, em que o banco de dados pode adicionar nós automaticamente sempre que houver necessidade de capacidade adicional.
Essas propriedades dos bancos de dados NoSQL os tornam ideais para aplicativos que exigem grande escala e alterações frequentes de dados. Como o banco de dados não tem relações de dados complexas para manter, adicionar nós tem pouco ou nenhum impacto no desempenho da consulta.
Os usos comuns de NoSQL incluem:
Leia mais sobre bancos de dados NoSQL.
Comece a criar no Google Cloud com US$ 300 em créditos e mais de 20 produtos do programa Sempre gratuito.