Autonomous Data Warehouse 上的机器学习平台

为了跟上快速变化的信息需求,组织正在寻找每个机会来快速培训、部署和管理机器学习 (ML) 模型。

借助 Oracle Autonomous Data Warehouse (ADW),您可以使用所有必要的内置工具来加载和准备数据,以及训练、部署和管理机器学习模型。这些服务包含在 Autonomous Data Warehouse 中,但您还可以灵活地混合和匹配其他工具,以更好地满足组织的需求。

此参考体系结构将技术解决方案定位在总体业务环境中:

下面是数据驱动的业务说明 - context.png
插图数据驱动的业务说明 -context.png

当企业将数据仓库或数据集市与云中的机器学习平台结合实施时,他们通常需要将多个服务组合在一起来实施端到端解决方案。虽然对于一些组织来说,这是可以实现的,对于缺乏经验或资源的其他组织来说,这可能是一项艰巨的任务。

全面的机器学习平台应至少包括以下内容:

  • 轻松访问结构化和非结构化数据
  • 能够构建和管理数据工程管道
  • 能够大规模构建模型和评分数据以满足业务目标
  • 构建机器学习模型的协作平台
  • 管理和部署模型的简单流程
  • 使用 AutoML 扩展能够构建机器学习模型的人员的范围,并加快数据科学家的工作

Autonomous Data Warehouse 中包含的工具的机器学习平台为部门和组织提供了一种有效的方法,可以在不严重依赖 IT 资源和可用性的情况下实现机器学习的优势。此外,产品更新和安全补丁程序通过 Autonomous Data Warehouse 自动处理。

体系结构

此体系结构使用 Oracle Autonomous Data Warehouse 中嵌入的数据科学和机器学习功能来分析来自广泛企业数据资源的数据,以便进行业务分析和机器学习。

下图显示了用户可以遵循的多个路径,具体取决于用例。最简单的路径(实线)提供了一种简单的方法来执行数据工程任务、构建机器学习模型以及使用 Autonomous Data Warehouse (ADW) 中嵌入的工具管理和部署模型。对于更高级的用例(虚线),我们提供了其他 Oracle Cloud Infrastructure (OCI) 服务,这些服务与 ADW 中包含的服务无缝集成(括在灰线框中)。

后面是 ml-adw-architecture.png 的说明
插图 ml-adw-architecture.png 的说明

ml-adw-architecture-oracle.zip

该体系结构侧重于以下逻辑分部:

  • 摄取、转换

    摄取并细化要在体系结构的每个数据层中使用的数据。

  • 持久、轮廓、创建

    便于访问和导航数据以显示当前业务视图。对于关系技术,数据在逻辑或物理结构上可能采用简单的关系、纵向、维或 OLAP 形式。对于非关系数据,此层包含一个或多个数据池(从分析流程输出或针对特定分析任务优化的数据)。

  • 分析、学习、预测

    抽象使用者数据的逻辑业务视图。这种抽象有助于对发展、迁移到目标架构以及从多个联合来源提供单个报告层采取敏捷的方法。

下图显示了使用安全最佳实践将体系结构映射到 Oracle Cloud Infrastructure 上提供的服务。



oci-adb-oac-arch-gw-oracle.zip

