Database
 sql >> Base de Dados >  >> RDS >> Database

Como se tornar um designer de banco de dados


Modelagem de banco de dados tem alguma ciência, alguma arte, muitas técnicas e um pouco de sabedoria geral. Todos os bons modeladores de banco de dados estudam muito, praticam muito, cultivam a criatividade e desenvolvem habilidades interpessoais.

O caminho para se tornar um designer de banco de dados pode parecer árduo. Mas se você gosta de trabalhar com dados, dando estrutura onde aparentemente não há nenhuma e ajudando as pessoas a encontrar verdades ocultas em marés de informações, você definitivamente achará a jornada agradável.

O que é modelagem de dados?


Primeiras coisas primeiro. Vamos ser claros sobre o que é modelagem de dados. A modelagem de dados é o processo de criação de uma representação conceitual das informações contidas em um banco de dados. O resultado desse processo é um modelo de dados, com objetos de dados (as entidades para as quais as informações devem ser armazenadas), as associações ou relacionamentos entre eles e as regras ou restrições que regem as informações no banco de dados.

A pessoa encarregada da modelagem de dados é o designer de banco de dados, embora a modelagem geralmente esteja entre as responsabilidades do engenheiro ou arquiteto de banco de dados. O trabalho do designer de banco de dados não se limita a simplesmente desenhar diagramas, mas inclui revisar os requisitos – seja lendo a documentação ou entrevistando os usuários – e criando um modelo de dados que atenda a esses requisitos. É por isso que você precisa de modelagem de dados.

Depois que um modelo de dados é criado, o designer deve dar suporte a esse modelo e orientá-lo em sua evolução e ciclo de vida. Isso significa trabalhar em estreita colaboração com programadores, analistas e qualquer outra pessoa que precise usar o modelo. Significa também aceitar solicitações de mudanças no modelo, receber sugestões para melhorá-lo ou adaptá-lo a novas necessidades.

Passos para a carreira de um designer de banco de dados


Roma não foi construída em um dia e você não se tornará um designer de banco de dados da noite para o dia. Para chegar à linha de chegada, você deve seguir uma série de etapas. Começa por obter uma licenciatura, depois aprofundando alguns conhecimentos específicos, aprendendo a usar ferramentas, obtendo a certificação, tornando-se especialista em determinadas competências específicas e, por fim, aprendendo competências indiretamente relacionadas com a atividade que pretende desempenhar – as chamadas “soft” Habilidades. Mas vamos dar um passo de cada vez.

1. Obtendo um diploma


O primeiro marco importante na carreira de qualquer designer de banco de dados é obter um diploma. Os programas de graduação e bacharelado são o melhor caminho para quem deseja obter uma compreensão introdutória de design de banco de dados e desenvolvimento de software. Os programas de grau de associado cobrem aspectos específicos de design e software de banco de dados, oferecendo cursos mais gerais de educação e negócios. Os programas de bacharelado oferecem ainda mais cursos relacionados a negócios e podem preparar os graduados para cargos mais altos na área de ciência da computação ou desenvolvimento de software.

A diferença mais óbvia entre os dois tipos de diplomas (além do custo) é o tempo que leva para ganhar cada um. Para um estudante em tempo integral, um programa de grau de associado geralmente leva dois anos. Um programa de bacharelado, por outro lado, geralmente leva quatro anos para um estudante em período integral. Obviamente, os quatro anos do programa de bacharelado permitirão que você aprenda muito mais do que em um programa de graduação de associado.

Você pode fazer um pequeno curso sobre design de banco de dados. Mas os cursos de curta duração normalmente exigem que você tenha algum conhecimento prévio em diferentes aspectos da ciência da computação. Há também cursos destinados a pessoas que não são alfabetizadas em informática. A Vertabelo Academy tem uma ampla variedade de cursos especialmente desenvolvidos para pessoas que não são de TI.

Você também tem a opção, se for disciplinado o suficiente, de aprender por conta própria sem fazer um diploma ou curso. Há muitas opções em livros de design de banco de dados que você pode ler. Basta ter em mente que, na hora de preparar seu currículo, não adianta muito mencionar que você leu este ou aquele livro sobre design. Por outro lado, ajuda ter um diploma ou pelo menos um certificado de que você fez um curso.

2. Aprofunde seu conhecimento


