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 via Mongo Shell/CLI
- Criando um banco de dados e uma 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 de systemd/serviços
Prática:
- Implantando instâncias em VMs locais ou containers 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: embedding vs referenciamento; padrões de design de dados
- Índices básicos (introduzidos anteriormente)
- Operações com Mongo Shell e exemplos de scriptagem usando drivers
Prática:
- Modelagem de um caso de uso: sistema de inventário ou faturamento
- Implementando operações CRUD
- Validação de schema usando JSON Schema no MongoDB
Módulo 4: Índices e Desempenho (4h)
Conteúdo:
- Índices simples, compostos, multikey, de texto e geoespaciais
- Uso do explain() e análise de métricas
- Impacto dos índices no desempenho de escrita e na memória
Prática:
- Criando coleções com dados de teste
- Testando consultas com e sem índices; interpretando o 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 roles personalizados
- TLS/SSL entre clientes e servidores
- Criptografia em repouso: configuração de chaves
- Registro de auditoria básico
Prática:
- Criando usuários com privilégios mínimos
- Configurando TLS em instâncias locais
- Verificando acessos não autorizados e revisando logs de auditoria
Módulo 6: Replicação e Alta Disponibilidade (6h)
Conteúdo:
- Conceitos de replicação: Primary, Secondary, oplog
- Configuração de replica set: inicialização, membership, arbitragem
- Monitoramento de status e eleições
- Manutenção: adicionar/remover membros, redefinindo prioridades
Prática:
- Implantando um replica set de três nós (local ou VMs)
- Simulando falha do primary e observando o failover
- Reconstruindo nós secundários e recuperando réplicas
Módulo 7: Sharding e Escalabilidade Horizontal (6h)
Conteúdo:
- Conceitos de sharding: shard key, servidores de configuração, roteador mongos
- Seleção da shard key e riscos associados
- Implantando servidores de configuração, shards e mongos
- Rebalanceamento e migração de chunks
Prática:
- Configurando um cluster shardado simples
- Inserindo dados em larga escala e observando a distribuição
- Introduzindo mudanças na shard key e entendendo 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 replica sets e clusters shardados
- 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
- Desenhando um plano de DR para um caso hipotético
Módulo 9: Monitoramento e Alertas (4h)
Conteúdo:
- Ferramentas: mongostat, mongotop, Monitoramento Cloud Manager/Atlas
- Integração com Prometheus + Grafana (conceitos e exemplos)
- Métricas principais: 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 container
- Configurando dashboards básicos com métricas de exemplo
- Simulando carga e observando alertas
Módulo 10: Manutenção, Atualizações e Melhores Práticas (4h)
Conteúdo:
- Estratégias de atualização para replica sets e clusters shardados
- Limpeza de dados, compactação, verificações de integridade
- Revisão de logs e auditorias regulares
- Automação de tarefas rotineiras (scripts, cronjobs, Ansible, Terraform)
- Políticas de retenção e arquivamento de dados
Prática:
- Simulando atualizações menores e maiores em um ambiente controlado
- Criando scripts de automação para backup e monitoramento
- Desenvolvendo uma checklist de manutenção periódica
Resumo e Próximos Passos
Requisitos
- Compreensão de conceitos gerais de bancos 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 sistemas que trabalham com MongoDB
- Equipes DevOps e de infraestrutura que implantam e mantêm ambientes MongoDB
- Desenvolvedores interessados em internos do MongoDB e melhores práticas de implantação
Testemunhos de Clientes (2)
O ritmo da fala e da explicação.
Marko Skokovic - PWO by Lottomatica Serbia
Curso - MongoDB for Administrators
Máquina Traduzida
O Sr. José é legal e explica todos os detalhes dos comandos. Agradecemos o tempo que ele dedica para compartilhar seu conhecimento conosco, e isso realmente mostra que ele é um especialista nesta área.
Almer Laureta - Asialink Finance Corporation
Curso - MongoDB for Developers
Máquina Traduzida