体系结构具有以下组成部分:

  • 数据集成

    Autonomous Data Warehouse 附带了获取、加载和转换数据所需的嵌入式工具,适用于许多部门方案和特定高级用例。随 Autonomous Data Warehouse 提供的一项加载功能,允许您从本地或对象存储快速加载数据。此外,还包括自治数据转换,允许您连接到来自许多不同源类型的数据并访问 ELT 类型功能。

    对于更高级的用例,有 Oracle Cloud Infrastructure Data IntegrationOracle Cloud Infrastructure Data Integration 是完全托管的无服务器原生云服务,可帮助您执行常见的提取、加载和转换 (ETL) 任务,例如从不同源摄取数据、清理、转换和重新配置这些数据,然后高效地将其加载到 Oracle Cloud Infrastructure 上的目标数据源。

  • Autonomous Data Warehouse

    Oracle Autonomous Data Warehouse 是一种自我驱动、自我保护和自我修复的数据库服务,针对数据仓库工作负载进行了优化。您无需配置或管理任何硬件,也不需要安装任何软件。Oracle Cloud Infrastructure 处理创建数据库以及备份、打补丁、升级和优化数据库。

    通过 Autonomous Data Warehouse ,您可以灵活地将数据加载到多种格式中,包括结构化、JSON、XML、图形和空间。使用此服务捆绑在一起的自治工具是允许您将数据轻松加载到表中并执行 ETL 操作的自治工具。

    Oracle Machine Learning 内置在 Autonomous Data Warehouse 的核心中。这样可以在数据库的内核中运行数据库内算法并生成一类数据库对象以立即部署。

  • 对象存储

    Oracle Cloud Infrastructure Object Storage 是一个网络规模的高性能存储平台,提供可靠且经济高效的数据持久性。Oracle Cloud Infrastructure Object Storage 可以存储任何内容类型(包括分析数据)的无限量非结构化数据。您可以直接从互联网或云平台安全地存储数据或检索数据。使用多个管理界面,您可以轻松启动小型且无缝扩展,而无需遇到性能或服务可靠性的任何降级。

  • 预测

    Oracle Machine Learning Services 扩展 Oracle Machine Learning (OML) 功能,通过 REST API 支持数据库内 Oracle Machine Learning 模型和第三方开放神经网络交换 (Open Neural Networks Exchange, ONNX) 机器学习模型的模型部署和模型生命周期管理。Oracle Machine Learning Services 支持应用程序和仪表盘的实时和小批量评分。

    REST API for Oracle Machine Learning Services 通过 Autonomous Data Warehouse 为 REST 端点提供验证。使用这些端点可以存储和管理机器学习模型及其元数据。这些端点还可以为模型创建评分端点。

    Oracle Machine Learning Services 支持第三方分类或回归模型,这些模型可以使用 Scikit-learn 和 TensorFlow 等软件包构建,然后以 ONNX 格式导出。Oracle Machine Learning Services 支持针对主题搜索、关键字、摘要、情绪和相似性的集成认知文本分析。Oracle Machine Learning Services 还支持通过第三方 ONNX 格式模型部署进行映像分类,并支持使用映像或定点符进行评分。

    用户还可以使用 SQL、R 和 Python 中的数据库内模型直接在数据库中预测单例、小批量和大批量评分。用户可以利用 OML4Py 嵌入式 Python 执行通过第三方软件包生成的模型调用用户定义的 Python 函数,并从 Python 和 REST 接口进行预测。

  • 学习

    Oracle Machine Learning Notebooks 为数据科学家、业务和数据分析人员提供了一个协作式用户界面,可用于处理 SQL 和 Python 解释器,同时在 Oracle Autonomous Database 中执行机器学习,包括 Autonomous Data Warehouse (ADW)、 Autonomous Transaction Processing (ATP) 和 Autonomous JSON Database (AJD)。Oracle Machine Learning Notebooks 使更广泛的数据科学团队(数据科学家、公民数据科学家、数据分析师、数据工程师、DBA)能够协同工作,以可视方式探索数据,并使用 OML4SQL 和 OML4Py 开发分析方法。通过记事本界面,可以通过 Python、SQL 和 PL/SQL 访问 Oracle 的高性能、并行和可扩展的数据库内机器学习算法。还可以通过外部接口(例如 SQL Developer、开源记事本环境和第三方 IDE)连接到 Autonomous Database 来访问数据库内功能。

    OML4Py 还提供了用于自动机器学习 (AutoML) 的 Python API,用于自动算法和功能选择以及自动模型调优和选择。

    Oracle Machine Learning AutoML 用户界面 (OML AutoML UI) 是一个无代码用户界面,可提供自动机器学习功能,从而轻松部署到 Oracle Machine Learning 服务。没有广泛数据科学背景的业务用户可以使用 OML AutoML UI 创建和部署机器学习模型,并生成包含相应 OML4Py 代码的 OML 笔记本以编程方式重建模型并对数据进行评分。

    专家数据科学家可以使用 OML AutoML UI 作为生产率加速器来加快模型探索、便于部署以及初始生成笔记本。

  • 分析

    Oracle Analytics Cloud 是一种可扩展的、安全的公共云服务,可为您、您的工作组和您的企业提供一整套浏览和执行协作分析的功能。

    Oracle Analytics CloudOracle Machine Learning 集成,可访问可在 Oracle Analytics Cloud 工作流和仪表盘中搜索、可视化和部署的数据库内模型。

    借助 Oracle Analytics Cloud,您还可以获得灵活的服务管理功能,包括快速设置、轻松扩展和打补丁以及自动化生命周期管理。

建议

使用以下建议案作为为高级云数据仓库和机器学习操作框架创建平台的起点。

