计划
通过多步工作流,可以使用大数据服务在 OCI 中实施数据湖。
-
要求:列出 OCI 中新环境的要求
-
评估:评估所需的 OCI 服务和工具
-
设计:为 OCI 设计解决方案架构和调整规模
-
计划:创建详细的计划映射您的时间和资源
-
预配:在 OCI 中预配和配置所需的资源
-
实施:实施数据和应用负载
-
自动化管道:为自动化编排和调度工作流管道
-
测试和验证:对解决方案执行端到端验证、功能和性能测试。
确定需求
首先,您需要制作一份系统和应用程序要求的目录。
下表提供了示例模板,并可以用作适应您的用例的起点。
| 发现主题 | 当前设置 | OCI 要求 | 注释和备注 |
|---|---|---|---|
| 数据大小 | - | - | - |
| 增长率 | - | - | - |
| 文件格式 | - | - | - |
| 数据压缩格式 | - | - | - |
| 数据中心详细信息(适用于混合架构) | - | - | - |
| VPN/FastConnect 设置的网络连接详细信息 | - | - | - |
| DR(RTO、RPO) | - | - | - |
| HA SLA | - | - | - |
| 备份策略 | - | - | - |
| 基础设施管理和监视 | - | - | - |
| 通知和预警 | - | - | - |
| 维护和升级过程 | - | - | - |
| 服务台 / 事件管理 | - | - | - |
| 验证方法 | - | - | - |
| 授权方法 | - | - | - |
| 加密详细信息(静态和动态) | - | - | - |
| 密钥和证书进程 | - | - | - |
| Kerberos 详细信息 | - | - | - |
| 合规性要求 | - | - | - |
| 每个来源的数据源和摄取技术 | - | - | - |
| ETL 要求 | - | - | - |
| 分析要求 | - | - | - |
| 数据查询要求 | - | - | - |
| BI/ 可视化, 报告要求 | - | - | - |
| 与其他解决方案的集成 | - | - | - |
| 记事本和数据科学负载详细信息 | - | - | - |
| 工作流、编排和调度要求 | - | - | - |
| 批处理工作负载 - 每个作业和应用程序的详细信息 | - | - | - |
| 交互式工作负载 - 用户数、每个作业和应用程序的详细信息 | - | - | - |
| 流式处理工作负载 - 有关每个作业和应用的详细信息 | - | - | - |
| 与数据资源池集成的每个应用的详细信息 | - | - | - |
| 团队详细信息(sys 管理员、开发人员、应用程序所有者、最终用户) | - | - | - |
评估
在此阶段,分析在需求阶段收集的所有数据和信息。
然后使用该信息确定在 OCI 中需要哪些服务和工具。评估结束时,您应采用高级别架构以显示要使用的每个 OCI 数据服务以及在该服务上将实现的功能。
下图是您在此阶段创建的体系结构类型的示例。

