Por que eu devo ler este artigo:

A SQL é uma linguagem de consulta estruturada utilizada nos bancos relacionais. Ela permite a definição de bancos de dados, sua manipulação e também a restrição de acesso a seus recursos. Seu leque de opções é bastante amplo. Neste artigo focaremos em facilidades que ela disponibiliza para realização de consultas.

Assim, este artigo descreve em exemplos práticos a eficiência da linguagem de consultas SQL, demonstrando formas diferentes de recuperar a informação nos bancos de dados do mercado. Estes exemplos serão úteis àqueles que pretendem extrair do banco de dados, por meio de consultas e subconsultas, os dados, aplicando diferentes técnicas para obter a informação desejada.

A linguagem SQL surgiu junto com os modelos de bancos de dados relacionais, e sua principal característica foi inspirada nas teorias matemáticas, mais precisamente na álgebra relacional.

Também conhecida como Structured Query Language, é uma linguagem de consulta estruturada, que foi desenvolvida nos laboratórios da IBM na década de 70. Esta linguagem tem como objetivo fazer consultas em tabelas de um banco de dados, e atualmente é usada em todos os bancos de dados relacionais do mercado.

Atualmente a linguagem SQL é usada em muitas aplicações espalhadas pelo mundo e sua função principal é buscar a informação armazenada nas tabelas dos databases, retornando assim em forma de texto o resultado dos dados que estão organizados nestas tabelas. As aplicações usam comandos SQL internamente para manipulação de dados em gráficos, relatórios, telas e principalmente em consultas.

Sendo assim, basicamente todo sistema de computação que armazena seus dados em um banco de dados relacional, possui consultas que usam algum comando SQL para buscar a informação. Atualmente, com o surgimento de outros tipos de armazenamento, como é o caso dos Big Data (veja o BOX 1), a linguagem SQL ganhou ainda mais poder, afinal a tecnologia Hadoop (veja o BOX 2) possui os componentes que interpretam comandos SQL para fazer pesquisas no mundo Big Data. Exemplos destes componentes são Hive e Pig.

BOX 1: Big Data

Big Data refere-se a uma tecnologia de armazenamento de dados em grande escala que tem como principais características o arquivamento de dados estruturais e dados pessoais/contextuais de uma forma não relacional.

BOX 2: Hadoop

Hadoop é uma plataforma desenvolvida na linguagem Java, que tem características o processamento de grande volume de dados. É um projeto originário da empresa Apache que tem como grande parceiro a empresa Yahoo em sua difusão. O Hadoop é considerado um tipo de tecnologia Big data que se caracteriza pela sua persistência e o seu processamento distribuído.

Em grandes organizações que possuem sistemas transacionais e sistemas de data warehouses, nos requisitos de conhecimentos dos analistas e desenvolvedores, ter em seus aprendizados a linguagem SQL é, sem dúvida, de suma importância no dia a dia. Afinal, desenvolver e manter aplicações em projetos que usam esta tecnologia, tem sido o grande desafio das empresas na área de tecnologia nos últimos anos.

A manipulação de dados que estão armazenados em databases pode ser infinita, e as formas de extrair estas informações precisa estar alinhada a uma boa performance. Afinal, em um sistema transacional, por exemplo, que usa seus processos para vendas em varejo, se analisarmos a demanda que ocorre no dia a dia, o fluxo pode ser muito grande. Uma consulta SQL que não está performática, pode tornar o tempo de resposta muito lento.

Em uma outra situação, por exemplo, um sistema Web, que é acessado por centenas de pessoas, se cada uma delas faz uma busca ou consulta neste site, esse número pode ser grande, e sendo assim este resultado pode ficar comprometido.

Em todos os projetos de software, logicamente que os DBAs e os analistas de infraestrutura estão atentos e disponibilizam recursos que podem ajudar e muito no tempo destas consultas, mas acima de tudo o desenvolvedor não pode deixar de se atentar para que estas consultas sejam bem escritas.

Quando o assunto é desempenho, as análises devem ser contínuas, e o fato da linguagem SQL possibilitar fazer a mesma consulta de várias formas, nem sempre a forma ideal é a forma que acaba sendo realizada no ambiente de produção.

Em aspectos de aperfeiçoamento, a linguagem SQL não é diferente das outras linguagens. A prática ...

Quer ler esse conteúdo completo? Seja um assinante e descubra as vantagens.
  • 473 Cursos
  • 10K Artigos
  • 100 DevCasts
  • 30 Projetos
  • 80 Guias
Tenha acesso completo