8000 7FFF
Skip to content

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

MusicStreaming Database

Banco de dados relacional completo simulando o backend de dados de uma plataforma de music streaming 24/7, desenvolvido com SQL Server 2019 e T-SQL.

O projeto cobre o ciclo completo de gestão de banco de dados em ambiente de produção: modelagem relacional, extração de insights de negócio, segurança enterprise e otimização de performance.


Destaques técnicos

Área O que foi implementado
Modelagem Diagrama ER com 8 tabelas: Songs, Artists, Albums, Genre, Users, Labels, Location e SongPlays
Consultas e relatórios Queries analíticas para extração de insights de negócio via T-SQL
Segurança TDE (Transparent Data Encryption), mascaramento dinâmico de dados (DDM), controle granular de permissões
Automatização Backup automatizado com SQL Server Agent Jobs, stored procedures de auditoria e alertas
Performance Particionamento de tabelas por data, compressão de dados, views, triggers e tabelas temporárias

Estrutura do projeto

Projeto_Music.Streaming/
├── database/
│   ├── 01-modelagem/
│   │   ├── criacao-de-esquema.sql       # DDL: tabelas, PKs, FKs, constraints
│   │   ├── insercao-de-dados.sql        # DML: dados de exemplo
│   │   └── modelo-fisico.png            # Diagrama ER (modelo físico)
│   ├── 02-queries-relatorios/
│   │   └── consultas-e-relatorios.sql   # Queries analíticas e relatórios
│   ├── 03-seguranca-automacao/
│   │   ├── procedures-var-tde.sql       # Stored procedures, TDE, auditoria
│   │   └── seguranca-agendamento.sql    # Usuários, permissões, DDM, jobs de backup
│   └── 04-performance-gestao/
│       ├── particionamento-compressao.sql  # Particionamento por data e compressão
│       └── temp-tables-views-triggers.sql  # Views, triggers, tabelas temporárias
├── docs/
│   ├── readme-docs.md                   # Documentação técnica detalhada
│   └── insights-negocios.md             # Perguntas de negócio respondidas com SQL
└── README.md

Pré-requisitos

  • SQL Server 2019 ou superior
  • SQL Server Management Studio (SSMS) ou ferramenta equivalente
  • Permissões de administrador para criação de banco, usuários e jobs

Como executar

Execute os scripts na ordem abaixo:

1. Modelagem e dados

-- Criar tabelas e relacionamentos
database/01-modelagem/criacao-de-esquema.sql

-- Popular com dados de exemplo
database/01-modelagem/insercao-de-dados.sql

2. Consultas e relatórios

-- Relatórios analíticos prontos para uso
database/02-queries-relatorios/consultas-e-relatorios.sql

3. Segurança e automação

-- Criptografia TDE, procedures e auditoria
database/03-seguranca-automacao/procedures-var-tde.sql

-- Usuários, permissões, mascaramento e backup automatizado
database/03-seguranca-automacao/seguranca-agendamento.sql

4. Performance e gestão avançada

-- Particionamento por data e compressão de dados
database/04-performance-gestao/particionamento-compressao.sql

-- Views, triggers e tabelas temporárias
database/04-performance-gestao/temp-tables-views-triggers.sql

Exemplos de uso

Top 10 músicas mais tocadas:

SELECT TOP 10 TituloMusica, TotalReproducoes
FROM #ContagemReproducoesPorMusica
ORDER BY TotalReproducoes DESC;

Auditoria de jobs de backup:

EXEC ListJobsAndSchedules
    @JobName    = 'BackupJob',
    @DataInicial = '2024-01-01',
    @DataFinal   = '2024-12-31';

Visualização de dados mascarados (DDM):

SELECT * FROM dbo.UserDM;

Diagrama ER

Modelo Físico

Clique na imagem para visualizar em tamanho completo.


Boas práticas adotadas

  • Senhas: nunca versionadas nos scripts — use os placeholders e substitua em produção
  • Backup: certificado e chave mestra do TDE devem ser exportados e guardados com segurança
  • Permissões: princípio do menor privilégio — cada usuário recebe apenas o acesso necessário
  • Auditoria: triggers e logs rastreiam alterações em dados sensíveis
  • Performance: monitoramento recomendado com DBCC CHECKDB, análise periódica de índices e partições
  • Documentação: todos os scripts contêm comentários explicando cada etapa

Tecnologias utilizadas

SQL Server T-SQL SSMS


Equipe

Projeto desenvolvido em equipe de 4 pessoas como trabalho prático da Academia Database & Data Intelligence — Rumos.

Membro Responsabilidade principal
Felipe Guimarães Moraes Modelagem ER, queries e relatórios, views, triggers e stored procedures
+ 3 colaboradores Desenvolvimento conjunto do projeto

Documentação completa

Consulte a documentação técnica detalhada para links diretos e explicações de cada script.

Para exemplos de perguntas de negócio respondidas com SQL, veja insights de negócio.

About

Banco de dados relacional completo simulando plataforma de music streaming - SQL Server, T-SQL, TDE, particionamento e automação de backups

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

0