Tecnologias3 minguia
Roteiro de Aprofundamento de Tecnologias
As notas temáticas têm uma seção Aprofundamento aplicado, com cenários, decisões e exercícios acompanhados do resultado esperado. Use o índice da tecnologia para seguir os fundamentos e depois experimentar as situações propostas.
Os exemplos são didáticos. Comandos que criam ou alteram dados pressupõem ambiente de estudo; trechos com tabelas, clientes ou serviços preexistentes indicam esse contexto. Os exercícios de infraestrutura são propostas de laboratório, não relatos de execução.
1. Linguagens: contratos e execução
| Trilha | Ordem de estudo | O que conseguir explicar |
|---|---|---|
| [[0. MOC Go | Go]] | Linguagem → erros/interfaces → memória → concorrência → runtime → produção |
| [[0. MOC TypeScript | TypeScript]] | JavaScript → tipos → unions → generics → validação → async → módulos |
Desafio: implemente uma operação de reserva com entrada validada e prazo de execução. Use 8. Validação de Dados em TypeScript para a fronteira de dados e 2. Goroutines e Channels para raciocinar sobre encerramento de trabalho concorrente. Explique o mesmo contrato nas duas linguagens, respeitando os diferentes modelos de execução.
2. Bancos: invariantes e caminhos de acesso
| Família | Notas de entrada | Pergunta central |
|---|---|---|
| Relacionais | 0. MOC PostgreSQL · 0. MOC MySQL · 0. MOC Oracle | Qual transação ou restrição mantém a regra sob concorrência? |
| Documentos | 0. MOC MongoDB | Quais dados mudam juntos e qual parte pode crescer? |
| Chave-valor | 0. MOC DynamoDB | Qual chave ou índice responde a cada acesso frequente? |
| SQL distribuído | 03 - MOC NewSQL | Quais partes e réplicas precisam coordenar a operação? |
| Analíticos | 0. MOC ClickHouse · 0. MOC DuckDB | Quais colunas e blocos precisam ser lidos e qual estado intermediário será criado? |
Desafio: duas compras disputam o último item. Desenhe a execução concorrente, escolha a fronteira atômica e mostre como o cliente trata conflito e confirmação incerta. Compare com 3. MVCC e Isolamento na Prática e 3. Consistência e Transações no DynamoDB.
3. Mensageria: confirmar, repetir e recuperar
Siga 1. Mensageria e Desacoplamento, depois os índices de Kafka, RabbitMQ e SQS. Use 5. Kafka vs Fila Tradicional para comparar retenção, ordem e consumo.
Desafio: o consumidor grava o efeito e cai antes de confirmar a mensagem. Explique como preservar a identidade do evento, reconhecer a reentrega e evitar efeito duplicado. Depois acrescente uma mensagem inválida e uma indisponibilidade transitória: elas precisam de decisões diferentes para retry e recuperação.
4. Objetos e análise: da gravação ao snapshot
Siga S3 e R2, depois 2. Apache Parquet e Consultas no S3 e Iceberg. Conecte as camadas com 4. Iceberg no S3 e no R2 - Catálogos e Motores.
Desafio: publique um relatório composto por vários arquivos enquanto outro processo lê a versão anterior. Identifique o ponto de publicação, os arquivos ainda necessários e o momento em que uma tentativa incompleta pode ser limpa.
5. Comparar com evidência
Em 0. MOC Comparações de Tecnologias, aplique sempre a mesma regra de negócio e registre volume, distribuição, concorrência, durabilidade e isolamento da configuração.
Para cada exercício, escreva:
- Previsão: o que deve acontecer e por quê.
- Observação: saída, plano, métrica ou linha do tempo que sustenta a conclusão.
- Falha: o que acontece se o processo cair no ponto mais inconveniente.
- Limite: qual mudança de carga ou requisito exige rever a solução.
O critério de entendimento é conseguir prever uma execução e justificar a escolha, incluindo seu custo e as condições em que deixa de atender ao problema.
Parte de 00 - MOC Tecnologias