Depois de adquirir o conhecimento necessário sobre design de banco de dados, consolide-o e reforce-o com a prática real. A teoria que você aprende em um curso ou graduação, mesmo junto com os exercícios que você deve resolver, apenas lhe dá uma ideia dos problemas que você enfrenta em seu trabalho como designer de banco de dados. Aliás, esse conhecimento adicional o prepara melhor para quando você tiver que ir a uma entrevista de emprego para um cargo de designer de banco de dados. A seguir estão as habilidades que você precisa dominar para se tornar um designer de banco de dados.

Normalização, chaves e instinto do designer


Quer você tenha feito um diploma ou um curso ou apenas tenha lido um livro, sem dúvida terá aprendido algo sobre a primeira, segunda e terceira formas normais. Mas para reforçar seu conhecimento, observe diferentes diagramas de entidade-relacionamento (suponho que você já saiba o que são ERDs e para que são usados) e analise-os para ver se estão normalizados. Você deve ser capaz de determinar em que forma normal eles estão.

Neste diagrama, as mesmas entidades são representadas de duas maneiras diferentes. Você pode dizer rapidamente em que forma normal está a tabela à esquerda e em que forma está o esquema à direita?

Também recomendo estudar os problemas que um esquema sem normalização pode causar. Você pode comparar o espaço ocupado por um esquema não normalizado e um esquema normalizado dos mesmos dados para ver as diferenças – com as tabelas preenchidas com uma quantidade razoável de dados, obviamente. Ou você pode tentar executar consultas em tabelas não normalizadas para ver as inconsistências que aparecem.

Há algumas coisas que você aprende com a prática. Primeiro, você nunca deve sair de uma tabela sem uma chave primária. Segundo, quando duas tabelas estão relacionadas, você deve definir uma chave estrangeira que associe os campos envolvidos de ambas as tabelas. Se você esquecer essas dicas, será lembrado quando encontrar linhas duplicadas em uma tabela ou elementos órfãos em relacionamentos entre mestre e detalhes, e isso lhe causará pesadelos.

Falando em chaves, você provavelmente já ouviu falar de chaves naturais e chaves substitutas. Até que você tenha muita experiência, você precisa pensar no tipo de chave que você dá a cada mesa que você cria. Depois de fazer algumas dezenas de ERDs, você terá desenvolvido o instinto do designer para criar esquemas na terceira forma normal sem esforço, com os relacionamentos corretos e a melhor chave para cada tabela.

Data Warehouses:dimensões, medidas, modelos de esquema e outros conceitos


Os conceitos de design de banco de dados geralmente são ensinados com o processamento transacional em mente. Mas hoje, os designers lidam cada vez mais com bancos de dados para processamento analítico. Esses bancos de dados são conhecidos como data warehouses e possuem algumas ideias de design e técnicas que diferem dos bancos de dados convencionais.

Os data warehouses são construídos usando o modelo relacional tradicional, mas com vários novos conceitos adicionais. Por exemplo, alguns campos representam dimensões, enquanto outros representam medidas. Algumas tabelas coletam fatos, enquanto outras agrupam dimensões. Modelos de design específicos para esquemas de data warehouse já existem, como estrela, floco de neve e galáxia.

Finalmente, os data warehouses introduzem uma técnica chamada desnormalização. Ao contrário do que você pode pensar, a desnormalização não significa reverter quaisquer tentativas anteriores de normalização. Para entender para que serve a desnormalização, pense nela como uma técnica para introduzir redundância em designs de tabela para simplificar consultas e visualização de dados.

3. Escolha suas ferramentas


Além do conhecimento teórico que seus estudos lhe dão e o conhecimento prático que sua experiência lhe dá, você deve dominar as ferramentas para o design de banco de dados. As ferramentas do designer de banco de dados são aquelas que o ajudam na tarefa de criar modelos de dados.

A verdade é que bons designers podem fazer seu trabalho sem nenhuma ferramenta além de lápis e papel. Mas para serem eficientes e cumprirem suas tarefas no menor tempo possível, devem utilizar ferramentas que os ajudem a serem mais eficientes.

As ferramentas que mais economizam tempo para o designer de banco de dados são as ferramentas de design ERD, como a plataforma Vertabelo.com. Essas ferramentas simplificam o trabalho do designer de banco de dados de desenhar diagramas, automatizar a criação de scripts SQL e gerar diagramas de bancos de dados existentes.

Outra ferramenta fundamental para todo designer de banco de dados é a linguagem SQL. DDL (linguagem de definição de dados) é necessária para criar ou modificar esquemas, mas para ser um designer de banco de dados, você também deve saber escrever consultas SQL para obter informações de um banco de dados.

Existem outras ferramentas úteis para o designer de banco de dados, como ferramentas de monitoramento e criação de perfil e linguagens de programação para análise de dados e administradores de banco de dados. Se você conhece essas ferramentas, listá-las agrega valor ao seu currículo.