插图 architecture-hadoop-datalake.png 的说明
设计
在此阶段,确定 Oracle Cloud Infrastructure (OCI) 的解决方案体系结构和初始大小。
使用您在评估阶段创建的参考体系结构作为起点。
您需要深入了解 OCI 平台以及如何在 OCI 中构建应用。您还需要在 OCI 中设置网络和 IAM 策略。
计划
在此阶段,创建包含时间和资源映射的详细项目计划。
对于每项活动,应确定任务、利益相关方 RACI 和时间表的详细信息。
物料清单
根据您的评估和设计,在 OCI 中为目标环境创建 BOM
列出要使用的每个服务及其大小和配置信息。下表是可能包含在物料清单中的项目的示例。
| OCI 服务 | 调整大小和配置 |
|---|---|
| 大数据服务 | - |
| 数据科学 | - |
| 数据目录 | - |
| 虚拟机 | - |
| 块存储 | - |
| 对象存储 | - |
| Autonomous Data Warehouse | - |
| 虚拟云网络 | - |
| 身份和访问管理 | - |
大数据服务计划
本节讨论在大数据服务 (Big Data Service, BDS) 中启动集群所需的重要选择
BDS Hadoop 集群在 OCI 计算实例上运行。您需要确定要使用的实例类型。这些实例在虚拟云网络 (Virtual Cloud Network, VCN) 子网中运行。它们需要在启动集群之前进行配置。您还必须阻止对连接到集群节点的块存储卷的存储要求。此外,还需要配置 IAM 策略。
节点有两种类型:
-
主节点和实用程序节点。这些节点包括运行和管理集群所需的服务。它们不会存储或处理数据。
-
Worker 节点:这些节点存储和处理数据。员工节点的丢失不会影响群集的运行,但会影响性能。
集群可以在安全、高可用性或最小(非 HA)模式下部署。您还需要为要配置的 Hadoop 组件及其大小制定一个计划。查看“浏览更多”部分中的 BDS 文档链接,了解更多配置和调整集群大小。
可以使用下表帮助创建 BDS 集群的计划。
| 主题 | 调整大小和配置 |
|---|---|
| 安全、高可用性或最小(非 HA)配置 | - |
| worker 节点数 | - |
| 每个节点的存储 | - |
| 主节点计算实例类型和配置 | - |
| Worker 节点计算实例类型和配置 | - |
| 主节点 1 Hadoop 服务配置 | - |
| 主节点 2 Hadoop 服务配置(如果适用) | - |
| 实用程序节点 1 Hadoop 服务配置 | - |
| 实用程序节点 2 Hadoop 服务配置(如果适用) | - |
| 实用程序节点 3 Hadoop 服务配置(如果适用) | - |
| Worker 节点 Hadoop 服务配置 | - |
| 虚拟云网络详细信息 | - |
| 已应用身份和访问管理策略 | - |
| Ambari 配置 | - |
| HDFS 配置 | - |
| Hive 配置 | - |
| HBase 配置 | - |
| Spark 配置 | - |
| Oozie 配置 | - |
| Sqoop 配置 | - |
| Tez 配置 | - |
| Zookeeper 配置 | - |
在规划体系结构中其他服务的构成和大小时,可以使用类似的表。
预配
根据 BOM 中的最终状态架构设计和规模信息,根据项目计划中列出的任务在 OCI 中预配和配置所需的资源。
配置 IAM
为 BDS 集群创建具有访问权限的其他 IAM 组。
您应该将 BDS 群集管理任务委派给一个或多个 BDS 管理员。
如果组名为 bds-admin-group,并且新集群位于集群区间中,您将创建以下策略:
allow group bds-admin-group to manage virtual-network-family in compartment Cluster
allow group bds-admin-group to manage bds-instance in compartment Cluster还使用以下策略语句创建策略:
allow service bdsprod to
{VNIC_READ, VNIC_ATTACH, VNIC_DETACH, VNIC_CREATE, VNIC_DELETE,VNIC_ATTACHMENT_READ,
SUBNET_READ, VCN_READ, SUBNET_ATTACH, SUBNET_DETACH, INSTANCE_ATTACH_SECONDARY_VNIC,
INSTANCE_DETACH_SECONDARY_VNIC} in compartment Cluster配置 VCN
至少,单个区域需要单个具有单个子网的 VCN,可以访问公共互联网。
对于复杂生产环境,可以有多个子网和不同的安全规则。您可能需要将 VCN 连接到内部部署网络,或者连接到其他区域中的其他 VCN。有关 OCI 网络的更多详细信息,请参阅 OCI 文档。
创建 BDS 集群
选择集群的名称, 主节点, 实用程序和 worker 节点的集群管理员密码和大小。
创建集群时,可以选择其名称、集群管理员密码以及主节点、实用程序和 worker 节点的大小。还有一个复选框用于选择安全性和高可用性 (HA) 集群配置。HA 为您提供了四个主节点和实用程序节点,而非最小的非 HA 配置中的两个节点。
确保在您希望集群所在的区间以及您希望集群所在的 VCN 中创建集群。另外,请确保群集专用网络的 CIDR 块与包含群集的子网的 CIDR 块范围不重叠。
访问 BDS 集群
大数据服务节点默认分配有专用 IP 地址,无法从公共互联网访问这些地址。
可以使用以下方法之一使集群中的节点可用:
- 您可以将集群中选定节点的专用 IP 地址映射到公共 IP 地址,以使其在互联网上公开。
- 可以使用堡垒主机设置 SSH 隧道。只有堡垒主机会公开到公共互联网。通过堡垒主机可以从公共互联网访问集群的专用网络。
- 您可以使用 VPN 连接在内部部署网络和 VCN 之间提供站点到站点互联网协议安全 (IPSec) VPN。您还可以使用 OCI FastConnect 访问 OCI 中的服务,而不通过公共互联网。通过 FastConnect,通信通过专用物理连接传输。
管理 BDS 集群
对于具有 Oracle Distribution(包括 Apache Hadoop (ODH) 的 BDS,可以使用 Apache Ambari 管理集群。
它在群集的实用程序节点上运行。您必须通过在网络安全列表中配置入站规则来打开节点上的端口 7183。
要访问 Ambari,请打开浏览器窗口并输入具有实用程序节点 IP 地址的 URL,例如:https://<ip_address_or_hostname>:7183
使用在创建群集时输入的群集管理员用户(默认管理员)和密码。

插图 ambari-dashboard-metrics.png 的说明
实施
开始为每个阶段实施应用程序和服务。在选择特定服务之前,需要考虑多个标准。
请注意,某些服务可以用于多个阶段。例如,大数据服务具有可在摄取阶段、存储阶段和转换阶段中使用的组件。
提取
-
数据传输设备:如果迁移到 OCI,则可以使用数据传输服务将数据脱机迁移到对象存储。
-
大数据服务:大数据服务提供了常用的 Hadoop 组件,用于摄取数据,包括 Kafka、Flume 和 Sqoop。用户可以根据需求配置这些工具。Kafka 可用于实时摄取事件和数据。例如,如果用户具有来自应用或服务器的事件,并且他们希望实时摄取事件,则可以使用 Kafka,并且可以将数据写入 HDFS 或对象存储。Flume 可以用于将流数据摄取到 HDFS 或 Kafka 主题中。Sqoop 是一个最常见的 Hadoop 工具,用于从关系数据库和数据仓库等结构化数据存储中提取数据。
Store - 存储
-
大数据服务:BDS 提供标准 Hadoop 组件,包括 HDFS 和 HBase。可以将数据从 Spark 流处理、Spark 批处理或任何其他作业写入 HDFS。HBase 提供了在 HDFS 上运行的非关系分布式数据库。它可用于存储作为键 - 值对存储的大型数据集。可以在摄取或转换过程中从 Spark 作业读取和写入 HBase 数据。
-
对象存储:OCI 对象存储服务是互联网规模的高性能存储平台,可提供经济高效的可靠数据持久性。它可以存储任意内容类型的数据量不受限制,包括分析数据和丰富的内容(例如图像和视频)。在此模式中,对象存储可以用作通用 Blob 商店。大数据服务和其他服务可以读取和写入对象存储中的数据。
转型和服务
-
大数据服务 (Big Data Service, BDS):BDS 提供 Hadoop 组件,例如可用于处理数据的 Spark 和 Hive。Hive 和 Spark SQL 可用于对 HDFS 和对象存储数据运行 SQL 查询。数据存储在 HDFS 或对象存储中后,可以通过指向数据来创建表,然后任何商务智能 (BI) 工具或定制应用都可以连接到这些接口来运行针对数据的查询。用户可以在火花中编写复杂的批处理作业,这些作业可能正在处理大数据,或者具有多个阶段的非常复杂的转换。Spark 可用于实施从多个源(包括 HDFS、HBase 和对象存储)进行读写作业。Oracle Cloud SQL 是一项可用附加服务,允许您对 HDFS、Kafka 和 Oracle 对象存储中的数据启动 Oracle SQL 查询。
BI、ML、可视化和治理
-
数据目录:使用 OCI 数据目录服务从 Oracle Cloud Infrastructure 生态系统和内部部署的数据源中收集元数据,以创建数据资产的清单。您可以使用它来创建和管理具有类别、子类别和业务术语的企业词汇,从而使用用户添加的标记构建业务概念的分类,从而提高搜索效率。这有助于改善治理,并使数据消费者能够更轻松地找到分析所需的数据。
-
数据科学:数据科学是一个完全托管的无服务器平台,可供数据科学团队在 Oracle 云基础设施中构建、训练、部署和管理机器学习模型。它为数据科学家提供了一个项目驱动的协作工作区,其中包含 Jupyter Notebook 和以 python 为中心的工具、库和包,这些工具由开源社区与 Oracle Accelerated Data Science Library 一起开发。它与堆栈中的其余部分集成,包括数据流、Autonomous Data Warehouse 和对象存储。
-
Oracle Analytics Cloud (OAC):OAC 提供人工智能支持的自助分析功能,可用于数据准备、发现和可视化;智能企业和即席报告以及增强分析;以及自然语言处理 / 生成。
