作为 InfoSphere Streams 3.0 和 InfoSphere Information Server 9.1 版本的一部分,这两款产品都进行了改进,让 Streams 应用程序和 DataStage 作业之间的集成变得更容易。
本文提供了解释如何在 Streams 应用程序和 DataStage 作业之间创建端到端集成场景的技术细节。阅读本文后您将熟悉以下概念:
从 Streams 应用程序将数据发送到 DataStage 作业,包括如何: 创建或修改一个现有 Streams SPL 应用程序,从而将数据流发送到一个 DataStage 作业。 导出修改后的 Streams 应用程序元数据,
然后将其导入 Information Server 环境。 创建或修改可使用 Streams 应用程序数据的现有 DataStage 作业。 将数据从 DataStage 作业发送到 Streams 应用程序,包括如何: 创建或修改一个现有 DataStage 作业,从而将数据流发送到一个 Streams 应用程序。 导出 DataStage 作业元数据,并使用导出的元数据生成 Streams 应用程序 SPL 存根代码。 使用所生成的 SPL 存根代码创建或修改现有 Streams 应用程序。
本文是本系列文章的第 1 部分,这些文章将帮助您集成两款核心 IBM ">Big Data 计划产品。第 1 部分重点介绍一个简单场景,帮助您熟悉集成这些产品的基本技术细节。第 2 部分将深入探讨可用于将 Streams 近乎实时的分析功能连接到 DataStage ETL 引擎的元数据接口及其丰富的连接特性。
集成架构
InfoSphere Streams 和 InfoSphere DataStage 之间的集成是通过大量设计时间和 Information Server 9.1 与 InfoSphere DataStage Integration Toolkit for Streams 提供的运行时组件完成的。
IBM InfoSphere DataStage Integration Toolkit 提供可推动 IBM InfoSphere Streams 和 IBM InfoSphere DataStage Streams 实现集成的操作符与命令。InfoSphere DataStage 和 InfoSphere Streams 应用程序的集成涉及数据流在应用程序之间的流动以及配置它们来使用这些数据。通过 DataStage 端的 InfoSphere Stream 连接器和 Streams 端的 DSSource 操作符或 DSSink 操作符来完成集成工作。
通过将数据从 IBM InfoSphere DataStag 发送到 InfoSphere Streams,在通过 IBM InfoSphere DataStage 将数据加载到数据仓库的同时,InfoSphere Streams 可执行近乎实时的分析处理(RTAP)。或者,当数据从 InfoSphere Streams 发送到 InfoSphere DataStage 时,InfoSphere Streams 作业将执行 RTAP 处理,然后将数据转发到 IBM InfoSphere DataStage 来补充、转换和存储细节,以便进行归档和传承。
图 1 中的图表是这种连接的一个示例。
图 1. Streams 和 DataStage 作业之间的运行时数据流
在下列两个方向上支持 Streams 作业和 DataStage 作业之间的设计时间集成。
从 Streams 到 DataStage。该过程涉及在 Streams 端生成端点元数据文件,将这些文件导入 Information Server 存储库,然后在 DataStage 作业内的 Streams Connector 配置中使用这些元数据。 从 DataStage 到 Streams。DataStage 作业元数据在 Streams 端通过 DataStage Integration Toolkit 导入,Streams 端创建可在大型 SPL 应用程序中使用的 SPL 代码。
将元数据从 Streams 导入 DataStage 的步骤如图 2 所示。
图 2. 从 Streams 到 DataStage 作业的设计时间集成步骤
运行 DataStage Integration Toolkit 的 generate-ds-endpoint-defs 命令来从一个或多个 Streams 应用程序描述语言(ADL)文件中收集端点详情,创建一个应用程序端点描述文件。 将端点描述文件从 Streams 机器复制到一个将运行 InfoSphere Metadata Asset Manager (IMAM) 的客户端机器。 运行 IMAM 并选择 InfoServer Streams 连接器。选择端点描述文件并将端点元数据导入 Information Server 存储库。 在 DataStage Designer 中设计 DataStage 作业。将一个 Streams 阶段添加到该作业后,配置该阶段并选择端点元数据。使用这些元数据来填充链接上的列并设置连接属性。
将元数据从 DataStage 导入 Streams 所需的步骤如图 3 所示。
图 3. DataStage 到 Streams 作业的设计时间集成步骤
Streams 端任务也可以在 Streams Studio 中完成。