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.
| Á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 |
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
- 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
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.sql2. Consultas e relatórios
-- Relatórios analíticos prontos para uso
database/02-queries-relatorios/consultas-e-relatorios.sql3. 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.sql4. 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.sqlTop 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;Clique na imagem para visualizar em tamanho completo.
- 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
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 |
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.