Alura > Cursos de Data Science > Cursos de SQL e Banco de Dados > Conteúdos de SQL e Banco de Dados > Primeiras aulas do curso SQL Server: construção do Data Warehouse

SQL Server: construção do Data Warehouse

Criando a base de dados no SQL Server - Apresentação

Olá! Meu nome é Victorino Vila e eu serei o instrutor do curso SQL Server: Construção do Data Warehouse.

Audiodescrição: Victorino é uma pessoa de pele clara e olhos escuros. Seus cabelos são curtos, lisos e grisalhos. Usa barba e bigode também grisalhos e está vestindo uma camiseta preta.

Esse é mais um curso da formação que ensina a implementar projetos de Business Intelligence (BI). Nesse curso, continuaremos acompanhando a consultora Paula, que foi contratada por uma empresa que é um dos maiores supermercados de atacado no Brasil. Paula já entendeu a empresa e fez o levantamento de negócio do projeto BI para área de vendas.

Agora ela construirá o Data Warehouse, então precisará criar um banco de dados vazio no SQL Server. E ela escolheu a ferramenta SQL Power Architect para projetar as tabelas do Data Warehouse baseada na documentação do modelo de negócio.

Aprenderemos que existe uma relação direta entre a documentação e as tabelas a serem criadas. Depois de criar o projeto com o SQL Power Architect, transportaremos os scripts de criação do banco para o SQL Server, criando, de fato, todas tabelas.

Espero que gostem desse curso!

Um grande abraço e até o próximo vídeo!

Criando a base de dados no SQL Server - Criando a base de dados no SQL Server

Paula apresentou à clientela do AtacaDez o projeto de implentação do Business Intelligence (BI) para área de venda.Chegou a hora de criar o banco de dados do Data Warehouse.

O Data Warehouse pode ser construído em qualquer banco de dados relacional: tanto on premise, ou seja, instalado no próprio servidor do cliente, ou em nuvem. Inclusive existem instâncias em nuvem especializadas na criação de Data Warehouse.

A AtacaDez já possui sua plataforma de banco de dados, que está em SQL Server 2022. Logo, Paula terá que criar um banco de dados vazio que será usado para criação do Data Warehouse na plataforma SQL Server 2022.

Criando o banco de dados

Nesse vídeo iremos criar um banco de dados no SQL Server 2022. Para isso, abriremos o SQL Management Studio. Na atividade de Preparando o ambiente: instalando o SQL Server 2022, no começo dessa aula, aprendemos como baixamos e instalamos o SQL Server 2022 e o SQL Management Studio.

Observação: Caso não tenham a versão 2022 do SQL Server, volte na atividade de instalação e siga todos os passos descritos.

Ao abrir o SQL Management Studio, faremos o login com o usuário "sa", que é aquele no qual incluimos a senha ao instalarmos o SQL Server. Na minha máquina, durante o login, abaixo do campo de senha, eu marquei a caixa de seleção com a opção "Lembrar senha", então não vou precisar digitar a senha de usuário para "sa".

Se na máquina de vocês e a opção "Lembrar senha" não estiver selecionada e o campo de senha estiver vazio, digitem a senha de quando instalaram o SQL Server 2022. Com os campos de usuário e senha preenchidos, podemos clicar em "Conectar".

No lado esquerdo da janela, temos uma coluna com várias pastas. Ao expandirmos a "Banco de Dados", que é a primeira pasta, encontramos todos os bancos de dados do nosso servidor.

No caso, eu já tenho alguns bancos de dados, mas talvez vocês não tenham nenhum. Isso não importa, porque agora criaremos um novo banco de dados. Portanto, clicaremos com o botão direito do mouse na pasta "Banco de Dados" e selecionaremos a opção "Novo Banco de Dados…", que é a primeira.

Fazendo isso, o Management abre a janela "Novo Banco de Dados" no centro da tela e o campo "Nome do banco de dados" já está selecionado. Nomearemos o banco de dados como "DW_ATACADEZ" e clicaremos no botão "OK", no canto inferior direito da janela. Com isso, o banco que criamos aparece ao final da lista na pasta "Banco de Dados".

Escolhemos o nome "DW_ATACADEZ" (nome da empresa) no Data Warehouse pois este deve ser o único banco de dados gerencial de toda a empresa.

Mesmo que estejamos criando apenas o modelo de Business Intelligence da área de vendas, outras áreas serão implementadas futuramente. Neste momento, precisaremos acrescentar novas tabelas e novos relacionamentos no banco de dados existente.

O Data Warehouse também é um banco de dados relacional. Portanto, ao criá-lo, o banco de dados foi criado também.

Quando criamos uma base de dados transacional e gerencial no SQL Server, devemos comparar algumas características pertinentes ao uso da base de dados gerencial.

