H2O Platform Architecture and Deployment (H2O-3, Driverless AI)
What this domain tests
The H2O Platform Architecture and Deployment domain tests how H2O-3 and Driverless AI are structured, how clients talk to them, and how models leave the training environment. Expect questions on cluster components, REST communication, MOJO/POJO artifacts, and the difference between an H2O-3 AutoML run and a Driverless AI experiment.
Core rules
- H2O-3 is a distributed, in-memory analytics engine. A cluster has nodes, a distributed key/value store (DKV), and a REST API. Python, R, Scala, Java, and Flow are clients; they do not hold the training data.
h2o.init()connects to or starts a cluster. Size memory for the data plus intermediates, not just the raw file. H2O-3 can run on a laptop, Kubernetes, Hadoop/YARN, or Sparkling Water; Spark is optional, not required.- Data is parsed into an
H2OFrame, which is distributed across the cluster. Losing a node can lose data; H2O-3 is not a fault-tolerant database. - Driverless AI is a separate single-node platform, often GPU-accelerated, built around experiments. It performs automatic feature engineering, model selection, and interpretability, and produces a Python scoring pipeline and a MOJO.
- H2O-3 models can be exported as POJO or MOJO. POJO is Java source; MOJO is a compact binary artifact. For external scoring, MOJO plus the
h2o-genmodel.jarruntime is the usual choice. - Driverless AI scoring pipelines include feature engineering; a bare MOJO contains the model, not the full recipe pipeline.
Worked example
A Java microservice needs sub-50 ms credit decisions and cannot call an H2O cluster. Train a GBM in H2O-3, export the MOJO with h2o.download_mojo(get_genmodel_jar = TRUE), and embed it with the MOJO runtime in the service. For a weekly batch job in Python that must reproduce Driverless AI feature engineering, use the exported Driverless AI scoring pipeline instead. The reasoning is deployment latency plus preprocessing ownership.
Traps
- Assuming H2O-3 requires Spark or Hadoop.
- Confusing a Driverless AI experiment with
h2o.automl(). - Thinking a MOJO needs a live H2O cluster to score.
- Using Flow as a production scoring endpoint.
- Forgetting that Driverless AI pipelines and H2O-3 MOJOs package different amounts of preprocessing.