4. Obtenha a certificação


Já falamos sobre ferramentas de masterização, mas como você prova em seu currículo que sabe escrever SQL ou que sabe usar alguma ferramenta de design ERD? Você faz isso fazendo cursos específicos, fazendo exames e obtendo a certificação.

Existem basicamente dois tipos de certificações:aquelas que mostram que você domina uma determinada ferramenta e aquelas que mostram que você possui uma certa habilidade. Ambos agregam valor quando exibidos em seu currículo.

As empresas que desenvolvem as ferramentas geralmente oferecem programas de treinamento e, quando você conclui um desses programas de treinamento, recebe um certificado como prova de que domina a ferramenta. Essas certificações geralmente são gratuitas. Eles estão interessados ​​em certificar muitos profissionais no uso de suas ferramentas, por isso é do seu interesse treiná-lo para usá-los sem cobrar (muito) por isso.

Certificações em uma determinada habilidade – como, por exemplo, programação SQL, gerenciamento de banco de dados NoSQL ou design de processos ETL – costumam ser caras, mas agregam muito valor ao seu currículo, principalmente porque evitam que os entrevistadores tenham que avaliar se você realmente sabe fazer o seu trabalho. Os cursos de pós-graduação são uma opção adequada se você já possui um diploma.

5. Vá até o fim


Você já estudou e aprendeu os materiais para ser um designer de banco de dados. Você aprofundou seu conhecimento. Você fez cursos e obteve certificações. O que está faltando para se tornar um designer de banco de dados? Saber como fazer as principais tarefas e ser capaz de executá-las do início ao fim.

Modelando um banco de dados


Você pode saber desenhar um ERD, mas modelar um banco de dados envolve mais do que isso. Para ser um designer de banco de dados, você deve ser capaz de ir desde o levantamento e análise de requisitos até a geração e execução de scripts para transformar diagramas em bancos de dados funcionais.

Escrevendo consultas complexas em SQL


Não se trata simplesmente de uma consulta retornando os dados que deveria retornar, mas também retornando-os o mais rápido possível. Saber escrever consultas SQL significa pensar com a mesma lógica do mecanismo de banco de dados para reunir as informações solicitadas e entregá-las com o mínimo de esforço.

Otimização do desempenho


A otimização do desempenho do banco de dados inclui a criação de um design apropriado e o monitoramento das atividades do banco de dados para detectar operações que degradam o desempenho. Também envolve saber como solucionar problemas de desempenho, seja criando índices, redesenhando o esquema ou informando ao DBA sobre possíveis problemas na otimização do mecanismo de banco de dados.

Protegendo um banco de dados


Embora atribuir permissões e privilégios em objetos de banco de dados normalmente não seja o trabalho do designer de banco de dados, ele pode identificar áreas de responsabilidade em seus designs que facilitam para um administrador atribuir permissões corretamente a cada usuário de banco de dados.

6. Adquira Soft Skills


Esta última etapa é frequentemente negligenciada na carreira de um designer de banco de dados, mas não deixe isso sem solução. Em muitas situações, as habilidades sociais mencionadas abaixo são tão importantes, se não mais, do que as habilidades e conhecimentos técnicos tradicionais, também conhecidos como hard skills.

Perspicácia nos negócios


Designers com visão de negócios podem interpretar melhor e dar a dimensão certa a cada requisito que recebem, e isso se traduz em melhores decisões de design. Algo tão simples como decidir usar uma chave natural ou uma chave substituta para uma tabela pode ser importante para o negócio; alinhar suas decisões com os objetivos de negócios é a chave para o sucesso do seu trabalho.

Habilidades de comunicação e interpessoais


Criar um bom design é apenas parte do trabalho. Depois de criar e aperfeiçoar seu modelo, você deve ser capaz de apresentá-lo, explicá-lo e ajudar quem precisa trabalhar com ele. Você também deve aceitar que todo design pode ser melhorado, então esteja preparado para receber sugestões e críticas. Em geral, como designer, você faz parte de uma equipe. Ser uma parte útil da equipe significa ser um jogador de equipe que sempre pensa no benefício para a equipe.

A linha de chegada:um trabalho de designer de banco de dados


Se você já fez todas essas coisas, provavelmente já está modelando bancos de dados como um profissional e tem muitas histórias para contar. O espaço de comentários abaixo é para você compartilhar conselhos úteis e histórias engraçadas, e para você contribuir para enriquecer nossas vidas como designers de banco de dados.