您的要求可能与此处描述的体系结构不同。

  • 摄取、转换

    Autonomous Database Tools 是 Oracle Autonomous Data Warehouse 中嵌入的功能,它提供了加载、转换、目录、获取洞察甚至以简单的方式开发业务模型的功能。

  • 分析、学习、预测

    在将 Oracle Analytics Cloud 连接到 Oracle Autonomous Data Warehouse 之前,请让数据库管理员允许 Oracle Analytics Cloud 实例的 IP 地址(或地址范围)。数据库管理员必须添加允许从 Oracle Analytics Cloud 到数据库的 TCP/IP 通信的安全规则。

考虑事项

与云数据仓库一起创建机器学习操作框架时,请考虑以下实施选项。

  • 数据重力:使机器学习操作框架与数据保持一致,以限制数据移动的高成本,无论是金钱还是机器学习模型开发时间(即使对于使用机器学习模型的数据评分也是如此)。
  • 更快的价值:下表中的建议案将帮助您更快地开始并缩短开始实现解决方案价值所需的时间。
指南 推荐 其他选项 原理
摄取、转换 Autonomous Database 工具 Oracle Cloud Infrastructure 数据集成 这与用例相关。要轻松地从对象存储或本地数据存储上的文件加载数据,请使用 Autonomous Database Tools。如前所述,还可以根据用例使用 Autonomous Data Warehouse 数据转换。对于更高级的案例,请使用 Oracle Cloud Infrastructure 数据集成,这是按需服务。
持久 Oracle Autonomous Data Warehouse Autonomous Data Warehouse 是一个云数据仓库,不仅提供数据仓库的分析需求,还提供部署高级 Oracle Machine Learning 操作框架的功能。您还可以通过以任意数量格式和类型存储的外部表直接访问对象存储中的数据。
学习 Oracle Machine Learning Notebooks ,带有 OML4SQL、OML4Py 和 OML4R

Oracle机器学习自动机器学习UI

第三方

OCI 数据科学

OML 记事本是 Autonomous Data Warehouse 平台中包含的协作记事本环境。使用 OML4SQL、OML4Py 和 OML4R,用户可以直接在数据库中构建模型。数据库内模型可以在 Oracle DatabaseAutonomous Data Warehouse 之间导出和导入。用户可以在 Autonomous Database 中将第三方工具与定制条件环境一起使用来构建 Python 和 R 模型,或者在 Oracle Machine Learning 框架之外构建它们,并将这些原生模型存储在数据库数据存储中,以供 OML4Py-embedded 和 OML4R-embedded 执行使用。
预测

Oracle Machine Learning 服务

Oracle Machine Learning Notebooks ,带有 OML4SQL、OML4Py 和 OML4R

Oracle Cloud Infrastructure 数据科学

使用 SQL 查询和 OML4R/OML4Py 接口的数据库内模型

能够通过由 Oracle Machine Learning Services 管理的模型部署的 REST API 对模型进行评分。Oracle Machine Learning 服务还允许通过 ONNX 格式导入在 Oracle Machine Learning 框架外部创建的模型。这可以包括在 Oracle Cloud Infrastructure Data Science 中生成的模型。
访问和解释 Oracle Analytics Cloud 第三方工具 Oracle Analytics Cloud 已完全管理并与 Oracle Machine Learning 框架紧密集成。关键功能之一是能够将 Oracle Machine Learning 中构建的模型部署到 Oracle Analytics Cloud 中,以便进行可伸缩的机器学习和仪表盘。

部署

部署此引用体系结构所需的代码在 GitHub 中可用。单击一次即可将代码拉入 Oracle Cloud Infrastructure Resource Manager,创建堆栈并部署该堆栈。或者,也可以使用 Terraform CLI 将代码从 GitHub 下载到计算机,定制代码并部署体系结构。

  • 使用 Oracle Cloud Infrastructure Resource Manager 进行部署:
    1. 单击 部署到 Oracle Cloud

      如果您尚未登录,请输入租户和用户身份证明。

    2. 查看并接受条款和条件。
    3. 选择要在其中部署堆栈的区域。
    4. 按照屏幕上的提示和说明创建堆栈。
    5. 创建堆栈后,单击 Terraform 操作,然后选择规划
    6. 等待作业完成,然后复核计划。

      要进行任何更改,请返回“堆栈详细信息”页,单击编辑堆栈,然后进行所需的更改。然后,再次运行计划操作。

    7. 如果不需要进一步更改,请返回“堆栈详细信息”页,单击 Terraform 操作,然后选择应用
  • 使用 GitHub 中的 Terraform 代码进行部署:
    1. 转到 GitHub
    2. 将资料档案库克隆或下载到本地计算机。
    3. 按照 README 文档中的说明操作。

更改日志

此日志列出了重要的更改: