Productionization, Scoring, and MLOps
What this domain tests
Productionization, Scoring, and MLOps tests whether you can move a trained H2O model into scoring, keep it reproducible, and monitor it after deployment.
Core rules
- H2O-3 can score inside the cluster with
h2o.predict(), but production often exports a POJO or MOJO. POJO is Java source; MOJO is a compact binary. MOJO scoring uses theh2o-genmodel.jarruntime and does not need a live H2O cluster. - Driverless AI produces a Python scoring pipeline and a MOJO. The scoring pipeline includes feature engineering; the MOJO is the model artifact. Choose based on whether you need the full preprocessing chain.
- Keep training and scoring schemas identical: column names, types, categorical levels, and missing-value handling. Test with a small batch from the real scoring path before launch.
- Version the data, code, parameters, seed, and artifact. Record the H2O-3 or Driverless AI version, because model behavior can change across versions.
- Monitor inputs and outputs: schema drift, missing-rate drift, score distribution, and delayed label performance. Define retraining triggers before launch.
- Use shadow or canary deployment for model changes; keep a rollback artifact and a documented approval path.
Worked example
A credit team trains a GBM in H2O-3 and deploys real-time decisions in a Java service. Export the MOJO with h2o.download_mojo(get_genmodel_jar = TRUE), embed it in the service, and log the model version with every score. A separate Python batch job uses the Driverless AI scoring pipeline because it needs the same feature engineering as the experiment. The reasoning is that real-time latency favors the embedded MOJO, while batch reproducibility favors the full scoring pipeline.
Traps
- Assuming POJO and MOJO have identical packaging and runtime requirements.
- Sending raw production columns that do not match the training schema.
- Monitoring only accuracy and ignoring input drift.
- Retraining on new data without revalidating and re-versioning.
- Treating a MOJO as retrainable; it is an immutable scoring artifact.