从 SQL Server 导入元数据

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

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

准备工作

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

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

IAM 角色和权限

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

如需获得配置 SQL Server 连接器所需的权限,请让管理员向您授予以下 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 中查看日志,请为项目授予 Logs Viewer (roles/logging.viewer) 角色。

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

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

启用 API

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

启用 API

SQL Server 前提条件

确保您在 Microsoft SQL Server 数据库中拥有用户账号。如需了解详情,请参阅创建具有登录权限的用户

您的 SQL Server 实例必须满足以下要求:

  • 最低版本:Knowledge Catalog 支持 Microsoft SQL Server 版本 14 (2017) 或更高版本。

  • 数据库用户:确保您在 Microsoft SQL Server 数据库中拥有用户账号。如需了解详情,请参阅创建具有登录权限的用户

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

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

    GRANT VIEW DATABASE STATE TO USER_NAME;
    

    访问特定架构的权限

    GRANT VIEW DEFINITION ON SCHEMA::TARGET_SCHEMA TO USER_NAME;
    

    访问所有其他架构的权限

    GRANT VIEW DEFINITION ON DATABASE::TARGET_DATABASE TO USER_NAME;
    

    替换以下内容:

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

网络前提条件

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

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

配置 SQL Server 连接器

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

控制台

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

    前往 Knowledge Catalog

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

  3. 点击添加连接

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

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

    • 对于网络连接,请根据需要选择现有网络连接或创建一个。
    • 输入主机端口数据库名称用户名密码
    • 如果使用 TLS,请选择 TLS 模式并提供受信任的 PEM 证书
    • 对于要导入的 SQL Server 元数据对象,请点击浏览以选择对象。
  6. 目标设置部分中:

    • 点击浏览,然后选择一个现有的知识目录条目组来存储导入的元数据,或点击创建新条目组
    • 选择是立即还是稍后设置条目组权限。建议您设置权限,以便用户可以查看导入的元数据。如果您未在项目级层面向 BigQuery Data Transfer Service 服务代理 (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.) 授予 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 字段设置为 "sqlserver"
  • metadataDestination 字段中,使用目标 Knowledge Catalog 条目组的资源路径填充 dataplexConfiguration 对象:projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>

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

搜索和查看 SQL Server 元数据

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

    转到搜索

  2. 过滤条件面板中,您可以使用项目系统类型别名部分过滤 SQL Server 资产。在系统部分中,选择导入的上下文。选择此过滤条件会打开受管理的连接器子部分。选择 SQL Server 以过滤所有 SQL Server 元数据。

  3. 您可以使用搜索字段执行搜索查询。您可以执行关键字搜索或自然语言搜索。例如,如需通过关键字搜索查看所有 SQL Server 表,请输入 system=SQLSERVER AND type=TABLE

    如需详细了解如何搜索资源,请参阅在 Knowledge Catalog 中搜索资源。如需详细了解可在搜索字段中使用的表达式,请参阅 Knowledge Catalog 的搜索语法

  4. 您还可以使用 LookupContext API 检索特定 SQL Server 资源的 LLM 上下文。

后续步骤