bm infosphere cdc ecshop不支持mysqll吗

IBM利用Infosphere Datastage、Infosphere CDC、Infosphere Ware
IBM 提供了全面的、业界领先的数据仓库、业务分析解决方案,包括信息整合工具 Information Server;实时、增量数据复制工具 InfoSphere CDC;数据仓库解决方案 Infosphere Warehouse;业务分析工具 Cognos BI 以及一系业务分析应用等。
本文,主要为大家介绍 IBM 数据仓库、业务分析解决方案,特别是如何利用 Infosphere Datastage、Infosphere CDC、Infosphere Warehouse 及 Cognos 快速建立数据分析应用,以帮助大家快速掌握利用 Infosphere Datastage、Infosphere CDC、Infosphere Warehouse 及 Cognos 开发分析应用的基本方法。
针对数据仓库、业务分析应用,IBM 提供了全面的、业界领先的解决方案。软件方面,提供了集成的、端到端的解决方案,包括信息整合工具 Information Server;实时、增量数据复制工具 InfoSphere CDC;数据仓库解决方案 Infosphere Warehouse;业务分析工具 Cognos BI 以及一系列业务分析应用;针对 Big Data 数据分析,提供了 Infosphere BigInsights 及 Infosphere Streams;针对信息监管,提供了 Quality Stage 数据质量管理工具、Infosphere Optim 数据生命周期管理解决方案、Infosphere Guardium 数据安全解决方案,同时,IBM 还提出了 IBM Smart Analytics System 解决方案,它根据用户预计的数据仓库规模,为用户提供预先配置的、经过优化的、可以扩展的软、硬件整体套装配置方案,包括的型号、配置,存储的配置,网络的配置,可以为用户提供合理的硬件选型,并提供一站式解决方案;IBM 还提供了 Netezza 数据仓库一体机,提供性能优异、配置简单的一站式解决方案;在数据仓库模型方面,IBM 提供了针对银行、电信、保险及零售业的数据仓库模型,可以为用户提供针对行业应用的模板,加速行业应用建模。
IBM 典型的数据仓库解决方案如下图所示,我们采用 Infosphere Warehouse 作为企业数据仓库 EDW 系统;采用 Infosphere Warehouse 作为关系型数据集市系统,Cognos 作为多维数据集市系统;通过 Infosphere CDC 将业务系统的数据实时复制到 ODS 系统中;使用 Infosphere Datastage 批量装载数据到数据仓库或数据集市中;使用 Infosphere CDC 实现增量、实时数据装载功能;使用 Cognos BI 及 Cognos 应用实现业务分析功能。
图 1. IBM 数据仓库解决方案架构
下边,我们通过一个简单的&Sales Performance Analysis&的例子来介绍一下如何利用 Infosphere Datastage、Infosphere CDC、Infosphere Warehouse 及 Cognos 快速建立数据分析应用。
本次试验,我们在 DB2 9.7 中创建了 db2olap 作为 OLTP 数据源,使用 Infosphere Warehouse 提供的 DB2 9.7 创建了 olapdb 作为 ODS/ 数据仓库系统,使用 Inforsphere Datastage 8.7 作为 ETL 工具负责将需要的数据从数据源 db2olap 中抽取、并做适当的转换后装入到 olapdb ODS/ 数据仓库中,同时,我们使用 Infosphere CDC 6.5.1 及 Infosphere Datastage 8.7 提供的 CDC Transaction Stage 实现实时、增量数据装载工作,最后使用 Cognos BI 10.1.1 实现最终的报表展现、OLAP 分析及仪表盘应用。
本次实验环境,我们采用 Redhat Linux 操作系统,内核 2.6.1,并且在上面安装了如下的软件:
IBM Information Server 8.7
Inforsphere CDC 6.5.1
IBM Cognos BI Server 10.1.1
IBM HTTP Server 7.0
在 windows 7 客户机上安装了如下的软件:
Cognos BI Model 10.1.1
OLTP 数据源
本次试验,我们在 DB2 9.7 中创建了 db2olap 数据库作为 OLTP 数据源,包括如下表及表结构定义信息:
清单 1. 数据源定义
create table locations_s--location dimension
(city_id char(8) not null primary key,
prov_id varchar(10),
area_id varchar(10),
country_id varchar(10) );
create table city_s
(city_id char(8) not null primary key,
city varchar(10),
city_population int);
create table prov_s
(prov_id varchar(10),
prov varchar(10));
create table area_s
(area_id varchar(10),
area varchar(10));
create table products_s
--products dimension
(product_id varchar(10) not null primary key,
sub_class_id varchar(10),
class_id varchar(10));
create table product_s
(product_id varchar(10) not null primary key,
product varchar(50));
create table subclass_s
(sub_class_id varchar(10),
sub_class varchar(50));
create table times_s
---time dimension
(day_id int not null primary key,
day varchar(10),
month_id int,
month varchar(10),
year_id int,
year varchar(10));
create table salesperf_s
(city_id char(8) not null,
product_id varchar(10) not null,
day_id int not null,
sales decimal(10,2),
costs decimal(10,2),
constraint fk_day
foreign key(day_id)
references times_s,
constraint fk_location
foreign key(city_id)
references locations_s,
constraint fk_product
foreign key(product_id)
references products_s
你最喜欢的帮助企业打造成功软件!
热门搜索:
IBM 企业级数据集成利器之 InfoSphere Change Data Capture
IBM 企业级数据集成利器之 InfoSphere Change Data Capture
| 作者: |
09:55:20| 阅读 0次
概述: InfoSphere Change Data Capture 是一款基于数据库日志的实时数据复制产品,可以在跨平台和异构的数据库环境中实现变化数据的实时复制,在国内外的各个业务领域中有着广泛的应用,为客户在数据迁移,数据整合,数据同步,动态数据仓库,主数据管理以及实时BI分析等应用中提供了出色的解决方案。
1、IBM Change Data Capture简介
(以下简称 CDC)的前身是 DataMirror,2007 年由IBM收购后正式更名为 CDC,并发布了收购后的第一个版本 V6.3,现在最新的版本为 V11.3。
CDC是一款基于数据库日志的实时数据复制产品,可以在跨平台和异构的数据库环境中实现变化数据的实时复制,在国内外的各个业务领域中有着广泛的应用。
CDC提供可保持事务完整性的复制,为客户在数据迁移,数据整合,数据同步,动态数据仓库,主数据管理以及实时BI分析等应用中提供了出色的解决方案。
2、InfoSphere CDC 产品架构
正如上图所示,CDC 的关键组件主要的组成部分包括:
1)Access Server(AS):用户配置和监控 CDC 引擎的安全管理工具,支持图形化界面及命令行。当用户登录 Management Console时,就会连接到 AS。如果在客户端关闭 AS,并不会影响源服务器到目标服务器的数据复制。
2)Management Console(MC):CDC 的图形化界面工具,允许用户配置、监控和管理在多个不同服务器上的数据复制,可以在客户端上指定复制的参数,初始化刷新和镜像复制。MC也允许用户监控复制操作、延迟、事件消息以及性能相关的统计数据。
3)源端引擎:读取源端数据库的日志文件捕获变更数据,经过行列过滤,字符编码转换后由 TCP/IP 发送给目标端。
4)目标端引擎:接收源端发送的变更数据,经过数值转换,字符编码转换,冲突检测后将变更数据应用到目标数据库。
5)Metadata:存储 CDC 实例的配置信息,包括数据库连接信息,预定信息以及表的映射信息等,同时记录当前的复制进行状态。
6)源和目标 Datastore(数据存储):存储的是数据文件和数据复制需要的 InfoSphere CDC 实例信息。每个datastore代表了一个用户要连接的数据库,并存储要复制的表。
多数的 CDC 引擎既可作为源端引擎捕获变化数据又可作为目标端引擎接收变化数据并将其应用于指定的数据库。
3、InfoSphere CDC 工作原理
CDC处理数据的流向图:
1)通过日志读取模块(Log Reader)读取源端数据库中所有活动表的变化日志,并判断出哪些数据变更日志属于CDC配置的预定中所涉及的源端表,并将这些与应用有关的变更日志放在事务队列(Transaction Queue)中
2)日志读取模块读取的日志包括 redo log,archive log,transaction log 等。由于尚未提交的事务也会被CDC日志读取模块读取并放在事务队列中,所以事务队列中记录了各个事务的进行状态。而日志解析模块则负责过滤出事务队列中已经提交了的事务变更日志,并将其放入变更日志存储(Staging Store)中。
3)复制表的事务信息通过 TCP/IP 传送至目标端,可通过 MC 监控复制的数据情况
4)目标段将抽取过来的事务信息经过必要的转换重新组装成 SQL 语句。
5)CDC将组装好的 SQL 语句应用于目标数据库,并更新bookmark信息 (bookmark 信息是为了保证数据的一致性,当由于某种原因复制中断后,在下次 CDC 重启后,目标端的 bookmark 信息首先被传到源端,从而源端从最后一个成功应用到目标数据库的日志开始复制),整个数据复制过程完成。
4、InfoSphere CDC 功能特点
1)灵活的部署方案
可采用单向,双向,并行,级联,集中,分发等多种拓扑结构及其组合的部署方式进行复制。
2)提供大数据量,低延迟的数据复制
捕获实时变化数据,极大地缩短了数据集成窗口!
3)基于日志,无需改变当前IT架构,对生产系统的影响最小
仅读取日志,不访问生产数据库,压力小,无风险!
4)全面的异构数据平台支持
从传统数据库到大数据平台,提供最广泛的支持。
5)提供集配置、管理和监控于一体的图形化界面,管理方便,易于操作
5、InfoSphere CDC 经典应用场景
1)实时运营报表
某运输能力提供商要求其订单信息、负载特征、合同和账单数据与企业的其余部门整合,以便于分配司机负载和分析业务。将这些数据发布和整合到数据仓库和 Web应用一共需要 30 分钟。这意味着用户不仅必须等待数据,还无法掌握实时准确的业务情况。
通过使用 从源系统低影响、实时地抽取数据更改, 能够及时接收数据更改流,并通过 ETL 流程将之应用到数据仓库以及整个企业的其他 Web应用。这不仅可向数据仓库提供实时的更改,而且企业内的多个点可以受益于和利用已更改的数据,对源系统的影响却很小。
2)最小化批处理时窗
某消费品制造商将它的制造数据和销售数字存储在两个位于不同地区的单独 ERP系统上。每天通过夜间批处理作业将数据加载到数据仓库中用于生成报表。但是随着业务的增长,数据量也随之增长,8 小时的夜间批处理时间已明显不够用。
通过使用 InfoSphere CDC 实时地将数据加载到数据仓库中,制造商就可随时掌握准确的最新信息,可以做出更好的业务决策,此外还可以将批处理时窗释放出来用于其他任务.
3)电子商务同步
某商业抵押贷款提供商想使客户能够在线访问他们的贷款和投资状态。它还想开发一些新的 Web 应用,以便客户申请抵押贷款、偿还汽车贷款以及进行基于Internet 的贷款。
通过使用 实时地同步现有系统和新 Web 应用之间的数据,客户可以通过 Internet 即时访问信息和服务。
详情请咨询&&!
客服热线:023-
慧都控件|提供软件技术整体解决方案
云集全球三千余款优秀控件、软件产品,提供行业领先的咨询、培训与开发服务
企业QQ:|电话:023-
服务与支持
重庆 / 023-
北京 / 010-
400-700-1020
慧都旗下网站
慧都科技有限公司 版权所有 Copyright
100%正版软件
400-700-1020
<input type="hidden" id="url" value=""/>IBM Knowledge Center使用 InfoSphere Information Server 集成 Teradata 数据
IBM InfoSphere Information Server 是一个统一、综合的信息集成平台。它可以剖析、清理和转换来自全异数据源的数据,以交付一致准确的业务数据。IBM Information Server 是集成和同步 Teradata 数据与其他 ERP 系统及企业应用程序的理想解决方案。
本文将演示和比较 IBM InfoSphere Information Server 提供的若干种处理 Teradata 数据的集成方法。它将通过一些示例来演示业务集成场景。这些示例将指导您解决 Teradata 数据库中的典型数据集成问题。
产品前提条件及概述如图 1 所示,可以认为 IBM InfoSphere Information 有四个逻辑层:
客户机引擎元数据存储库服务图 1.
IBM InfoSphere Information Server
逻辑层每个逻辑层都定义了一组软件模块,它们可以映射到硬件的物理部分。这些逻辑层可以单独安装在不同的计算机上,或者一起安装在相同的计算机上。Information Server 支持将引擎层部署在对称多处理 (SMP) 计算平台,或者部署在大规模并行处理 (MPP) 计算平台上,以实现高伸缩性和高性能。
InfoSphere Information Server 要求以下组件支持与 Teradata 数据库之间的数据集成:
DataStage Connectivity for Teradata &#8212; 此组件包括 Teradata Connector 和所有其他的 Teradata 早期工作台。作为一个单独的解决方案,Teradata 连接器旨在替代所有的早期工作台。Teradata 连接器安装在引擎层上。但是,Teradata 早期工作台包括客户机层的客户机安装和引擎层的服务器安装。
Teradata Tools and Utilities (TTU) &#8212; 此组件包括许多与 Teradata 数据库协作的产品。TTU 是引擎层上所必需的,并且如果在 ETL 作业中使用了 Teradta 早期工作台,那么还必须安装在客户机层上。TTU 依赖于以下包:
Teradata Generic Security Services (TeraGSS) 客户机包
Teradata Shared Component for Internationalization (tdicu)
Teradata Call-Level Interface (CLIv2)
Teradata Named Pipes Access Module
Teradata FastExport Utility
Teradata FastLoad Utility
Teradata MultiLoad Utility
Teradata TPump Utility
Teradata Parallel Transporter Interface
Teradata Connector 利用了一些全新的 Teradata 特性。它可以在立即访问模式下运行,也可以在批量模式下运行:
立即访问模式 &#8212; 在此模式中,连接器将数据库 SQL 语句发送给 Teradata DBC/SQL 分区并立即从 Teradata 获得实时响应。Tradata DBC/SQL 分区负责处理 SQL 请求。立即模式和 DBC/SQL 分区适合支持低容量数据处理。
批量模式 &#8212; 此模式适合大批量数据处理。在批量模式中,连接器将利用 Teradata 并行传输接口以及在 SMP 和 MPP 中定义的多个计算节点来执行并行数据加载和数据导出操作。Teradata 并行传输接口是一个支持并行的编程接口,可以使用多个计算平台上的多个进程运行批量操作。Teradata 连接器支持 Teradata 并行传输接口中指定的四个驱动程序:
加载驱动程序
使用 FastLoad 协议对空表执行并行加载。
更新驱动程序
使用 Multiload 协议并支持对新表或已有表执行并行插入/更新/删除/更新插入操作。
流驱动程序
使用 TPump 协议对表执行并行实时 DML 操作。流驱动程序将使用低级锁。它允许应用程序在后台对表执行恒定数据加载操作,同时可以执行交互式读取和写入操作。
导出驱动程序
使用 FastExport 协议执行并行数据导入。
Teradata Connector 在
IBM InfoSphere Information Server Version 8.0.1 及更高版本上可用。它的作用是替代所有 Teradata 早期工作台。
Teradata 早期工作台包括:
Teradata Enterprise 工作台 &#8212; 使用多个 FastLoad 和 FastExport 会话的并行批量数据加载和导出解决方案。
Teradata Multiload 工作台 &#8212; 使用
Teradata MultiLoad、TPump 和 FastExport 实用工具的批量数据加载和导出解决方案。
Teradata API 工作台 &#8212; 基于 SQL 语句对 Teradata 数据库提供行到行的读取和写入权限。
Teradata Load 工作台 &#8212; 提供了一个使用 Teradata FastLoad 实用工具的批量数据加载解决方案。
Teradata 早期工作台在 Information Server Version 及更新版本中可用。
本文并不会详细讨论存储过程 (STP) 和 Open Database Connectivity (ODBC) 工作台。IBM InfoSphere Information Server 使用以下工作台提供对多种数据库类型的支持:
STP 工作台允许从 DataStage 作业调用 DB2、Oracle、Teradata、Sybase 和 SQL 服务器中的存储过程。它支持带输入和/或输出参数的存储过程。STP 工作台是用于调用 Teradata 宏、存储过程、纯量函数和表函数的建议解决方案。
ODBC 工作台允许使用 ODBC 驱动程序访问各种数据库系统,包括 Teradata。
表 1 显示了根据用例进行选择的建议选项。稀疏和普通查找的概念请阅读
数据小节。表 1. Teradata 集成选项用例建议解决方案早期选项限制
低容量 Teradata 数据读取
Teradata Connector:立即模式、SQL
Teradata API 工作台
数据插入/更新/更新插入/删除
Teradata Connector:
立即模式、SQL
批量模式、流驱动程序
Teradata API 工作台
Teradata Multiload 工作台
实时数据插入/更新/更新插入/删除
Teradata Connector、
立即模式、SQL
批量模式、流驱动程序
Teradata API 工作台
Teradata Multiload 工作台
针对空表的批量数据加载
Teradata Connector:
批量模式、加载驱动程序
Teradata Enterprise 工作台
Teradata Load 工作台
没有二级索引
没有参考完整性
没有触发器
批量加载/更新已有表
针对没有唯一二级索引的空表的批量数据加载
Teradata Connector
批量模式、更改驱动程序
Teradata Multiload 工作台
没有唯一的二级索引
没有参考完整性
没有触发器
批量数据导出
Teradata Connector
批量模式、导出驱动程序
Teradata Enterprise 工作台
Teradata Multiload 工作台
Teradata Connector
批量模式、导出驱动程序
立即模式、SQL
Teradata Enterprise 工作台
Teradata Multiload 工作台
Teradata API 工作台
Teradata Connector
立即模式、SQL
Teradata API 工作台
多个输入链接和事务支持
Teradata Connector
调用 Teradata 存储过程、宏、纯量函数和表函数
Stored Procedure 工作台 (STP)
使用 Teradata Connector 加载数据
本文将使用一个示例 ETL 作业来演示通过 Teradata 连接器将数据加载到空 Teradata 表中的步骤。图 2 展示了示例作业。作业将从一个平面文件中读取订单。它转换源数据并将其传递给 Teradata 连接器 LoadDataUsingBulkLoad。连接器使用 Teradata 并行传输加载驱动程序将数据加载到一个空的 Orders 表中。违反数据库约束的数据记录将被连接器拒绝并被转发到一个平面文件中。
图 2. 将数据加载到 Teradata Orders 表中图 3 显示了示例源数据。图 3. 示例源数据(5,000 行)(查看图 3 的 。)清单 1 显示了用于创建 Teradata 数据库 Orders 表的 SQL。清单 1. 用于创建 Orders 表的 SQLCREATE SET TABLE Orders ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT
OrderID INTEGER NOT NULL,
CustomerID VARCHAR(5) CHARACTER SET LATIN CASESPECIFIC,
EmployeeID INTEGER,
OrderDate TIMESTAMP(0),
RequiredDate TIMESTAMP(0),
ShippedDate TIMESTAMP(0),
ShipVia INTEGER,
ShipAddress VARCHAR(60) CHARACTER SET LATIN CASESPECIFIC,
ShipCity VARCHAR(15) CHARACTER SET LATIN CASESPECIFIC,
ShipRegion VARCHAR(15) CHARACTER SET LATIN CASESPECIFIC,
ShipPostalCode VARCHAR(10) CHARACTER SET LATIN CASESPECIFIC,
ShipCountry VARCHAR(15) CHARACTER SET LATIN CASESPECIFIC)
UNIQUE PRIMARY INDEX ( OrderID );
为批量数据加载操作设置 LoadDataUsingBulkLoad Teradata 连接器需要两个主要步骤:
启动连接器导入向导,如图所示,并导入
Orders 表的定义。
图 4. 启动 Connector Import
打开连接器的 Properties 选项卡,如图 5 所示,并设置 Teradata 数据操作。
图 5. Teradata Connector 属性编辑器导入 Teradata 表定义
本节中的屏幕快照将演示导入 Orders 数据库表定义的步骤。
如图 6 所示,选择 Teradata Connector 导入 Teradata 表模式。Teradata connector variant 8.1 支持 Teradata TTU 8.1 和 8.2。variant 12 支持 Teradata TTU 12 和 13。本示例将使用 TTU 8.2。如图 5 和图 6 所示,这些示例作业将选择 Teradata connector variant 8.1。
图 6. 选择 Teradata 连接器进行 Metadata 导入
如图 7 所示,指定 Teradata Director Program ID (TDPID)、用户名和密码,以便导入向导可以连接到 Teradata 数据库。Teradata 客户机应用程序将使用 TDPID
别名连接到 Teradata 数据库。TDPID 参数定义在机器主机文件中(在 UNIX&#174; 中为 /etc/hosts,在 Windows&#174; 中为 \windows\system32\drivers\etc\hosts)。
图 7. 输入连接详细信息如图 8 所示,指定从何处导入表。此信息主要供 DataStage 用于跟踪表定义的原始源。
输入位置详细信息
如图 9 所示,提供筛选器缩小表搜索结果范围。
图 9. 按数据库和表名筛选表列表
如图 10 所示,与图 9 中设定的筛选条件匹配的所有表都将返回。选择要进行导入操作的
Orders 表。
图 10. 选择一个 Teradata 表
图 11 显示了导入操作的确认屏幕。单击 Import 按钮开始导入操作。在本例中,根据 Orders 表的数据库表模式在 DataStage 存储库中创建一个名称为 test.Orders 的 DataStage 表定义。
图 11. 确认导入操作在 Property Editor 上设置批量加载操作
本节中的屏幕快照将演示使用 Teradata Parallel Transport 加载驱动程序定义批量加载操作的步骤。
如图 12 所示,打开连接器的 Columns 选项卡,选择 OrderID 列作为键并单击
Load 按钮将 test.Orders 表定义从 DataStage 存储库加载到
LoadDataUsingBulkLoad 连接器。
图 12. 加载 Columns 定义
如图 13 所示,返回连接器的 Properties 选项卡并为 Terdata 加载操作指定以下参数:
连接详细信息:Teradata Program Director ID (TPDID)、用户名、密码和数据库。
用于与 Teradata 服务器通信的 Teradata 客户机字符集。
目标数据库表名、自动生成 SQL 和表操作。连接器将根据 Orders 的目标表名以及图 12 中所选择的列定义创建插入 SQL 语句。在数据加载操作开始之前,选择 Truncate 表操作删除 Orders 表中的所有已有行。
批量访问方法和驱动程序。选择加载驱动程序将数据加载到空
Orders 表中。
睡眠和韧度设置。
Teradata 数据库将限制可并发运行的 FastLoad、MultiLoad 和 FastExport 任务的数量。这将由 MaxLoadTasks 和 MaxLoadAWT DBS 控件字段控制。通常,其限制是从 5 到 15。睡眠和韧度设置将影响超过限制时连接器重新尝试连接到数据库的方式。睡眠值将指定重试之间的时间间隔(分钟)。韧度值将指定登录重试的超时时间(小时)。图 13. 输入连接详细信息并设置批量加载操作
如图 14 所示,在连接器的 Properties 中继续为 Teradata 加载操作定义参数值:
Record Count 用于设置检查点。连接器支持 Teradata 并行传输中的检查点和重启特性。检查点定义数据库在加载流程中成功处理指定数量的记录时的时间点。如果在检查点后出现了任何错误,则可以从检查点后的行重新启动加载流程。本示例每隔 1,000 行设定一个检查点。
Sync 表和操作。
连接器支持使用在多个计算节点中运行的多个进程来执行数据加载操作。连接器依赖于 Teradata 并行传输接口,它要求在加载流程的各点同步多个进程。本例指定连接器将创建并使用 jli_sync_table 表进行进程同步。
最多会话和最多分区会话。
这两个参数指定用于数据加载操作的最大会话数量,以及各加载进程所使用的最大会话数量。本例运行于两个计算节点之上,并且目标 Teradata 数据库有两个 AMP。图 14 中的值指定两个进程使用两个会话将数据加载到数据库表中。
数组大小。
此参数指定在将数据发送给加载驱动程序之前应该缓存多少行。加载驱动程序将使用连接器中的数据并构建 64k 缓冲以便发送给 Teradata 数据库。
图 14. 重新启动、并行加载和同步等
打开 Rejects 选项卡,指定如何处理错误情况。如图 15 所示,指定以下项目:
选择 Duplicate key 和 SQL errors,将导致这些错误的记录发送给拒绝链接。
选择 ERRORCODE 和 ERRORTEXT 将这些列添加到各个被拒绝的数据记录,表明记录被拒绝的原因。其他选择不适用于加载驱动程序。本例中未使用的一种特殊的筛选条件是 Success 条件。Success 筛选器的作用是将成功处理的记录转发给下一个工作台进行处理。图 15. 设置拒绝链接
如图 16 所示,两个示例记录中的批量加载操作结果被发送给拒绝链接,因为它们违反唯一的主键约束。
图 16. 被拒绝的记录(查看图 16 的 。)使用 Teradata Connector 提取数据
本节将使用一个示例 ETL 作业来演示从名称为 Orders 的 Teradata 表中提取数据的步骤。图 17 展示了示例作业,它使用立即访问模式。作业使用名为 ExtractOrders 的 Teradata 连接器从 Orders 数据库读取订单。作业将转换提取的数据并将其传送到名为 SaveExtractedData 的序列文件工作台。
ExtractOrders 连接器将使用相同的表定义,如
所示, 以及相同的连接详细信息,如
所示。图 17. 从 Teradata Orders 表提取数据如图 18 所示,为数据提取操作指定以下参数:
通过 Teradata DBC/SQL 分区运行 SQL 的立即访问方法。此作业只能在 DataStage 指导者节点上以序列模式运行,并且它适合于小量数据提取。要支持并行提取大容量数据,需要配置指导者使用批量访问方法和 Teradata Parallel Transporter 导出驱动程序。
选择语句。
指导者可以使用如
所示的表名和列定义生成 SQL。在本例中,SQL 语句将手动输入。
记录计数。
记录计数通常与 End of Wave 特性结合使用。您可以使用 End of Wave 特性将输入/输出记录划分为许多小事务,或者工作单元。本例未使用 End of Wave 特性,并且记录计数不会影响数据提取操作。
数组大小。
数组大小主要用于为连接器缓存输入记录,以便于立即和批量加载操作。它不会对此数据提取操作造成影响。连接器将 Teradata 数据库与连接之间通信的最大包大小设置为 64k 或者 1MB(如果 Teradata 数据库服务器通过四字节替代包报头 (APH) 支持 1MB 大小的包)。
图 18. 设置数据提取操作查找 Teradata 数据
本节将使用两个 ETL 作业演示根据输入记录查找 Teradata 数据的步骤。这些示例将根据输入订单 ID 查询订单详细信息。以下小节将讨论
DataStage 支持的两种查找方法:普通查找和稀疏查找。
对于普通查找来说,所有引用的数据都将从目标数据库中检索一次,并缓存在缓存或磁盘中。对于各输入记录,缓存引用数据将通过交叉检查来查找结果。
图 19 展示了某示例作业的查找工作台和 Teradata 连接器,可用于执行普通查找。Teradata 连接器对 Orders 表执行完整的表查询,并将查询结果发送给名为 NormalLookup 的查找工作台。查找 工作台将缓存查询结果并根据 OrderID 输入链接中的订单 ID 对缓存的订单详细信息执行查找操作。结果将发送给输出链接 OrderDetails。此作业要求一次完整的表数据库查询。图 19. 用于执行普通查找的 DataStage 作业执行普通查找需要两个主要步骤:如图 20 所示,设置用于执行普通查找的查找工作台。
图 20. 设置用于执行普通查找的查找工作台
如图 21 所示,指定以下参数针对普通查找设置 Teradata 连接器:
普通查找类型。
立即访问方法。
批量访问方法也可以在普通查找中使用。
Orders 目录表和自动生成 SQL。连接器将根据目标表和列定义在运行时生成查询 SQL。 图 21. 针对普通查找设置 Teradata 连接器稀疏查找
对于稀疏查找来说,它将根据每条输入记录来生成数据库查询,并且查询将被发送给目标数据库以获取结果。
图 22 展示的示例作业的查找工作台和 Teradata 连接器可用于执行稀疏查找。对于各订单 ID,SparseLookup 查找工作台会将订单 ID 发送给名为 GetOrderByID 的 Teradata 连接器。连接器将根据订单 ID 查询订单详细信息并将查询结果返回给查找工作台。查找工作台将查询结果转发给输出链接 OrderDetails。作业对各订单 ID 执行一次数据库查询。由于有四个订单 ID,因此作业执行了四次数据库查询。
图 22. 用于执行稀疏查找的 DataStage 作业执行稀疏查找需要两个主要步骤:
如图 23 所示,设置查找工作台执行稀疏查找。
图 23. 针对稀疏查找设置查找工作台
如图 24 所示,指定以下参数设置用于稀疏查找的 Teradata
稀疏查找类型。
立即访问方法。不可以在稀疏查找中使用批量访问方法。
Orders 目标表和自动生成 SQL。
连接器将根据目标表和列定义在运行时生成查询 SQL。
图 24. 针对稀疏查找设置查找工作台Teradata Enterprise Stage (TDEE) 是自 DataStage Version 7.x. 之后可用的一种早期 Teradata 工作台。
TDEE 是一种本机 PX-operator,它提供了以下特性:
它是用于加载和导出大量数据的高性能解决方案。Teradata 通过批量模式选项中的加载和导出驱动程序提供等价的功能。
它使用 Teradata 调用杠接口 CLIv2 和 FastLoad/FastExport 协议。
它支持 Teradata 客户机版本 8.x、12.x 和 13.x。
它不支持更新、更改插入或稀疏查找操作。
它不支持 End of Wave 和拒绝链接特性。图 25 所示的示例 ETL 作业演示了 TDEE 数据提取和加载特性。TDEE_Extract 将从一个 Teradata 数据库中导出数据。
TDEE 支持从表导出数据或者使用用户定义的 SQL。
TDEE_Load 可将数据加载到 Teradata 表中。
TDEE 只支持将数据加载到表中。用户定义的 SQL 不可用于数据加载操作。图 25. 使用 TDEE 加载和提取数据图 26 演示了如何设置 TDEE_LOAD 工作台。
TDEE 可以根据写入模式选择执行以下预加载操作:
创建 &#8212; 创建新表
替换 &#8212; 放弃已有表并创建一个新表
截去 &#8212; 删除已有表中的记录图 26. 设置 TDEE 数据加载操作
Teradata Enterprise 工作台使用 FastLoad 协议将数据加载到表中。FastLoad 协议仅支持加入空表。选择 Append 写模式后,工作台将使用 FastLoad 协议将数据插入到临时工作表中。完成数据加载操作之后,工作台将使用以下 SQL 将数据插入到目标表:
insert into &target table& select * from &temporary work table&
Teradata Enterprise 工作台将在并发模式下运行。它支持为创建加载或导出操作创建多个在多个计算机节点上运行的进程。
如果定义了 requestedsessions/sessionsperplayer 属性,则它们将控制为数据操作生成的播放器进程的数量。否则,为数据操作生成的播放器进程的数量的默认值将设置为 Teradata Access Module 处理器数量的一半。
需要在数据操作的各时间点同步多个加载进程。同步需要创建并使用一个 terasync 数据库表。对于运行中的各个作业,表中都会插入一个相应行。各播放器进程将更新表中的行以指示其当前状态。如果不能在超时时间内(默认为 20 秒)同步所有播放器进程,则作业将中断。您可以更改默认值,方法是在数据加载定义中指定 synctimeout=&specified_value&
作为一个 Additional Connection Option 选项(参见图 26)。
Teradata MultiLoad (TDMLoad) 工作台最初是针对 DataStage 服务器设计的。TDMLoad 工作台支持数据加载和导出。它在内部使用 Teradata FastExport 实用工具进行导出。它使用 Teradata MultiLoad 或 TPump 实用工具进行加载。TDMLoad 工作台还可以在 DataStage PX 上运行。但是,与 Teradata 连接器不同,它只在序列模式下运行。以并行模式运行 TDMLoad 不受支持。
在 Teradata 连接器可用之前,主要推荐使用 TDMLoad 工作台来支持数据库更新和更新插入操作。Teradata 连接器的批量模式中的更新和流驱动程序提供了与之等价的特性。
图 27 所示的示例 ETL 作业演示了 TDMLOAD 数据导出和加载特性。
TDMLOAD_Export 从 Teradata 数据库导出数据。
TDMLOAD_Load_Update 将数据加载到 Teradata 表中。
图 27. 使用 TDMLOAD 提取和加载数据图 28 展示了如何设置 TDMLOAD 数据导出操作。以下内容将描述 TDMLoad 工作台如何实现数据导出操作:
工作台通过特定的 SQL 语句调用 Teradata FastExport 实用工具。
FastExport 实用工具从 Teradata 读取 Teradata 格式的数据,并将数据写入到管道或数据文件。
工作台将从管道或数据文件读取数据,并将数据写入到输出链接。图 28. 设置 TDMLOAD 数据导出
图 29 展示了如何设置 TDMLOAD 数据加载操作。以下内容描述了 TDMLoad 工作台如何实现数据加载操作:
工作台从 DataStage 输入链接读取数据。
工作台将数据转换为 Teradata 格式并将数据写入到数据文件或管道。
工作台将生成一个 Teradata 加载实用工具脚本,然后根据用户选择调用 Teradata MultiLoad 或者 TPump 实用工具。
所选 Teradata 实用工具将使用生成的脚本作为输入,并将输出写入到报表文件。图 29. 设置 TDMLOAD 数据加载
TDMLoad 工作台提供了使用 Teradata FastLoad 或 VarText 格式将 DataStage 数据写入到数据文件中选项。您随后可以使用 Teradata 加载实用工具加载 the DataStage 外部的数据文件。Teradata 连接器不支持此特性。
其他早期 Teradata 工作台
Teradata API (TDAPI) 工作台专为 DataStage 服务器设计。
它提供了通过 Teradata DBC/SQL 分区执行 SQL select/insert/update/upsert/delete 语句的功能。它支持以序列模式在 DataStage PX 上运行。以并行模式运行工作台不受支持。
Teradata API 工作台一次处理一个数据记录。它没有利用 Teradata DML 数组操作特性。数组操作一次会向服务器发送许多行数据。建议使用该工作台处理少量记录。 Teradata 连接器的立即访问模式支持通过 DBC/SQL 分区执行 SQL。连接器还允许用户指定数组大小使用 Teradata 数组操作特性。
图 30 展示了用于插入或更新数据库表的 Teradata API 的工作台定义。
图 30. Teradata API 工作台定义
Teradata Load (terabulk) 工作台也是专为 DataStage 服务器设计的。它使用 FastLoad 实用工具并提供了将批量数据加载到空数据库表中的功能。它支持以序列模式在 DataStage PX 中运行。以并行模式运行 Teradata 加载工作台是不受支持的。Teradata 连接器通过批量模式选项中的加载驱动程序提供了等价的加载功能。
Teradata Load 工作台提供了使用 Teradata FastLoad 或 VarTex 格式将 DataStage 数据写入到数据文件中的选项。Teradata 连接器不支持此特性。
图 31 展示了 Teradata Load 工作台用于将数据加载到数据库表中时的工作台定义。
图 31. Teradata Load 工作台定义早期元数据导入服务如图 32 所示,您可以通过以下菜单项调用早期元数据导入服务: Orchestrate Schema DefinitionsPlug-in Meta Data Definitions图 32. 早期元数据导入选项
选择 Orchestrate Schema Definitions 菜单项将开始使用 PX 运算符导入文件定义或数据库表模式。选择 Teradata 数据库类型之后,流程将调用 Teradata enterprise stage (TDEE) 导入所选 Teradata 表模式。
选择e Plug-in Meta Data Definitions
菜单项半开始使用 DataStage 插件工作台导入数据库表模式。选择 Teradata 数据库类型之后,流程将调用 Teradata API 工作台导入所选 Teradata 表模式。 结束语
本文演示了如何在 IBM InfoSphere Information Server 中使用 Teradata 连接解决方案集成 Teradata 数据与其他数据源。它介绍了 Teradata 连接器的数据加载、数据提取和查找特性。此处,还讨论了 Teradata 早期工作台的主要特性。Teradata 连接器提供了一个可替换所有早期工作台的解决方案。文章通过许多示例演示了详细的设计流程。
IBM InfoSphere Information Server 提供了许多领先的技术和集成解决方案,旨在触发许多关键集成问题,包括:
数据质量。构建数据仓库的数据通常来自各种数据源。早期数据的结构经常没有任何记录,并且数据质量也较差。InfoSphere Information Analyzer 将分析您的数据并确保数据结构和质量。它将帮助您理解您的数据。InfoSphere QualityStage 解决方案将标准化并匹配任意类型的信息以创建高质量的数据。
数据量。数据仓库环境通常要定期处理大量数据。有时,数据量的增长会超过预期。这一问题通过借助可伸缩的 ETL 架构来解决。IBM InfoSphere Information Server 将利用管道和分区技术来支持高数据吞吐量。可以将它部署在对称多处理(Symmetric Multiprocessing,SMP)和大规模并行处理(Massively Parallel Processing,MMP)计算机系统中来最大限度提高可伸缩性。致谢作者感谢 Tom O’Shea 和 Stewart Hanna 对文本的审查,以及 Ravi Nandibhatla、Srinivas Mudigonda 和 Vikram Vangari 就 STP 和 ODBC 工作台展开的讨论。
相关主题Grow your 获取 InfoSphere 技能:
获取更多信息。
添加或订阅评论,请先或。
有新评论时提醒我
static.content.url=/developerworks/js/artrating/SITE_ID=10Zone=Information ManagementArticleID=469752ArticleTitle=使用 InfoSphere Information Server 集成 Teradata 数据publish-date=

我要回帖

更多关于 ibm infosphere cdc 的文章

 

随机推荐