Teradata 批处理连接
Teradata 批量连接用于通过 输入数据工具 和 输出数据工具 向 Teradata 数据库中的空表高速读写大量数据。目标表除了要求是空表外,还不能定义任何二级索引。用户必须拥有对目标表的 SELECT 和 INSERT 权限,对错误表的 SELECT 和 INSERT 权限,以及对包含错误表的数据库的 DROP 权限。
电脑上必须安装以下 Teradata 工具和实用程序(这些工具的推荐版本为 14.0,即最新版本)。
共享 ICU 库
Teradata 的 ODBC 驱动程序
Teradata GSS 客户端
Teradata Parallel Transporter Base
如需详细了解 Teradata,请访问其网站: www.teradata.com
使用输出数据工具向 Teradata 批量连接写入数据
输出数据源 :使用下拉菜单选择 其他数据库 > Teradata 批处理 。
Teradata 数据源名称 :使用计算机上设置的可用 ODBC 连接的下拉列表。
用户名 :指定用于连接 Teradata 的用户名凭证
密码 :指定用于连接 Teradata 的密码凭证
配置连接选项:
LDAP 身份验证 :如果 Teradata 服务器使用 LDAP 进行身份验证,则必须选择此选项。您还必须在 ODBC 驱动程序配置中选择 LDAP 作为 DSN 身份验证机制。(必须在两个位置都选择 LDAP 或都取消选择。)
启用数据加密 :选择此选项可在传输过程中加密数据。必须在 ODBC 驱动程序选项中单独启用 DSN 加密(例如,用于创建和删除表)。
配置输出数据工具的选项:
文件的最大记录数 :指定要写入的记录的限制。留空表示无限制。
文件格式 :Teradata 批量加载器格式。
密码 :使用下拉列表指定如何处理配置窗口中的密码显示。选项包括:
隐藏(默认)
为本机加密
为用户加密
输出选项 :使用下拉列表指定如何将数据写入 Teradata。选项包括:
创建新表 :将数据写入新表。不会覆盖现有的表。
覆盖表格(删除) :完全删除现有的表并创建一个新表。
追加(忽略重复行) :将数据添加到现有表中,同时忽略重复记录。
追加(标记重复行) :重复的行将写入 TableName_e2
删除数据再追加 :删除表中的所有原始记录,然后将数据追加到现有表中。
错误限制 :如果错误数超过此限制,此设置将终止记录的写入。已写入的记录将保留在表中。
日志和错误表的备用名称 :Teradata 批量加载器使用 Teradata Parallel Transporter API 来写入数据。API 会自动创建 3 个表。如果表名中的字符数小于 27,这些表将默认使用表名。如果字符数大于 27,则需要为这些表输入备用表名。
创建 Pre-SQL 语句 :在创建输出表之前通过 OleDb 执行的 SQL 语句。需要具备高级 SQL 语言知识。
创建 Post-SQL 语句 :在创建输出表之后通过 OleDb 执行的 SQL 语句。需要具备高级 SQL 语言知识。
表格/字段名样式 :选项包括“带引号”或“无”。如果选择“带引号”,系统将查找数据库类型的带引号的标识符。
Teradata 批量加载器创建的表为 “tablename_lg”、“tablename_e1” 和 “tablename_e2”。(其中 tablename 是您在 6 或 7 中输入的名称)如果在写入记录的过程中出现错误,这些表将包含有关这些错误的信息。如果使用“删除数据并追加”以及“覆盖表格(删除)”,Alteryx 会自动删除这些工作表。
使用输入数据工具可通过 Teradata 批量连接读取数据
输入数据源 :使用下拉菜单选择 其他数据库 > Teradata 批量处理 。
Teradata 数据源名称 :使用计算机上设置的可用 ODBC 连接的下拉列表。
用户名 :指定用于连接 Teradata 的用户名凭证
密码 :指定用于连接 Teradata 的密码凭证
配置连接选项:
LDAP 身份验证 :如果 Teradata 服务器使用 LDAP 进行身份验证,则必须选择此选项。您还必须在 ODBC 驱动程序配置中选择 LDAP 作为 DSN 身份验证机制。(必须在两个位置都选择 LDAP 或都取消选择。)
启用数据加密 :选择此选项可在传输过程中加密数据。必须在 ODBC 驱动程序选项中单独启用 DSN 加密(例如,用于创建和删除表)。
配置输入数据工具的选项:
记录限制 :输入数字以限制从输入数据源读取的记录数。这对于测试目的和试运行很有用。留空表示读取所有记录。
文件格式 :Teradata 批量加载器格式。
密码 :使用下拉列表指定如何处理配置窗口中的密码显示。选项包括:
隐藏(默认)
为本机加密
为用户加密
表格或查询 :指定将从其中读取记录的目标表名。单击
获取表格列表。
读取未假脱机 :Teradata 设置 - 指定在运行当前导出任务时是否使用假脱机。
不显示完成百分比 (%) :选中后,Alteryx 将不会尝试对文件的读取状态进行报告,从而加快读取时间。
创建 Pre-SQL 语句 :在读取表格之前通过 OleDb 执行的 SQL 语句。需要具备高级 SQL 语言知识。
创建 Post-SQL 语句 :在读取表格之后通过 OleDb 执行的 SQL 语句。需要具备高级 SQL 语言知识。
表格/字段名样式 :选项包括“带引号”或“无”。如果选择“带引号”,系统将查找数据库类型的带引号的标识符。
无假脱机模式
指定在运行当前导出任务时是否使用假脱机。
有效值
“Spool” = 使用假脱机。这是默认设置。
“NoSpool” = 不使用假脱机。仅在 DBS 支持 NoSpool 时,此值才有效。如果 DBS 不支持 NoSpool,则会使用假脱机。
“NoSpoolOnly” = 在任何情况下都不使用假脱机。如果 DBS 不支持 NoSpool,则会终止作业并报错。
假脱机选项
NoSpool 模式以尽可能快的速度导出表的内容,而无需将表读入假脱机文件或在提取文件前将文件分发给所有 AMP。
(默认)SPOOL 数据。
使用 NOSPOOLONLY 模式,但如果 NOSPOOL 不受支持,则返回错误。
在可能的情况下使用 NOSPOOL 模式;否则,在 Teradata 数据库中对数据进行假脱机处理。
限制和功能
NOSPOOL 模式仅适用于简单的 SELECT 语句。不支持以下操作:
访问非数据表,例如 SELECT DATE 或 SELECT USER
USING 修饰符;可使用带有支持 FIELD 和 FILLER 命令的 FastExport IMPORT 命令来定义约束参数
包含 SORT (ORDER BY)、HAVING 或 WITH 子句
连接
聚合(解释显示 SUM 步骤)
TABLE 函数
有序分析 (OLAP) 函数
多个 SELECT 语句或多语句请求
具有零个或多个检索或采样步骤的语句
NOSPOOL 模式只从单个表中检索数据,但 SELECT 语句可以选择导出哪些列,并将作业限制为行的子集。
允许使用标量表达式/函数。
支持样本和分区消除约束。
常规假脱机作业返回的“活动计数”表示受影响的块数;但对于非假脱机作业,块的数量未知,因此响应消息包含“活动类型”(而不是“活动计数”),以指示 NOSPOOL 进程。
NOSPOOL 模式的缺点
在整个导出过程中都会保持锁定。
在数据块被读取之前,将不会检测到先前在假脱机阶段检测到的数据转换错误,这些错误可能在导出过程中的任何时间发生。
每次运行时的行顺序(由于缺少 ORDER BY 子句)可能一致,也可能不一致;因此,NOSPOOL 模式不提供一致性保证。
如需了解 Spool/NoSpool 模式,请参阅 Teradata FastExport 参考文档。