配置数据接收器

本指南介绍了如何在 Manufacturing Data Engine (MDE) 中配置数据接收器。

MDE 支持以下五种记录数据接收器:

  1. BigQuery
  2. Cloud Storage
  3. Bigtable 和 Federation API
  4. Pub/Sub(JSON 格式)
  5. Pub/Sub(Protobuf 格式)

记录持久性

以下示例展示了如何在创建类型时配置各个接收器:

REST

POST /configuration/v1/types

{
  "archetype": "<ARCHETYPE NAME>",
  "name": "<TYPE_NAME>",
  "metadataBuckets": [
    {
      "bucketName": "<BUCKET_NAME>",
      "version": "<BUCKET_VERSION>"
    }
  ],
  "storageSpecs": [
    {
      "sink": "BIG_QUERY",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "BIG_TABLE",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "GCS",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "PUBSUB_PROTO",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "PUBSUB_JSON",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    }
  ]
}

替换以下内容:

  • ARCHETYPE:原型名称。可以是 DISCRETE_DATA_SERIESCLUSTERED_DISCRETE_DATA_SERIESNUMERIC_DATA_SERIESCLUSTERED_NUMERIC_DATA_SERIESCONTINUOUS_DATA_SERIESCLUSTERED_CONTINUOUS_DATA_SERIES
  • TYPE_NAME:要创建的类型的名称。
  • BUCKET_NAME:要与此类型关联的存储桶的名称。
  • BUCKET_VERSION:要与此类型关联的存储桶的版本。

控制台

  1. 在 Web 界面中打开 CLOUD TAGS 部分,以修改给定 Tag记录 持久性设置:

    “代码”部分 - 代码列表

  2. 点击要更改持久性设置的标签的操作 图标。

  3. 选择查看 / 修改 选项。系统随即会显示以下侧边栏:

    “标记”部分 - 修改标记

  4. 展开名为存储设置 的部分,系统会显示所有可用持久性接收器的列表,每个接收器旁边都有一个切换按钮:

    “标记”部分 -“修改标记”-“存储空间规格”

  5. 选择对标签处于活跃状态的接收器。为此标签注入的所有记录都将保留在所有选定的接收器中。

同样,您也可以在现有类型上创建新版本时配置接收器,如以下示例所示:

REST

POST /configuration/v1/types/TYPE_NAME/versions

{
  "metadataBuckets": [
    {
      "bucketName": "EXISTING_BUCKET_NAME",
      "version": "EXISTING_BUCKET_VERSION"
    },
    {
      "bucketName": "NEW_BUCKET_NAME",
      "version": "NEW_BUCKET_VERSION"
    }
  ],
  "storageSpecs": [
    {
      "sink": "BIG_QUERY",
      "disabled": "false",
      "materializeCloudMetadata": "true"
    },
    {
      "sink": "BIG_TABLE",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "GCS",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "PUBSUB_PROTO",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    },
    {
      "sink": "PUBSUB_JSON",
      "disabled": "false",
      "materializeCloudMetadata": "false"
    }
  ]
}

替换以下内容:

  • TYPE_NAME:为其创建新版本的类型的名称
  • EXISTING_BUCKET_NAME:已与此类型关联的现有存储桶的名称。
  • EXISTING_BUCKET_VERSION:已与此类型关联的现有存储桶的版本。
  • NEW_BUCKET_NAME:新存储桶的名称。
  • NEW_BUCKET_VERSION:新存储桶的版本。

控制台

  1. 打开顶部菜单的 TYPES 部分,以在类型 级更改存储设置:

    “类型”部分 - 类型列表

  2. 在要修改的类型操作 图标中,选择查看 / 修改 选项。系统会显示修改类型版本 侧边菜单。

  3. 展开存储设置 面板,以访问持久性 设置,用于类型

    “类型”部分 -“创建类型”-“存储空间设置”

  4. 选择默认情况下将保留属于此类型的标签的记录的每个接收器。标签在创建时会继承存储规范。您可以随时在标签级修改存储规范。

元数据实例具体化

您可以为每个接收器单独配置元数据实例具体化。 如需了解详情,请参阅 实例具体化

替换各个标签的默认类型版本存储规范

您还可以替换各个标签的类型版本的默认存储规范。也就是说,类型版本的标签配置设置会替换该类型版本的默认设置。

特定于接收器的注意事项

以下部分概述了一些特定于接收器的注意事项:

BigQuery

创建数据类型时,MDE 会在 mde_data 数据集中自动为其创建一个新表。您可以为类型版本或类型版本的标签启用 BigQuery 接收器,以配置是否将记录保留到此表中。

Bigtable Federation API

如果您已预配 Bigtable 集群,则可以配置是否将记录保留到 Bigtable 中,以便您可以使用 Federation API 访问这些记录。

Cloud 元数据实例不会单独保留在 Bigtable 中。如果您需要在从 Bigtable 中使用 Federation API 检索的记录中包含 Cloud 元数据,则应将 Bigtable 接收器的 materializeCloudMetadata 值设置为 true

Cloud Storage

记录存储在名为 <project_id>-gcs-ingestion的 Cloud Storage 存储桶中,采用 AVRO 文件格式,使用 Hive 分区,窗口期为 10 分钟,每个窗口有 10 个分区。记录按类型分组到文件夹中。Cloud 元数据实例不会单独发送到 Cloud Storage 接收器。如果您需要在 Cloud Storage 中的记录中包含 Cloud 元数据,则应将 Cloud Storage 接收器的 materializeCloudMetadata 值设置为 true

Pub/Sub:Proto 和 JSON

MDE 提供了两种 Pub/Sub 接收器:一种以 JSON 数据格式提供记录,另一种以 Protobuf 数据格式提供消息。如需了解相应的数据架构,请参阅参考部分。

JSON 格式的记录流会发送到 mde-tag-stream-json Pub/Sub 主题,而 Protobuf 格式的记录流会发送到 mde-tag-stream-proto。Cloud 元数据实例不会发送到相应的 Pub/Sub 主题。如果您需要在发送到 Pub/Sub 的记录中包含 Cloud 元数据,则应将 Pub/Sub 接收器的 materializeCloudMetadata 值设置为 true。 如果未在类型上明确启用,则 Pub/Sub 接收器默认处于停用状态。

元数据、日志和配置数据的持久性

MDE 始终将元数据实例、日志和配置数据保留在 BigQuery 中的 mde_dimensionmde_system 数据集中。此外,MDE 始终将原始源消息保留在 Cloud Storage 中。无法停用此数据的持久性。