Programa do Curso
Módulo 1: Introdução e Arquitetura do MongoDB (4h)
Conteúdo:
- História e ecossistema do MongoDB
- Casos de uso típicos, prós e contras
- Arquitetura geral: instâncias, processos e configuração
Prática:
- Exploração interativa: conectando-se com o Mongo Shell/CLI
- Criando um banco de dados e coleção de exemplo
Módulo 2: Instalação e Configuração Inicial (6h)
Conteúdo:
- Requisitos de hardware e recursos
- Instalação no Linux (deb/rpm), Windows e macOS
- Arquivos de configuração YAML (mongod.conf): dataDir, logDir, bindIp, port
- Opções de inicialização e gerenciamento systemd/service
Prática:
- Implantando instâncias em VMs locais ou contêineres Docker
- Ajustando configurações para desenvolvimento vs. produção
- Verificando conectividade remota segura
Módulo 3: Modelagem de Dados e Operações Básicas (5h)
Conteúdo:
- Documentos BSON, coleções, bancos de dados
- Modelagem: incorporação vs. referência; padrões de design de dados
- Índices básicos (introduzidos anteriormente)
- Operações com o Mongo Shell e exemplos de scripting usando drivers
Prática:
- Modelando um caso de uso: sistema de inventário ou faturamento
- Implementando operações CRUD
- Validação de esquema usando JSON Schema no MongoDB
Módulo 4: Índices e Desempenho (4h)
Conteúdo:
- Índices simples, compostos, multikey, texto e geoespaciais
- Usando explain() e analisando métricas
- Impacto dos índices no desempenho de gravação e memória
Prática:
- Criando coleções com dados de teste
- Testando consultas com e sem índices; interpretando explain()
- Ajustando índices com base nos padrões de acesso
Módulo 5: Segurança (5h)
Conteúdo:
- Mecanismos de autenticação: SCRAM, LDAP/Kerberos (introdução)
- Definindo usuários e funções personalizadas
- TLS/SSL entre clientes e servidores
- Criptografia em repouso: configuração de chave
- Registro de auditoria básico
Prática:
- Criando usuários com privilégios mínimos
- Configurando TLS em instâncias locais
- Verificando acesso não autorizado e revisando registros de auditoria
Módulo 6: Replicação e Alta Disponibilidade (6h)
Conteúdo:
- Conceitos de replicação: Primário, Secundário, oplog
- Configuração de conjuntos de réplicas: inicialização, membros, arbitragem
- Monitoramento de status e eleições
- Manutenção: adicionando/removendo membros, reatribuindo prioridades
Prática:
- Implantando um conjunto de réplicas com três nós (local ou VMs)
- Simulando falha do primário e observando a failover
- Reconstruindo nós secundários e recuperando réplicas
Módulo 7: Sharding e Escalabilidade Horizontal (6h)
Conteúdo:
- Conceitos de sharding: chave de shard, servidores de configuração, roteador mongos
- Seleção da chave de shard e riscos associados
- Implantando servidores de configuração, shards e mongos
- Rebalanceamento e migração de chunks
Prática:
- Configurando um cluster sharded simples
- Inserindo dados em larga escala e observando a distribuição
- Introduzindo mudanças na chave de shard e entendendo as limitações
Módulo 8: Backup, Restauração e Recuperação de Desastres (4h)
Conteúdo:
- Ferramentas nativas: mongodump/mongorestore, snapshots de sistema de arquivos
- Backups em conjuntos de réplicas e clusters sharded
- Uso básico do Cloud Manager/Ops Manager para backup
- Planejamento de Recuperação de Desastres (DR): RTO, RPO
Prática:
- Realizando backup e restauração em um banco de dados de teste
- Simulando falha e recuperação a partir do backup
- Projetando um plano DR para um caso hipotético
Módulo 9: Monitoramento e Alertas (4h)
Conteúdo:
- Ferramentas: mongostat, mongotop, Cloud Manager/Atlas Monitoring
- Integração com Prometheus + Grafana (conceitos e exemplos)
- Métricas-chave: CPU, memória, I/O, tamanho do oplog, latências
- Alertas: definindo limiares e notificações
Prática:
- Implantando um agente de monitoramento local ou baseado em contêiner
- Criando painéis básicos com métricas de exemplo
- Simulando carga e observando alertas
Módulo 10: Manutenção, Upgrades e Melhores Práticas (4h)
Conteúdo:
- Estratégias de upgrade para conjuntos de réplicas e clusters sharded
- Limpesa de dados, compactação, verificações de integridade
- Revisando logs e auditorias regulares
- Automatizando tarefas rotineiras (scripts, cronjobs, Ansible, Terraform)
- Políticas de retenção e arquivamento de dados
Prática:
- Simulando upgrades menores e maiores em um ambiente controlado
- Criando scripts de automação para backup e monitoramento
- Desenvolvendo uma lista de verificação periódica de manutenção
Síntese e Próximos Passos
Requisitos
- Compreensão dos conceitos gerais de banco de dados e estruturas de dados
- Familiaridade com o uso da linha de comando do Linux
- Conhecimento básico de redes e administração de sistemas
Público-alvo
- Administradores de banco de dados e engenheiros de sistema que trabalham com MongoDB
- Equipes DevOps e de infraestrutura que implementam e mantêm ambientes do MongoDB
- Desenvolvedores interessados em detalhes internos do MongoDB e melhores práticas de deployment
Declaração de Clientes (5)
Kamil fez um ótimo trabalho. Ele fez perguntas para descobrir o que já sabíamos e no que precisávamos de nos concentrar, e adaptou facilmente a formação às nossas necessidades.
Susanna - USAF
Curso - MongoDB Advanced Administrator
Máquina Traduzida
A situação era atípica, porque uma formação intensiva para programadores tinha de ser realizada com não programadores. Lukasz aceitou este desafio com empatia e muito humor. Através da sua forma inteligente e flexível, conseguiu assegurar que todos obtivessem um ganho de aprendizagem concreto. Gostei muito e teria todo o gosto em participar novamente num seminário com o Lukasz.
Christoph - Honda Bank GmbH
Curso - MERN Fullstack Development
Máquina Traduzida
O ambiente de laboratório
Samer Roshdi - epic ltd
Curso - MongoDB for Analysts
Máquina Traduzida
It was very flexible and adapted to our expectations and skill level.
Raul Alberto Canales Requena - Kiloo
Curso - MongoDB for Advanced Users
Máquina Traduzida
I generally was benefit from the open mind and communication.
Oleksiy Deliyev
Curso - MongoDB for Developers
Máquina Traduzida