API e ETL/ELT — interoperabilidade entre sistemas
3 min de leitura13 questões
Cai no edital de Agente PF, Escrivão PF, Papiloscopista PF, Receita Federal, Receita Federal
Para revisar
Resumo
Essência. API (interface de programação de aplicações) é um contrato que permite a um software usar funções ou dados de outro sem conhecer sua implementação. Garante interoperabilidade: sistemas diferentes trocam dados de forma padronizada.
- API web REST: recursos acessados por URL e métodos HTTP:
GET(consultar),POST(criar),PUT/PATCH(alterar),DELETE(excluir). Sem estado (stateless): cada requisição traz tudo o que precisa. Formato usual: JSON. - SOAP: protocolo mais rígido, baseado em XML e contrato WSDL.
- Autenticação: chave de API, tokens (OAuth 2.0, JWT). Códigos de resposta: 200 OK, 201 criado, 401 não autenticado, 403 proibido, 404 não encontrado, 500 erro do servidor.
ETL = Extract (extrair das fontes) → Transform (limpar, padronizar, integrar, agregar) → Load (carregar no destino, tipicamente um data warehouse). A transformação ocorre antes da carga, em área intermediária (staging).
ELT = extrai → carrega bruto no destino → transforma lá dentro, usando o poder de processamento do data lake ou do DW em nuvem. Mais flexível para grandes volumes e dados variados.
Pegadinha Cebraspe. "No ELT, os dados são transformados antes de serem carregados" → errado: no ELT a transformação vem depois da carga.
Visão geral
O item 23 trata de integração: programação (Python, em tópico próprio), APIs para trocar dados entre sistemas (ex.: consultas a bases governamentais) e ETL/ELT para levar dados das fontes ao ambiente analítico.
Regra
Ver íntegra
| ETL | ELT | |
|---|---|---|
| Ordem | Extrai → transforma → carrega | Extrai → carrega → transforma |
| Onde transforma | Servidor/área de staging | No destino (lake, DW em nuvem) |
| Destino típico | Data warehouse tradicional | Data lake, DW em nuvem |
| Dados | Estruturados | Qualquer formato |
Métodos HTTP: GET, PUT e DELETE são idempotentes (repetir dá o mesmo efeito); POST não é.
Pontos-chave
- Endpoint: URL de um recurso da API (ex.:
/api/v1/veiculos/ABC1D23). - Webhook: a API avisa outro sistema quando ocorre um evento (inverso de ficar consultando).
- SDK: kit com bibliotecas que facilitam o uso de uma API.
- API pública × privada × de parceiros.
- Transformações típicas do ETL: remover duplicados, padronizar formatos (datas, CPF), converter unidades, juntar fontes, calcular agregados.
- Carga full × incremental (só o que mudou, via CDC — captura de mudanças).
Como a banca cobra
- "Uma API permite que aplicações se comuniquem sem conhecer os detalhes internos umas das outras" → certo.
- "Em APIs REST, o método GET é usado para consultar recursos" → certo.
- "No processo ETL, a etapa de transformação inclui limpeza e padronização dos dados" → certo.
- "APIs REST são obrigatoriamente baseadas em XML" → errado (JSON é o mais comum; XML é opcional).
- "Arquiteturas REST exigem que o servidor mantenha o estado da sessão do cliente" → errado (stateless).
Referência
Mapa mental
API
- Contrato entre softwares
- Esconde implementação
- Garante interoperabilidade
REST
- Recursos por URL
- GET, POST, PUT, PATCH, DELETE
- Stateless, JSON
- SOAP: XML e WSDL
ETL
- Extrai, transforma, carrega
- Transforma em staging
- Destino: data warehouse
ELT
- Extrai, carrega, transforma
- Transforma no destino
- Data lake, nuvem
⚠️ Pegadinha
- ELT transforma depois da carga
Questão 1, Agente PF, Certo ou Errado
No processo ELT, os dados são transformados antes de serem carregados no destino.
Revelar gabarito
Gabarito: Errado
Errado. O item descreve o ETL. No ELT, os dados são extraídos e carregados brutos no destino, e a transformação ocorre depois, usando o poder de processamento do data lake ou do DW em nuvem.
Questão 2, Agente PF, Certo ou Errado
Em API REST, o método GET é usado para consultar recursos.
Revelar gabarito
Gabarito: Certo
Certo. Em APIs REST, recursos são acessados por URL e métodos HTTP. O GET faz consulta, enquanto POST cria, PUT e PATCH alteram e DELETE exclui o recurso indicado na requisição.
Questão 3, Agente PF, Certo ou Errado
APIs REST são sem estado: cada requisição deve conter as informações necessárias para ser processada.
Revelar gabarito
Gabarito: Certo
Certo. Ser stateless significa que o servidor não depende de estado de sessão guardado entre as chamadas. Por isso, cada requisição precisa trazer todas as informações necessárias para seu processamento.
Questão 4, Agente PF, Certo ou Errado
O código de status HTTP 404 indica que o usuário não está autenticado.
Revelar gabarito
Gabarito: Errado
Errado. O status 404 indica recurso não encontrado. A falta de autenticação corresponde ao código 401, e o 403 indica acesso proibido, distinção recorrente em questões sobre APIs e HTTP.
Questão 5, Agente PF, Certo ou Errado
O protocolo SOAP baseia-se em mensagens XML.
Revelar gabarito
Gabarito: Certo
Certo. SOAP é protocolo mais rígido que REST, com mensagens em XML e contrato de serviço descrito em WSDL. As APIs REST, por sua vez, costumam trafegar dados no formato JSON.
- Revelar resposta
API
Contrato que permite a um software usar funções ou dados de outro sem conhecer a implementação; garante interoperabilidade.
- Revelar resposta
Métodos HTTP em API REST
GETconsulta,POSTcria,PUT/PATCHaltera,DELETEexclui. REST é sem estado e usa em geral JSON. - Revelar resposta
ETL × ELT
ETL: transforma antes de carregar (staging). ELT: carrega bruto e transforma no destino (data lake/DW em nuvem).
- Revelar resposta
Códigos HTTP comuns
200 OK; 201 criado; 401 não autenticado; 403 proibido; 404 não encontrado; 500 erro do servidor.
- Revelar resposta
REST × SOAP
SOAP: protocolo rígido, baseado em XML e contrato WSDL. REST: estilo leve sobre HTTP.
- Revelar resposta
Endpoint de API
Endpoint é o endereço (URL) de um recurso da API, como /api/v1/veiculos/ABC1D23, acessado pelos clientes por meio dos métodos HTTP adequados.
- Revelar resposta
Webhook
No webhook ocorre o inverso de ficar consultando: a própria API avisa o outro sistema quando o evento acontece, sem necessidade de consultas periódicas.
- Revelar resposta
Métodos HTTP idempotentes
GET, PUT e DELETE são idempotentes, pois repeti-los dá o mesmo efeito; o POST não é, já que cada repetição pode criar um novo recurso.
- Revelar resposta
Carga full × incremental
A carga full reprocessa todo o conjunto, enquanto a incremental leva somente o que mudou, frequentemente identificado pela captura de mudanças, conhecida como CDC.
- Revelar resposta
Onde o ETL transforma
No ETL a ordem é extrair, transformar e carregar: a limpeza e a padronização ocorrem em servidor ou staging, antes da carga no data warehouse, ao contrário do ELT.
Estude Agente PF no app
Grátis, sem cartão