Skip to content

Latest commit

 

History

History
505 lines (362 loc) · 24.8 KB

google-cloud-certification.md

File metadata and controls

505 lines (362 loc) · 24.8 KB

Google Cloud Certification

Areas to review

Google Services

SRE Principles

Google has defined Site Reliability Engineering tenets.

Emergency Response (MTTR, MTTF)

Capacity Planning

Change Management

Error Budget

Monitoring (Alerts, Tickets, Logging/Metrics) Provisioning

Google Professional Machine Learning Engineer

PMLE Training

PMLE Notes

Professional Machine Learning Engineer 2023 Dec

The Professional Machine Learning Engineer exam does not cover generative AI, as the tools used to develop generative AI-based solutions are evolving quickly. If you are interested in generative AI, please refer to the Introduction to Generative AI Learning Path (all audiences) or the Generative AI for Developers Learning Path (technical audience). If you are a partner, please refer to the Gen AI partner courses: Introduction to Generative AI Learning Path, Generative AI for ML Engineers, and Generative AI for Developers.

Section 1: Architecting low-code ML solutions (~12% of the exam)

1.1 Developing ML models by using BigQuery ML. Considerations include:

●  Building the appropriate BigQuery ML model (e.g., linear and binary classification, regression, time-series, matrix factorization, boosted trees, autoencoders) based on the business problem

●  Feature engineering or selection by using BigQuery ML

●  Generating predictions by using BigQuery ML

1.2 Building AI solutions by using ML APIs. Considerations include:

●  Building applications by using ML APIs (e.g., Cloud Vision API, Natural Language API, Cloud Speech API, Translation)

●  Building applications by using industry-specific APIs (e.g., Document AI API, Retail API)

1.3 Training models by using AutoML. Considerations include:

●  Preparing data for AutoML (e.g., feature selection, data labeling, Tabular Workflows on AutoML)

●  Using available data (e.g., tabular, text, speech, images, videos) to train custom models

●  Using AutoML for tabular data

●  Creating forecasting models using AutoML

●  Configuring and debugging trained models

Section 2: Collaborating within and across teams to manage data and models (~16% of the exam)

2.1 Exploring and preprocessing organization-wide data (e.g., Cloud Storage, BigQuery, Cloud Spanner, Cloud SQL, Apache Spark, Apache Hadoop). Considerations include:

●  Organizing different types of data (e.g., tabular, text, speech, images, videos) for efficient training

●  Managing datasets in Vertex AI

●  Data preprocessing (e.g., Dataflow, TensorFlow Extended [TFX], BigQuery)

●  Creating and consolidating features in Vertex AI Feature Store

●  Privacy implications of data usage and/or collection (e.g., handling sensitive data such as personally identifiable information [PII] and protected health information [PHI])

2.2 Model prototyping using Jupyter notebooks. Considerations include:

●  Choosing the appropriate Jupyter backend on Google Cloud (e.g., Vertex AI Workbench, notebooks on Dataproc)

●  Applying security best practices in Vertex AI Workbench

●  Using Spark kernels

●  Integration with code source repositories

●  Developing models in Vertex AI Workbench by using common frameworks (e.g., TensorFlow, PyTorch, sklearn, Spark, JAX)

2.3 Tracking and running ML experiments. Considerations include:

●  Choosing the appropriate Google Cloud environment for development and experimentation (e.g., Vertex AI Experiments, Kubeflow Pipelines, Vertex AI TensorBoard with TensorFlow and PyTorch) given the framework

Section 3: Scaling prototypes into ML models (~18% of the exam)

3.1 Building models. Considerations include:

●  Choosing ML framework and model architecture

●  Modeling techniques given interpretability requirements

3.2 Training models. Considerations include:

●  Organizing training data (e.g., tabular, text, speech, images, videos) on Google Cloud (e.g., Cloud Storage, BigQuery)

●  Ingestion of various file types (e.g., CSV, JSON, images, Hadoop, databases) into training

●  Training using different SDKs (e.g., Vertex AI custom training, Kubeflow on Google Kubernetes Engine, AutoML, tabular workflows)

●  Using distributed training to organize reliable pipelines

●  Hyperparameter tuning

●  Troubleshooting ML model training failures

3.3 Choosing appropriate hardware for training. Considerations include:

●  Evaluation of compute and accelerator options (e.g., CPU, GPU, TPU, edge devices)