No programa, podemos criar os dois tipos de base, gerencial e transacional. Se nada for especificado, ambos terão as mesmas características, afinal, o SQL Server foi construído originalmente para criar bancos de dados relacionais.

Quando trabalhamos com bancos de dados transacionais, ou seja, bases operacionais que controlam atividades rotineiras da empresa, devemos ser capazes de realizar tarefas fundamentais como:

Para obter essas funcionalidades, temos que ativar o log de transações, cuja manutenção utilizará fortemente os recursos de máquina e o espaço em disco — afinal, escrevemos o logo toda vez que atualizamos uma tabela. Com isso a atualização das tabelas se tornará mais lenta.

Quando criamos um banco no SQL Server, a ativação desse log é realizada automaticamente, pois o programa foi construído para base de dados transacionais. Contudo, quando utilizamos um banco voltado a dados gerenciais (ou seja, ao Data Warehouse), não há necessidade de salvar transações.

No Data Warehouse, os dados não serão incluídos manualmente, mas sim, por meio de processos de ETL ou ELT que escrevem milhares de linhas na tabela ao mesmo tempo.

Se houver algum erro nesse processo, basta apagar todas as linhas e reprocessar o ETL ou ELT.

Se tivéssemos que salvar o log de transações para cada processamento de milhares de linhas, haveria um alto desperdício de espaço em disco que nunca será utilizado.

Isso não significa que o não faremos backups no Data Warehouse. Contudo, eles deverão ser do tipo full, que não precisarão do log de transações.

O backup incremental (ou ponta a ponta) agrega perdas para o banco de dados gerencial, afinal, nunca precisaremos recuperar transações efetuadas.

Se o log é criado por padrão, como mudo essa propriedade no banco do AtacaDez para evitar o salvamento de transações? Para isso, criaremos um novo script com dois comandos.

Removendo o log de transações

Votlando ao SQL Server, acessaremos a barra de ferramentas superior e clicaremos em "Nova Consulta", o que abrirá uma guia vazia na janela de edição ao centro do programa.

Vamos nos certificar que estamos no interior da base "DW_ATACADEZ", observando o campo de lista suspensa acima da aba de conexões à esquerda. Esse campo deve exibir o nome "DW_ATACADEZ".

No interior da guia na janela de edição, digitaremos ALTER DATABASE, o nome da base e o comando SET RECOVERY SIMPLE.

Dica: É possível inserir o nome da base selecionando-a na aba de conexões e arrastando-a para o editor.

ALTER DATABASE [DW_ATACADEZ] SET RECOVERY SIMPLE;

Vamos executar essa linha de comando, selecionando-a e clicando no botão "Executar", à esquerda do botão de lista suspensa com o nome da base.

Dica: É possível também executar o código selecionado com o atalho F5.

Com isso, o banco de dados "DW_ATACADEZ" não salvará os logs de transações.

Temos o banco de dados do Data Warehouse criado, porém, está vazio. A seguir, projetaremos as tabelas do banco de dados com base na documentação criada por Paula durante o levantamento do modelo de Business Intelligence.

Criando a base de dados no SQL Server - Fases do projeto

Entenderemos as fases do Business Intelligence e onde nos encontramos atualmente.

Fases do Business Intelligence

Na reunião com a equipe executiva do AtacaDez, Paula teve a oportunidade de apresentar as fases de implementação de um projeto de Business Intelligence. Durante sua apresentação, ela destacou a importância da construção da Matriz Dimensão x Indicador como ponto de partida para o desenvolvimento do projeto.

Atenção: No curso Modelagem do Data Warehouse: atributos, hierarquia e indicadores construímos essa Matriz e documentamos o modelo, abrangendo dimensões, atributos, hierarquias e indicadores. Adicionamos o resultado no Notion, o qual devemos consultar para construir o Data Warehouse baseado no formato da Matriz.

A construção deste Data Warehouse será fundamental para a criação de uma estrutura sólida de armazenamento dos dados relevantes para gerar, por exemplo, tomadas de decisão pela equipe executiva. Por meio dele é possível armazenar, organizar e integrar dados de diferentes fontes, garantindo sua total disponibilidade e a utilização das mesmas regras de negócio.

Com a visão clara das etapas envolvidas e dos objetivos finais do projeto de Business Intelligence, Paula está pronta para continuar seu trabalho. Agora, ela desenvolverá o projeto do Data Warehouse e a criação das tabelas no interior do banco de dados que criamos anteriormente, a partir da Matriz Dimensão x Indicador.

Sobre o curso SQL Server: construção do Data Warehouse

O curso SQL Server: construção do Data Warehouse possui 139 minutos de vídeos, em um total de 57 atividades. Gostou? Conheça nossos outros cursos de SQL e Banco de Dados em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda SQL e Banco de Dados acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas