Architecting Low-Code ML Solutions
This domain covers building and deploying ML models using Google Cloud's managed, low-code offerings: BigQuery ML, AutoML, Pretrained APIs, and Vertex AI Model Garden. It accounts for 13% of the exam and tests your ability to match a business or technical requirement to the correct low-code tool, understand the capabilities and limits of each service, and recognize when a custom training approach is needed instead. Expect scenario-based questions that test the distinctions between services and require you to justify a choice based on data type, latency requirements, cost, team expertise, or existing infrastructure.
BigQuery ML: Model Types, Training, and Prediction in SQL
Core Concept
BigQuery ML (BQML) lets data analysts and engineers train, evaluate, and serve ML models using standard SQL directly within BigQuery. No Python, no separate infrastructure: the model lives alongside the data in BigQuery. This is the default answer when the requirement involves large structured/tabular data already in BigQuery, a SQL-fluent team, or minimal operational overhead.
Supported Model Types
| Model Type | SQL Keyword | Use Case |
|---|---|---|
| Linear Regression | LINEAR_REG | Numeric prediction (forecasting) |
| Binary/Multiclass Logistic Regression | LOGISTIC_REG | Classification |
| K-Means Clustering | KMEANS | Unsupervised segmentation |
| Matrix Factorization | MATRIX_FACTORIZATION | Collaborative filtering / recommendations |
| Time Series Forecasting | ARIMA_PLUS | Demand forecasting, ARIMA + holiday effects |
| Boosted Trees (XGBoost) | BOOSTED_TREE_CLASSIFIER, BOOSTED_TREE_REGRESSOR | Tabular classification/regression |
| Random Forest | RANDOM_FOREST_CLASSIFIER, RANDOM_FOREST_REGRESSOR | Tabular classification/regression |
| DNN / Wide-and-Deep | DNN_CLASSIFIER, DNN_REGRESSOR, DNN_LINEAR_COMBINED_* | Tabular deep learning |
| AutoML Tables (via BQML) | AUTOML_CLASSIFIER, AUTOML_REGRESSOR | Managed AutoML inside BQML |
| Imported TensorFlow / ONNX | MODEL_TYPE='TENSORFLOW' | Bring-your-own model for SQL serving |
| LLM / Generative | REMOTE_MODEL (Vertex AI endpoint) | Text generation, embedding via SQL |
Key SQL Verbs
-- Train
CREATE OR REPLACE MODEL `project.dataset.model_name`
OPTIONS(model_type='logistic_reg', input_label_cols=['label']) AS
SELECT feature1, feature2, label FROM `project.dataset.table`;
-- Evaluate
SELECT * FROM ML.EVALUATE(MODEL `project.dataset.model_name`, TABLE `...`);
-- Predict
SELECT * FROM ML.PREDICT(MODEL `project.dataset.model_name`, TABLE `...`);
-- Inspect weights / feature importance
SELECT * FROM ML.WEIGHTS(MODEL `...`);
SELECT * FROM ML.FEATURE_IMPORTANCE(MODEL `...`); -- tree models
-- Transform
SELECT * FROM ML.TRANSFORM(MODEL `...`, TABLE `...`);
ML.EXPLAIN_PREDICT returns Shapley values (SHAP) for explainability on supported models (boosted trees, random forest, DNN, AutoML).
Training Data Split
By default, BQML uses an automatic random 80/10/10 train/validation/test split for most model types. You can override this with DATA_SPLIT_METHOD option (RANDOM, CUSTOM, SEQ, NO_SPLIT). For ARIMA_PLUS, the split is time-based and automatic.
Common Traps
- ARIMA_PLUS is the correct model type for time-series; do not choose
LINEAR_REGfor forecasting over time just because it is regression. ML.EVALUATEuses the held-out evaluation split, not the training data — confusion arises when a question asks about evaluation vs. prediction.ML.PREDICTdoes not require a label column in the input table.- AUTOML_CLASSIFIER inside BQML is not the same as standalone Vertex AutoML Tabular — it delegates to AutoML but is invoked via SQL.
- Imported TensorFlow models (
MODEL_TYPE='TENSORFLOW') can only be used for batch prediction viaML.PREDICT, not online serving directly from BQML. - Matrix Factorization requires explicit user and item columns; it does not auto-detect them.
Worked Scenario
Requirement: A retail analyst team knows SQL, has 5 years of daily sales data in BigQuery, and wants to forecast next quarter's demand per SKU. They need holiday effects handled automatically.
Reasoning: Time-series data + SQL team + already in BigQuery + holiday effects → ARIMA_PLUS in BigQuery ML. Not linear regression (no time-series decomposition). Not Vertex AutoML Tabular (requires data export, Python client, more setup). Not Vertex Forecasting (overkill; the question signals SQL preference).
Sign in free to read the full guide
7 more sections (about 2,615 words) continue below. The first domain's study guide is free for every Professional Machine Learning Engineer learner with a free account.