从 Oracle 导入元数据

本文档介绍了如何使用 Knowledge Catalog 连接器将元数据从 Oracle 导入 Knowledge Catalog(以前称为 Dataplex Universal Catalog)。

此连接器支持托管在本地、Google Cloud或其他云环境中的 Oracle 实例。

在从 Oracle 导入元数据之前,请完成以下任务:

  1. 授予所需的角色和权限
  2. 启用 Knowledge Catalog 和 BigQuery Data Transfer Service API
  3. 满足 Oracle 前提条件
  4. 满足网络前提条件

IAM 角色和权限

如需创建和管理知识目录连接器作业,您需要具有 Identity and Access Management (IAM) 角色,该角色可授予知识目录和 BigQuery Data Transfer Service 的权限。

如需获得配置 Oracle 连接器所需的权限,请让管理员为您授予以下 IAM 角色:

  • 如需创建和管理条目组,您需要拥有项目的 Dataplex Catalog Admin (roles/dataplex.catalogAdmin)、Dataplex Catalog Editor (roles/dataplex.catalogEditor) 或 Dataplex Entry Group Owner (roles/dataplex.entryGroupOwner) 角色。
  • 如需创建和管理 BigQuery Data Transfer Service 转移作业,您需要拥有项目的 BigQuery Admin (roles/bigquery.admin) 角色。
  • 如需在 Cloud Logging 中查看日志,请确保您拥有项目的日志查看器 (roles/logging.viewer) 角色。

此外,您还必须向 BigQuery Data Transfer Service 服务代理 (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) 授予 dataplex.entryGroups.import 权限或 Dataplex Entry Group Importer (roles/dataplex.entryGroupImporter) 角色。您可以在项目级层或条目组级层授予此角色。

如需详细了解如何授予角色,请参阅管理访问权限

启用 API

启用 Knowledge Catalog API 和 BigQuery Data Transfer Service API。

启用 API

Oracle 前提条件

确保您满足 Oracle 转移的前提条件。如需了解详情,请参阅 BigQuery Data Transfer Service 文档中的 Oracle 前提条件

除了 BigQuery Data Transfer Service 的前提条件之外,您的 Oracle 实例还必须满足以下要求:

  • 最低版本:需要 Oracle 版本 12 或更高版本才能支持数据库元数据属性,例如 typeparentContainer

  • 最低权限:您必须向数据库用户授予以下权限:

    基本权限(所有配置都需要)

    GRANT SELECT_CATALOG_ROLE TO USER_NAME;
    GRANT CREATE SESSION TO USER_NAME;
    GRANT SELECT ON SYS.COL$ TO USER_NAME;
    

    访问特定架构的权限(Oracle 版本 23 及更高版本)

    GRANT SELECT ANY TABLE ON SCHEMA TARGET_SCHEMA TO USER_NAME;
    GRANT EXECUTE ANY PROCEDURE ON SCHEMA TARGET_SCHEMA TO USER_NAME;
    GRANT EXECUTE ANY TYPE ON SCHEMA TARGET_SCHEMA TO USER_NAME;
    GRANT ALTER ANY TRIGGER ON SCHEMA TARGET_SCHEMA TO USER_NAME;
    

    访问所有其他架构的权限

    GRANT SELECT ANY TABLE TO USER_NAME;
    GRANT EXECUTE ANY PROCEDURE TO USER_NAME;
    GRANT EXECUTE ANY TYPE TO USER_NAME;
    GRANT ALTER ANY TRIGGER TO USER_NAME;
    

    替换以下内容:

    • USER_NAME:要配置的数据库用户。
    • TARGET_SCHEMA:您要访问的 Oracle 架构的名称。

网络前提条件

通过 Private Service Connect 进行连接时,需要使用网络连接,以便在专用网络中使用专用 IP 地址安全地连接到外部数据库或第三方云数据源,从而允许 BigQuery Data Transfer Service 访问您的数据库。

如果您使用公共 IP 地址连接到本地环境或云托管实例,则不需要网络连接。

配置 Oracle 连接器

使用 Google Cloud 控制台或 API 配置 Oracle 连接器。

控制台

  1. 在 Google Cloud 控制台中,前往 Knowledge Catalog 页面。

    前往 Knowledge Catalog

  2. 在导航菜单中的管理部分,点击连接器

  3. 点击添加连接

  4. 连接器列表中,选择 Oracle 卡片。

  5. 数据源详细信息部分中,提供 Oracle 实例的连接详细信息:

    • 对于网络连接,请根据需要选择现有网络连接或创建一个。
    • 输入主机端口数据库名称连接类型用户名密码
    • 如果使用 TLS,请选择 TLS 模式并提供受信任的 PEM 证书。如需了解详情,请参阅 TLS 配置
    • Oracle metadata objects to import(要导入的 Oracle 元数据对象)部分,点击浏览以选择对象。
  6. 目标设置部分中:

    • 点击浏览,然后选择一个现有的知识目录条目组来存储导入的元数据,或点击创建新条目组
    • 选择是立即还是稍后设置条目组权限。 建议您设置权限,以便用户可以查看导入的元数据。如果您未在项目级层向 BigQuery Data Transfer Service 服务代理 (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) 授予 Dataplex Entry Group Importer (roles/dataplex.entryGroupImporter) 角色或 dataplex.entryGroups.import 权限,则必须在条目组级层授予该角色或权限。
  7. 连接器配置名称部分的显示名称中,输入元数据导入作业的名称。

  8. 时间表选项部分,配置元数据导入作业的频率。如果您选择按需,则作业仅在您手动触发时运行。

  9. 可选:在通知选项部分中,为作业失败配置电子邮件或 Pub/Sub 通知。

  10. 可选:在高级选项部分中,配置加密设置。如果您选择客户管理的加密密钥 (CMEK),请注意,该密钥用于加密在开始 Knowledge Catalog 元数据导入作业之前暂存的任何临时数据。它不用于加密目标 Knowledge Catalog 条目组中的元数据。

  11. 点击保存

REST

使用 projects.locations.transferConfigs.create 方法。在 TransferConfig 资源中,配置以下字段:

  • dataSourceId 字段设置为 "oracle"
  • metadataDestination 字段中,使用目标 Knowledge Catalog 条目组的资源路径填充 dataplexConfiguration 对象:projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>

创建作业后,Knowledge Catalog 会根据您的配置安排首次运行,您也可以手动启动作业。

后续步骤