●  Distributed training with TPUs and GPUs (e.g., Reduction Server on Vertex AI, Horovod)

Section 4: Serving and scaling models (~19% of the exam)

4.1 Serving models. Considerations include:

●  Batch and online inference (e.g., Vertex AI, Dataflow, BigQuery ML, Dataproc)

●  Using different frameworks (e.g., PyTorch, XGBoost) to serve models

●  Organizing a model registry

●  A/B testing different versions of a model

4.2 Scaling online model serving. Considerations include:

●  Vertex AI Feature Store

●  Vertex AI public and private endpoints

●  Choosing appropriate hardware (e.g., CPU, GPU, TPU, edge)

●  Scaling the serving backend based on the throughput (e.g., Vertex AI Prediction, containerized serving)

●  Tuning ML models for training and serving in production (e.g., simplification techniques, optimizing the ML solution for increased performance, latency, memory, throughput)

Section 5: Automating and orchestrating ML pipelines (~21% of the exam)

5.1 Developing end-to-end ML pipelines. Considerations include:

●  Data and model validation

●  Ensuring consistent data pre-processing between training and serving

●  Hosting third-party pipelines on Google Cloud (e.g., MLFlow)

●  Identifying components, parameters, triggers, and compute needs (e.g., Cloud Build, Cloud Run)

●  Orchestration framework (e.g., Kubeflow Pipelines, Vertex AI Pipelines, Cloud Composer)

●  Hybrid or multicloud strategies

●  System design with TFX components or Kubeflow DSL (e.g., Dataflow)

5.2 Automating model retraining. Considerations include:

●  Determining an appropriate retraining policy

●  Continuous integration and continuous delivery (CI/CD) model deployment (e.g., Cloud Build, Jenkins)

5.3 Tracking and auditing metadata. Considerations include:

●  Tracking and comparing model artifacts and versions (e.g., Vertex AI Experiments, Vertex ML Metadata)

●  Hooking into model and dataset versioning

●  Model and data lineage

Section 6: Monitoring ML solutions (~14% of the exam)

6.1 Identifying risks to ML solutions. Considerations include:

●  Building secure ML systems (e.g., protecting against unintentional exploitation of data or models, hacking)

●  Aligning with Google’s Responsible AI practices (e.g., biases)

●  Assessing ML solution readiness (e.g., data bias, fairness)

●  Model explainability on Vertex AI (e.g., Vertex AI Prediction)

6.2 Monitoring, testing, and troubleshooting ML solutions. Considerations include:

●  Establishing continuous evaluation metrics (e.g., Vertex AI Model Monitoring, Explainable AI)

●  Monitoring for training-serving skew

●  Monitoring for feature attribution drift

●  Monitoring model performance against baselines, simpler models, and across the time dimension

●  Common training and serving errors

Google Professional Cloud DevOps Engineer

https://cloud.google.com/certification/guides/cloud-devops-engineer

Cloud DevOps Engineer - Certification Exam Guide 2023 Jan

Cloud DevOps Engineer - Certification Exam Guide 2022 Jan

sections below are from https://cloud.google.com/certification/guides/cloud-devops-engineer as of 20211226

Section 1. Applying site reliability engineering principles to a service

1.1 Balance change, velocity, and reliability of the service:

Discover SLIs (e.g., availability, latency) Define SLOs and understand SLAs Agree to consequences of not meeting the error budget Construct feedback loops to decide what to build next Eliminate toil via automation 1.2 Manage service life cycle:

Manage a service (e.g., introduce a new service, deploy, maintain, and retire it) Plan for capacity (e.g., quotas and limits management) 1.3 Ensure healthy communication and collaboration for operations:

Prevent burnout (e.g., set up automation processes to prevent burnout) Foster a learning culture Foster a culture of blamelessness

Section 2. Building and implementing CI/CD pipelines for a service

2.1 Design CI/CD pipelines:

Creating and storing immutable artifacts with Artifact Registry Deployment strategies with Cloud Build and Spinnaker Deployment to hybrid and multicloud environments with Anthos, Spinnaker, and Kubernetes Artifact versioning strategy with Cloud Build and Artifact Registry CI/CD pipeline triggers with Cloud Source Repositories, external SCM, and Pub/Sub Testing a new version with Spinnaker Configuring deployment processes (e.g., approval flows) 2.2 Implement CI/CD pipelines:

CI with Cloud Build CD with Cloud Build Open source tooling (e.g., Jenkins, Spinnaker, GitLab, Concourse) Auditing and tracing of deployments (e.g., CSR, Artifact Registry, Cloud Build, Cloud Audit Logs) 2.3 Manage configuration and secrets:

Secure storage methods Secret rotation and config changes 2.4 Manage infrastructure as code:

Terraform Infrastructure code versioning Make infrastructure changes safer Immutable architecture 2.5 Deploy CI/CD tooling:

Centralized tools vs. multiple tools (single vs. multi-tenant) Security of CI/CD tooling 2.6 Manage different development environments (e.g., staging, production):

Decide on the number of environments and their purpose Create environments dynamically per feature branch with GKE Local development environments with Docker, Cloud Code, Skaffold 2.7 Secure the deployment pipeline:

Vulnerability analysis with Artifact Registry Binary Authorization IAM policies per environment

Section 3. Implementing service monitoring strategies

3.1 Manage application logs:

Collecting logs from Compute Engine, GKE with Cloud Logging, Fluentd Collecting third-party and structured logs with Cloud Logging, Fluentd Sending application logs directly to the Cloud Logging API 3.2 Manage application metrics with Cloud Monitoring:

Collecting metrics from Compute Engine Collecting GKE/Kubernetes metrics Use Metrics Explorer for ad hoc metric analysis 3.3 Manage Cloud Monitoring platform:

Creating a monitoring dashboard Filtering and sharing dashboards Configure third-party alerting in Cloud Monitoring (e.g., PagerDuty, Slack) Define alerting policies based on SLIs with Cloud Monitoring Automate alerting policy definition with Terraform Implementing SLO monitoring and alerting with Cloud Monitoring Understand Cloud Monitoring integrations (e.g., Grafana, BigQuery) Using SIEM tools to analyze audit/flow logs (e.g., Splunk, Datadog) Design Cloud Monitoring metrics scopes 3.4 Manage Cloud Logging platform:

Enabling data access logs (e.g., Cloud Audit Logs) Enabling VPC flow logs Viewing logs in the Google Cloud Console Using basic vs. advanced logging filters Implementing logs-based metrics Understanding the logging exclusion vs. logging export Selecting the options for logging export Implementing a project-level / org-level export Viewing export logs in Cloud Storage and BigQuery Sending logs to an external logging platform 3.5 Implement logging and monitoring access controls:

Set ACL to restrict access to audit logs with IAM, Cloud Logging Set ACL to restrict export configuration with IAM, Cloud Logging Set ACL to allow metric writing for custom metrics with IAM, Cloud Monitoring

Section 4. Optimizing service performance

4.1 Identify service performance issues:

Evaluate and understand user impact Utilize Google Cloud’s operations suite to identify cloud resource utilization Utilize Cloud Trace and Cloud Profiler to profile performance characteristics Interpret service mesh telemetry Troubleshoot issues with the image/OS Troubleshoot network issues (e.g., VPC flow logs, firewall logs, latency, view network details) 4.2 Debug application code:

Application instrumentation Cloud Debugger Cloud Logging Cloud Trace Debugging distributed applications App Engine local development server Error Reporting Cloud Profiler 4.3 Optimize resource utilization:

Identify resource costs Identify resource utilization levels Develop plan to optimize areas of greatest cost or lowest utilization Manage preemptible VMs Utilize committed use discounts where appropriate TCO considerations (e.g., security, logging, networking) Consider network pricing

Section 5. Managing service incidents

5.1 Coordinate roles and implement communication channels during a service incident:

Define roles (incident commander, communication lead, operations lead) Handle requests for impact assessment Provide regular status updates, internal and external Record major changes in incident state (e.g., When mitigated? When is all clear?) Establish communications channels (e.g., email, IRC, Hangouts, Slack, phone) Scaling response team and delegation Avoid exhaustion / burnout Rotate / hand over roles Manage stakeholder relationships 5.2 Investigate incident symptoms impacting users:

Identify probable causes of service failure Evaluate symptoms against probable causes; rank probability of cause based on observed behavior Perform investigation to isolate most likely actual cause Identify alternatives to mitigate issue 5.3 Mitigate incident impact on users:

Roll back release Drain / redirect traffic Turn off experiment Add capacity 5.4 Resolve issues with deployments (e.g., Cloud Build, Jenkins):

Code change / fix bug Verify fix Declare all-clear 5.5 Document issue in a postmortem:

Document root causes Create and prioritize action items Communicate postmortem to stakeholders

Links