O que é Banco de Dados?
- #Banco de dados relacional
Estamos vivendo a era da hiperconectividade, em que o uso de redes sociais, aplicativos de mensagens de texto e vídeo, aplicativos bancários, são apenas alguns exemplos de iterações que foram digitalizados, e que estão produzindo cada vez mais dados. Esses dados, em sua maioria, precisam ser armazenados, para que os serviços possam funcionar da maneira como foram previstos, e também para que os Cientistas de Dados das empresas possam fazer análises e chegar a descobertas para esses serviços próprios aprimorados.
Nesse sentido, este texto se propõe a ser um guia introdutório para você que tem interesse em se aprofundar mais sobre este assunto. Então vamos ao nosso tema central: o que é um Banco de Dados (BD)?
Segundo a Oracle , um banco de dados é uma coleção de dados organizada que tem alguma relação entre si, de forma a criar sentido, e possibilitar consultas futuras. Para que seja possível utilizar os dados que estão sendo armazenados, ou seja, executar consultas, fazer combinação entre os dados que já estão na base, ou adicionar novas entradas para armazenar, atualizar ou deletá-los, faz-se necessário que se tenha programas que possibilitam operar todas essas manipulações. Esses programas são chamados de Sistema de Gerenciamento de Banco de Dados (SGBD).
Para que você possa entender como os dados são gerados e solidificar os seus conhecimentos, vamos analisar a plataforma do LinkedIn — ou do Medium. O texto que você está lendo, foi produzido por mim, logo ele está vinculado a minha conta, assim como tantos outros conteúdos que eu já produzi. As suas informações de usuário também foram armazenadas, bem como sua quantidade de conexões e seguidores, suas curtidas, as páginas que você segue, pesquisas que você fez na plataforma, seus comentários. Tudo isso são dados que precisam ser armazenados em algum lugar. Entretanto, eles não podem ser armazenados de forma aleatória, mas sim precisam ser organizados em conjuntos que tenham alguma lógica ou sentido dentro de um contexto. É exatamente isso que são Banco de Dados.
Agora que você já foi contextualizado sobre o que é um Banco de Dados, saiba que um dado pode assumir diferentes tipos, como textos, números, imagens, áudio, entre outros. Assim sendo, eles são divididos em duas grandes categorias: Banco de Dados Relacionais (SQL), Banco de Dados Não relacionais (NoSQL).
Banco de Dados Relacionais (SQL)
Os Bancos de Dados relacionais se baseiam em um modelo relacional, onde os dados são organizados em tabelas com linhas e colunas, que podem ser utilizados para se interconectar com outras tabelas, caso elas apresentem a mesma informação. Por exemplo, vamos imaginar uma tabela usada por uma empresa do ramo de perfumaria. O objetivo dessa tabela é armazenar todos os dados sobre o catálogo de produtos. Podemos ainda considerar que cada produto possui o seu respectivo código.
Além disso, essa empresa possui uma segunda tabela onde são registrados todas as vendas mensais dos produtos, porém os registros não são feitos pelo nome, e sim pelo seu código. Dessa forma, suponhamos que o nosso objetivo seja verificar qual é o volume de venda mensal de cada produto dessa empresa. Para isso, será necessário utilizarmos esse código, contido nas duas tabelas, de modo a criar um relacionamento entre ambas para consultar essas informações. Os bancos de dados relacionais mais utilizados no mercado são: Oracle, SQL Server, MySQL e PostgreSQL.
Bancos de dados não relacionais (NoSQL)
Esta categoria de Banco de Dados traz diferentes opções de armazenamento, que não são baseadas em linhas ou colunas. Como ela não segue o mesmo padrão do BD relacional, esta possui maior flexibilidade no armazenamento, escalabilidade e maior velocidade de escrita ou recuperação dos dados. Para certas categorias de problemas, esta opção pode ser mais eficiente.
Além disso, os bancos NoSQL podem ser subdivididos em mais categorias:
- Documento: esse grupo é caracterizado pela armazenagem de dados com grande versatilidade. O seu representante mais popular é o MongoDB.
- Chave-valor: nessa categoria, os dados são armazenados em uma chave que funciona como um identificador exclusivo. Um grande representante dessa categoria é a Amazon DynamoDB, presente na plataforma de computação em nuvem da Amazon: a AWS.
- Colunares: essa categoria possui grande afinidade com a área de dados por conta da sua otimização para a recuperação de colunas.
- Grafos: quando há grande necessidade de recuperação e manipulação de dados com muitas conexões, como é o caso das redes sociais, por exemplo.
Bom, agora que já passamos pelos principais conceitos na área de Banco de Dados, a pergunta que fica é: por qual eu começo a estudar?
Começar a estudar pelos Bancos de Dados relacionais pode ser o melhor caminho, pela sua simplicidade e facilidade de compreensão. Há inúmeras categorias de fornecedores — conforme citei acima — que estão presentes e consolidados no mercado há mais tempo. Por outro lado, se você já estiver envolvido em um projeto na área de Dados, e a demanda desse projeto já estiver definida, então este talvez seja o melhor ponto de partida, afinal você terá maior clareza sobre a aplicação de um processo de modelagem e análise de dados.
Por fim, sobre os SQL (Structured Query Language), dominar um representante de cada categoria talvez seja uma meta bastante ambiciosa, mas aprender a executar comandos que são comuns a todos os BD relacionais, é sem dúvida, um excelente começo.