Guia - DEA-C01 AWS Certified Data Engineer Associate
Ăltima revisĂŁo: maio de 2026
Uma referĂȘncia rĂĄpida dos padrĂ”es arquiteturais que o exame DEA-C01 avalia. Leia de cima a baixo ou pule para uma seção.
Ingestão e Transformação de Dados
Escolha um serviço Kinesis para ingestão de streaming.
Processamento controlado pelo consumidor em sub-segundos â Kinesis Data Streams. Entrega totalmente gerenciada para S3/Redshift/OpenSearch com conversĂŁo de formato opcional â Kinesis Data Firehose.
O stream atinge erros de ProvisionedThroughputExceeded durante o pico.
Refragmentar (Reshard). Cada shard suporta ingestĂŁo de 1 MB/s ou 1.000 registros/s, saĂda de 2 MB/s. Use chaves de partição uniformes; habilite Enhanced Fan-Out para >2 MB/s por consumidor.
Por quĂȘ: Chaves de partição "quentes" concentram o trĂĄfego em um shard. Chaves aleatĂłrias ou baseadas em hash distribuem a carga.
Armazenar clickstream JSON no S3 como Parquet, particionado por tempo de evento.
Firehose com conversĂŁo de formato de registro (JSON â Parquet) usando tabela do Glue Data Catalog + particionamento dinĂąmico no timestamp do evento.
Por quĂȘ: Parquet + particionamento reduz drasticamente o custo de varredura do Athena. O particionamento dinĂąmico evita uma etapa ETL separada.
Garanta que nĂŁo haja perda de dados no MSK se uma AZ de broker falhar.
Fator de replicação ℠3 em 3 AZs e `min.insync.replicas=2` com `acks=all` do produtor. Habilite Multi-AZ via KRaft sem ZooKeeper ou posicionamento de broker em 3 AZs.
Spark personalizado de longa duração com ajuste profundo, mĂșltiplos frameworks (Hive, Presto, Flink) â EMR. ETL serverless pago por job com integração Glue Data Catalog â Glue. Spark irregular/imprevisĂvel â EMR Serverless.
Misturar nĂłs de core on-demand + nĂłs de tarefa spot para EMR otimizado em custo.
Instance Fleets com capacidade alvo por tipo. Frota de core on-demand para estabilidade HDFS; frota de tarefas spot com tipos de instĂąncia diversificados.
Estado de Map distribuĂdo do Step Functions com `MaxConcurrency` e ItemReader do S3. Distribuição (Fan-out) em milhares de invocaçÔes Lambda paralelas.
Precisa reverter as alteraçÔes do DAG se um deploy causar falhas.
Armazene DAGs em bucket S3 versionado + sincronize via versionamento S3. Ou mantenha o repositório DAG no Git com ambiente por branch + sincronização S3 via CI.
Dados brutos "quentes" por 30 dias, acesso ocasional pelos prĂłximos 90 dias, arquivamento por 7 anos.
Ciclo de vida do S3: 0-30 dias Standard, transição aos 30 dias para Standard-IA, transição aos 120 dias para Glacier Flexible Retrieval, expirar após 7 anos.
S3 Intelligent-Tiering. Move automaticamente objetos entre Frequent / Infrequent / Archive Instant Access / Archive / Deep Archive com base no padrão de acesso. Taxa de monitoramento por objeto; sem taxas de recuperação em Frequent/IA.
Consultas Athena em data lake são lentas; a partição tem milhares de arquivos JSON de 1-5 KB.
Compacte arquivos pequenos via job Glue/EMR em arquivos Parquet de ~256 MB. Use `OPTIMIZE` do Iceberg ou compactação Hudi para formatos de tabela gerenciados.
Diferentes consumidores precisam de diferentes visualizaçÔes do mesmo objeto S3 (PII redigido, resumido).
S3 Object Lambda Access Point. A solicitação GET invoca uma Lambda que transforma o objeto em tempo real; o consumidor vĂȘ a visualização transformada.
A consulta Redshift filtra frequentemente por `created_at`; varreduras de tabela completa sĂŁo lentas.
Defina uma chave de ordenação em `created_at` (ou uma chave de ordenação composta incluindo `created_at`). O Redshift usa mapas de zona para pular blocos durante a varredura.
COPY em paralelo a partir de um Ășnico manifesto. Procure por #arquivos = mĂșltiplo da contagem de slices (slices = nĂłs Ă vCPU). 4 nĂłs ra3.xlplus = 8 slices â 32 arquivos = 4 por slice.
Desnormalize para uma tabela de fatos ampla ou view materializada. Cargas de trabalho de BI favorecem joins em tempo de leitura resolvidos em tempo de escrita.
PartiçÔes S3 por `ano/mĂȘs/dia/hora`; `MSCK REPAIR TABLE` leva mais de 30 min.
Habilite a projeção de partição do Athena (sem entradas de partição do Glue Catalog). Defina os tipos e intervalos das chaves de partição nas propriedades da tabela.
Por quĂȘ: O Athena calcula as localizaçÔes das partiçÔes no momento da consulta a partir das regras de projeção - sem MSCK, sem limitação da API do Glue.
Leituras de dispositivos IoT; precisa (1) de todas as leituras para um dispositivo em uma janela de tempo, (2) da leitura mais recente por dispositivo.
PK = `device_id`, SK = `timestamp`. GSI com PK = `device_id`, SK = `timestamp` invertido (ou use Query com `ScanIndexForward=false LIMIT 1`).
Encontrar todos os jobs Glue cuja duração excedeu 1 hora nos Ășltimos 7 dias.
Consulta do CloudWatch Logs Insights: `fields @timestamp, @message | filter @message like /JobRunDuration/ | parse @message "duration=*" as d | filter d > 3600`.
Por quĂȘ: O Athena cobra por dados escaneados; o Redshift cobra por hora de cluster; o EMR por hora de instĂąncia. Correlacione o faturamento com o padrĂŁo de acesso.
As retentativas do Glue ETL produzem linhas de saĂda duplicadas no destino S3.
IdempotĂȘncia: escreva para um prefixo temporĂĄrio por execução, depois renomeie atomicamente via S3 multipart `CompleteMultipartUpload` ou use MERGE de Iceberg/Hudi para upserts.
Equipes de vendas devem ver apenas as linhas de suas regiĂ”es atribuĂdas no data lake compartilhado.
Segurança em nĂvel de linha do Lake Formation via filtro de dados: `region IN ('NA', 'EU')` por principal IAM. Tabela Ășnica; visualização filtrada por principal.
Muitas equipes + muitas tabelas; concessÔes por tabela são insustentåveis.
LF-Tags do Lake Formation. Marque tabelas/colunas; conceda permissÔes baseadas em tag a principais. Adicionar uma nova tabela apenas precisa da tag correta.
A Conta A tem o data lake; os analistas da Conta B precisam de acesso de leitura a tabelas especĂficas.
Compartilhamento entre contas do Lake Formation via RAM. A Conta A concede permissÔes ao principal/conta IAM da Conta B; B acessa via Athena/Redshift Spectrum.
Segurança em nĂvel de linha dentro do Redshift (nĂŁo Lake Formation).
PolĂticas RLS nativas do Redshift: `CREATE RLS POLICY` com predicado referenciando o contexto da sessĂŁo (`current_user`, `session_role`). Anexe a polĂtica Ă tabela.
A conformidade exige chave gerenciada pelo cliente com trilha de auditoria para criptografia do Redshift.
Cluster Redshift criptografado com chave KMS gerenciada pelo cliente. Rotação de chave habilitada; o CloudTrail captura cada operação de Decrypt contra a CMK.
Auditar cada GetObject / PutObject do S3 no bucket do data lake.
Eventos de dados do CloudTrail para o bucket. Por padrĂŁo, o CloudTrail registra apenas eventos de gerenciamento; eventos de dados devem ser habilitados explicitamente.
Por quĂȘ: Eventos de dados sĂŁo cobrados por evento; restrinja apenas ao bucket sensĂvel para controlar o custo.
Precisa de quem/quando/IP para cada acesso S3; eventos de dados do CloudTrail sĂŁo muito caros.
Registro de acesso ao servidor S3. Gratuito; logs entregues a um bucket de log separado; menos detalhes que o CloudTrail, mas cobre solicitante + IP + caminho.