Oryx

Oryx

用 Lambda 架构构建实时机器学习应用Oryx 2 基于 Apache Spark 和 Apache Kafka,面向实时大规模机器学习应用,提供可分层复用的批处理层、速度层、服务层和数据传输机制,并包含可直接部署的机器学习应用实现。

Oryx 页面快照
3
架构层级:通用 Lambda 层、机器学习层和端到端应用层
3
Lambda 层:批处理层、速度层和服务层
3
端到端机器学习场景:协同过滤、聚类、分类与回归
核心能力

从数据传输到模型服务的完整架构

Oryx 可按层或按功能复用,支持构建自定义机器学习应用,也提供面向常见算法的端到端实现。

分层 Lambda 架构

由批处理层、速度层和服务层组成,可根据部署需求按层复用或替换实现。

Kafka 数据传输

使用 Apache Kafka 主题在外部数据源、批处理层、速度层和服务层之间传输数据、模型及模型更新。

批处理与增量计算

批处理层结合历史数据生成新结果,速度层从数据流中产生增量模型更新。

HTTP REST 服务

服务层在内存中维护模型状态,并通过 HTTP REST API 提供同步查询操作,也可接收新数据。

机器学习流程抽象

机器学习层支持测试集与训练集选择、超参数尝试和模型评估,并使用 PMML 管理模型序列化。

内置机器学习应用

提供基于 ALS 的协同过滤、基于 k-means 的聚类,以及基于随机决策森林的分类和回归实现。

官方资源

文档、API 与源码入口

通过官方文档了解终端用户、开发和管理使用方式,并查看 Javadoc、源码及发行版本。

Oryx

从这里开始使用Oryx。