数据库批处理来源

本页面提供了有关在 Cloud Data Fusion 中配置数据库批处理来源插件的指南。

每当您需要从数据库中读取数据时,都可以使用此通用来源。例如,您可以使用它来创建通用数据库表的每日快照,并将输出写入 BigQuery。

配置插件

  1. 前往 Cloud Data Fusion 网页界面 然后点击 Studio。
  2. 检查是否选择了数据流水线 - 批处理 (而不是实时 )。
  3. 在来源 菜单中,点击数据库 。
  4. 如需配置插件,请将指针悬停在插件节点上,然后点击属性 。
  5. 输入以下属性。如需详细了解每个属性, 请参阅属性。

    1. 为数据库节点输入标签 ,例如 database tables。
    2. 输入连接详细信息。您可以设置新的临时连接,也可以设置现有的可重复使用的连接。

      新连接

      如需向数据库添加临时连接,请按以下步骤操作:

      1. 保持使用连接 处于关闭状态。
      2. 输入以下连接属性:
        1. 在 JDBC 驱动程序名称字段中,输入驱动程序的名称(如果有)。否则,请保持选中无 JDBC 插件 。
        2. 在连接字符串 字段中,输入 JDBC 连接字符串,包括数据库名称。
        3. 可选:如果您的数据库需要身份验证,请输入数据库用户名和密码凭据。
        4. 可选:如果您的 JDBC 驱动程序需要其他配置,请在连接参数 字段中,输入连接的键值对参数。

      可重复使用的连接

      如需重复使用现有连接,请按以下步骤操作:

      1. 开启使用连接 。
      2. 点击浏览连接 。
      3. 选择连接。

      4. 可选:如果不存在连接,并且您想要创建新的可重复使用的连接,请点击添加连接 ,然后参阅本页新连接 标签页中的步骤。

    3. 可选:如需测试连接,请点击获取架构 。此架构将取代查询返回的任何架构。它必须与查询返回的架构匹配,但您可以将字段标记为可为 null,并且它可以包含字段的子集。

    4. 在 导入查询 字段中,输入用于从指定表中导入数据的 SELECT 查询,例如 select id, name, email, phone from users;。

    5. 可选:在边界查询 字段中,输入要读取的最小值和最大值,例如 SELECT * FROM table WHERE $CONDITIONS。

    6. 可选:在拆分依据字段名称 字段中,输入生成拆分的字段的名称。

    7. 可选:在要生成的拆分数量 字段中,输入一个数字,例如 2。

    8. 可选:在提取大小 字段中,输入一个数字,例如 1000。

    9. 可选:输入高级属性,例如更改 列名称的大小写。

  6. 可选:点击验证 ,然后解决发现的任何错误。

  7. 点击关闭 。系统会保存属性,您可以在 Cloud Data Fusion Studio 中继续构建数据流水线。

属性

属性 启用宏 必需 说明
标签 否 是 数据流水线中节点的名称。
使用连接 否 否 浏览以查找与来源的连接。如果选择了 使用连接,则无需提供 凭据。
连接 是 是 要使用的连接的名称。如果选择了使用连接 ,则会显示此字段。数据库和表信息由连接 提供。
JDBC 驱动程序名称 是 是 要使用的 JDBC 驱动程序。
默认值为无 JDBC 插件 。
连接字符串 是 是 JDBC 连接字符串,包括数据库名称。
用户名 是 否 用于连接到数据库的用户身份。对于需要身份验证的数据库 ,此字段为必填字段。对于不需要 身份验证的数据库,此字段为可选字段。
密码 是 否 用于连接到指定数据库的密码。对于需要身份验证的数据库,此字段为必填字段。 对于不需要身份验证的数据库,此字段为可选字段。
连接参数 是 否 作为连接参数的任意字符串标记/值对的列表。 对于需要其他配置的 JDBC 驱动程序,这些参数将以以下格式作为连接参数传递给 JDBC 驱动程序:key1=value1;key2=value。
参考名称 否 是 用于唯一标识此来源以进行沿袭和注释 元数据的名称。它通常是表或视图的名称。
获取架构 否 否 来源输出的记录的架构。它将取代 架构,该架构由查询返回。它必须与查询返回的架构匹配,但您可以将字段标记为可为 null,并且它可以包含字段的子集。
导入查询 是 是 用于从指定的 表中导入数据的 SELECT 查询。您可以指定任意数量的列进行导入,也可以 导入所有列,使用*。查询应包含 $CONDITIONS 字符串。例如, SELECT * FROM table WHERE $CONDITIONS。 $CONDITIONS 字符串将替换为 splitBy 字段 限制,该限制在 边界查询 字段中指定。如果拆分数量 字段设置为 1,则不需要 $CONDITIONS 字符串。
边界查询 是 否 边界查询,用于返回拆分列中值的最小值和最大值 。例如, SELECT MIN(id),MAX(id) FROM table。如果拆分数量设置为 1,则不需要此字段。
拆分依据字段名称 是 否 用于生成拆分的字段名称。如果要生成的拆分数量设置为 1,则不需要此字段。
要生成的拆分数量 是 否 要生成的拆分数量。
默认值为 1 。
提取大小 是 否 每次拆分提取的行数。提取大小越大 ,导入速度越快,但内存用量也会随之增加。
默认值为 1000 。
启用自动提交 否 否 是否为此来源运行的查询启用自动提交。除非您使用的 JDBC 驱动程序在运行提交操作时会导致错误,否则请将 此字段设置为 False 。
默认值为 False 。
列名称大小写 是 否 设置从查询返回的列名称的大小写。您可以选择大写或小写。 默认情况下,或对于任何其他输入, 列名称不会被修改,并且会使用从 数据库返回的大小写。设置此属性可确保不同数据库中的 列名称大小写具有可预测性,但如果忽略大小写时多个列名称相同,则可能会导致 列名称冲突。
默认值为无更改 。
事务隔离级别 是 否 此接收器运行的查询的事务隔离级别。如需了解详情,请参阅setTransactionIsolation()。如果 Phoenix 数据库 未启用事务,并且此字段设置为 true,则 Phoenix JDBC 驱动程序会抛出异常。对于此类驱动程序,请将此字段设置为 TRANSACTION_NONE。
默认值为 TRANSACTION_SERIALIZABLE 。
要替换的模式 否 否 要在表中的字段名称中替换的模式(通常与 替换为 属性一起使用)。如果未设置 替换为 属性,则该模式将从字段名称中移除 。
替换为 否 否 要在表中的字段名称中替换的字符串。您还必须配置 要替换的模式 字段。
输出架构 否 否 指定要输出的架构。输出记录中仅包含架构中定义的列 。

最佳做法

检查是否有适用于您的数据库的更具体的插件。例如,如果您有 Oracle 数据库来源,请改用 Oracle 数据库批处理来源插件,因为它专为与 Oracle 架构搭配使用而设计。

后续步骤

  • 详细了解 Cloud Data Fusion 中的插件。