Professional Data Engineer

Guia do exame de certificação

Um Professional Data Engineer toma decisões com base na coleta, transformação e publicação de dados. Ele é responsável por projetar, criar, operacionalizar, proteger e monitorar sistemas de processamento de dados com ênfase particular em segurança, conformidade, escalonabilidade, eficiência, confiabilidade, flexibilidade e portabilidade. Além disso, esse profissional também deve ser capaz de aproveitar, implantar e treinar continuamente modelos de machine learning preexistentes.

1. Projetar sistemas de processamento de dados

    1.1 Selecionar tecnologias de armazenamento adequadas. Inclui as seguintes considerações:

    • Mapeamento de sistemas de armazenamento para atender aos requisitos comerciais
    • Modelagem de dados
    • Balanceamento de latência, taxa de transferência e transações
    • Sistemas distribuídos
    • Projeto do esquema

    1.2 Projetar pipelines de dados. Inclui as seguintes considerações:

    • Publicação e visualização de dados (por exemplo, BigQuery)
    • Dados em lote e streaming (por exemplo, Cloud Dataflow, Cloud Dataproc, Apache Beam, Apache Spark, ecossistema Hadoop, Cloud Pub/Sub e Apache Kafka)
    • Predições on-line (interativas) vs. em lote
    • Automação e orquestração de jobs (por exemplo, Cloud Composer)

    1.3 Projetar uma solução de processamento de dados. Inclui as seguintes considerações:

    • Escolha da infraestrutura
    • Disponibilidade do sistema e tolerância a falhas
    • Uso de sistemas distribuídos
    • Planejamento de capacidade
    • Nuvem híbrida e edge computing
    • Opções de arquitetura (por exemplo, agentes de mensagens, filas de mensagens, middleware, arquitetura orientada a serviços, funções sem servidor)
    • Processamento de eventos "pelo menos uma vez", "na ordem", "exatamente uma vez" etc.

    1.4 Migrar o armazenamento e o processamento de dados. Inclui as seguintes considerações:

    • Consciência sobre o estado atual e como migrar um projeto para um estado futuro
    • Migração da infraestrutura local para a nuvem (serviço de transferência de dados, Transfer Appliance, rede em nuvem)
    • Validação de uma migração

2. Criar e operacionalizar sistemas de processamento de dados

    2.1 Criar e operacionalizar sistemas de armazenamento. Inclui as seguintes considerações:

    • Uso eficaz de serviços gerenciados (Cloud Bigtable, Cloud Spanner, Cloud SQL, BigQuery, Cloud Storage, Cloud Datastore, Cloud Memorystore)
    • Custos e desempenho do armazenamento
    • Gerenciamento do ciclo de vida dos dados

    2.2 Criar e operacionalizar pipelines. Inclui as seguintes considerações:

    • Limpeza de dados
    • Lote e streaming
    • Transformação
    • Aquisição e importação de dados
    • Integração com novas fontes de dados

    2.3 Criar e operacionalizar a infraestrutura de processamento. Inclui as seguintes considerações:

    • Provisionamento de recursos
    • Monitoramento de pipelines
    • Ajuste de pipelines
    • Teste e controle de qualidade

3. Operacionalizar modelos de machine learning

    3.1 Aproveitar modelos prontos de ML como serviço. Inclui as seguintes considerações:

    • APIs de ML (por exemplo, API Vision, API Speech)
    • Personalização de APIs de ML (por exemplo, AutoML Vision, Auto ML Text)
    • Experiências de conversa (por exemplo, Dialogflow)

    3.2 Implantar um pipeline de ML. Inclui as seguintes considerações:

    • Ingestão dos dados certos
    • Novo treinamento de modelos de machine learning (Cloud Machine Learning Engine, BigQuery ML, Kubeflow, Spark ML)
    • Avaliação contínua

    3.3 Escolher a infraestrutura adequada para treinamento e disponibilização. Inclui as seguintes considerações:

    • Distribuída vs. máquina única
    • Uso de edge computing
    • Aceleradores de hardware (por exemplo, GPU e TPU)

    3.4 Mensurar, monitorar e solucionar problemas em modelos de machine learning. Inclui as seguintes considerações:

    • Terminologia de machine learning (por exemplo, atributos, rótulos, modelos, regressão, classificação, recomendação, aprendizado supervisionado e não supervisionado, métricas de avaliação)
    • Impacto de dependências de modelos de machine learning
    • Fontes comuns de erro (por exemplo, suposições sobre dados)

4. Garantir a qualidade da solução

    4.1 Projetar com foco em segurança e conformidade. Inclui as seguintes considerações:

    • Gerenciamento de identidade e acesso (por exemplo, Cloud IAM)
    • Segurança de dados (criptografia, gerenciamento de chaves)
    • Garantia da privacidade (por exemplo, API Data Loss Prevention)
    • Conformidade jurídica (por exemplo, Lei de Portabilidade e Responsabilidade de Seguros de Saúde [HIPAA, na sigla em inglês], Lei de Proteção da Privacidade On-line das Crianças [COPPA, na sigla em inglês], FedRAMP, Regulamento geral de proteção de dados [GDPR, na sigla em inglês])

    4.2 Garantia de escalabilidade e eficiência. Inclui as seguintes considerações:

    • Criação e execução de pacotes de teste
    • Monitoramento de pipelines (por exemplo, Stackdriver)
    • Avaliação, solução de problemas e aprimoramento da infraestrutura de representações e processamento de dados
    • Redimensionamento e escalonamento automático de recursos

    4.3 Garantir confiabilidade e fidelidade. Inclui as seguintes considerações:

    • Preparação de dados e controle de qualidade (por exemplo, Cloud Dataprep)
    • Verificação e monitoramento
    • Planejamento, execução e testes de estresse para recuperação de dados (tolerância a falhas, nova execução de jobs com falha, execução de nova análise retrospectiva)
    • Escolha entre requisitos ACID, idempotentes e de consistência posterior

    4.4 Garantir flexibilidade e portabilidade. Inclui as seguintes considerações:

    • Mapeamento para atender a requisitos de negócios atuais e futuros
    • Projeto para portabilidade de dados e aplicativos (por exemplo, várias nuvens, requisitos de residência de dados)
    • Preparação, catalogação e descoberta de dados