O que é o AWS Lambda?
Serviço de computação serverless que executa código em resposta a eventos (triggers), sem necessidade de provisionar ou gerenciar servidores. Escala automaticamente.
Quais são os principais casos de uso do AWS Lambda para Engenharia de Dados?
1) ETL: transformar e carregar dados entre serviços; 2) Processamento em streaming: consumir eventos do Kinesis ou DynamoDB Streams em tempo real.
Como o AWS Lambda pode acessar arquivos grandes de forma compartilhada?
Integrando com o Amazon EFS (Elastic File System). O EFS permite que múltiplas invocações simultâneas do Lambda leiam e escrevam no mesmo sistema de arquivos, ideal para grandes bibliotecas e dados compartilhados.
Qual é o limite de tempo de execução de uma função Lambda?
Até 15 minutos por invocação. Para processamentos mais longos, deve-se usar AWS Batch, AWS Glue ou Step Functions.
O que é o AWS SAM (Serverless Application Model)?
Framework open-source da AWS que simplifica o desenvolvimento e o deploy de aplicações serverless, permitindo definir funções Lambda, APIs e tabelas DynamoDB com menos código em um arquivo YAML.
Qual é a relação entre AWS SAM e AWS CloudFormation?
O SAM é uma transformação (macro) do CloudFormation. O arquivo YAML do SAM é convertido automaticamente em um template CloudFormation completo durante o deploy, usando a transformação AWS::Serverless.
O que o AWS SAM CLI permite fazer localmente?
Testar e depurar funções Lambda, simular endpoints do API Gateway e interagir com DynamoDB localmente, antes de fazer o deploy na AWS.
O que é o AWS Batch?
Serviço gerenciado para executar jobs de batch computing usando imagens Docker em instâncias EC2, incluindo Spot Instances. O AWS Batch provisiona e desaloca os recursos automaticamente.
Por que o AWS Batch é considerado serverless?
Porque o usuário não gerencia os servidores: o AWS Batch provisiona as instâncias EC2 automaticamente quando há jobs na fila e as desaloca ao final. Você paga apenas pelo tempo de uso do EC2.
Como os jobs do AWS Batch podem ser disparados?
Por Amazon CloudWatch Events (ex: agendamento ou eventos de outros serviços) ou pelo AWS Step Functions como parte de um workflow orquestrado.
Qual a diferença fundamental entre AWS Batch e AWS Glue?
O AWS Glue é especializado em ETL usando Apache Spark com catálogo de dados integrado. O AWS Batch é de propósito geral: executa qualquer workload que tenha uma imagem Docker, não limitado a ETL.
Quando devo escolher AWS Batch em vez do AWS Glue?
Quando o job não é ETL com Spark, quando você precisa de um ambiente customizado via Docker, quando tem workloads científicos, de renderização ou qualquer processamento batch que não seja transformação de dados com Spark.
Qual tipo de instância EC2 o AWS Batch suporta para reduzir custos?
Spot Instances, que podem oferecer até 90% de desconto em relação às instâncias On-Demand, sendo ideais para jobs tolerantes a interrupções.
Qual a diferença entre AWS Lambda e AWS Batch para processamento de dados?
Lambda é ideal para jobs curtos (até 15 min), event-driven e sem estado; Batch é ideal para jobs longos, pesados computacionalmente, executados como containers Docker em EC2.
O que é o Amazon EC2?
Elastic Compute Cloud: serviço que permite provisionar servidores virtuais (instâncias) na AWS sob demanda, com controle total sobre CPU, memória, armazenamento e rede.
Para que serve a família de instâncias M e T no EC2?
Uso Geral: equilíbrio entre CPU, memória e rede. T é ideal para cargas intermitentes (t3.micro); M para cargas empresariais estáveis (m6i). Usadas em servidores de app e bancos pequenos/médios.
Quando usar instâncias EC2 da família R ou X?
Workloads com alto consumo de memória: grandes bancos de dados, Spark/Hadoop em memória, SAP HANA e análises em tempo real. Ex: r6i, x2idn.
Qual família EC2 usar para Machine Learning e Deep Learning?
Família P (GPUs NVIDIA para treino de ML), Família Inf (chips Inferentia para inferência) e Família Trn (chips Trainium para treino distribuído).
Qual a diferença entre EBS e Instance Store no EC2?
EBS é armazenamento persistente (sobrevive ao stop/start), ideal para bancos de dados. Instance Store é efêmero (dados perdidos ao parar), mas tem altíssimo desempenho para buffers e caches temporários.
O que são Spot Instances e quando usá-las em Engenharia de Dados?
Instâncias com desconto de até 90% usando capacidade ociosa da AWS, mas podem ser interrompidas. Ideais para jobs tolerantes a falhas como AWS Batch e clusters EMR temporários.
Qual modelo de preço EC2 usar para workloads previsíveis de longo prazo?
Reserved Instances (1 ou 3 anos) com desconto de até 72%. Ideal para servidores de produção com uso constante e previsível.
Como o EC2 aparece no serviço AWS DMS?
O DMS exige a criação de uma Replication Instance (instância EC2) para executar o processo de migração de bancos de dados entre a origem e o destino.
Como o AWS Batch usa o EC2?
O Batch provisiona e desaloca instâncias EC2 automaticamente (incluindo Spot) para executar jobs em containers Docker, sem que o usuário precise gerenciar os servidores.
O que é Auto Scaling no EC2?
Recurso que aumenta ou diminui automaticamente o número de instâncias EC2 com base em métricas de uso (CPU, memória, etc), garantindo disponibilidade e redução de custo.