メタデータ バケットを作成する

このガイドでは、メタデータ バケットを作成する方法について説明します。メタデータ バケットは、Configuration API または Manufacturing Data Engine(MDE)ウェブ インターフェースを使用して作成できます。

始める前に

バケットの作成を開始する前に、MDE ドキュメントのメタデータのモデル化方法のセクションをお読みください。

バケットの命名

バケットを作成する場合、名前は MDE デプロイで一意である必要があります。バケット名にスペースや特殊文字(&@% など)を含めることはできません。

メタデータ バケットを作成する

メタデータ バケットは、ターミナルまたはコンソール インターフェースを使用して作成できます。

REST

次の REST API リクエストを実行します。

POST /metadata/v1/buckets

  {
    "name": "BUCKET_NAME",
    "type": "BUCKET_TYPE",
    "schema": "BUCKET_SCHEMA",
    "provider": "local",
    "attributes": {
      "instanceOverwriteMode": "INSTANCE_OVERWRITE_MODE"
    }
  }

次のように置き換えます。

  • BUCKET_NAME: 作成するバケットの名前。
  • BUCKET_TYPE: 作成するバケットのタイプ。TAGRECORDLOOKUP のいずれかにする必要があります。TAG バケット内のメタデータ インスタンスの natural_key はタグ名である必要があります。RECORD バケット内のメタデータ インスタンスの natural_key は任意のキーにできます。LOOKUP バケット内のメタデータ インスタンスの natural_key は任意のキーにできますが、レコードはルックアップ バケット内のインスタンスを参照できず、インスタンスはデータシンクに書き込まれません。ルックアップ バケットは、Whistle 関数 lookupByKey を使用してパーサーで取得し、レコードの拡充に使用できる参照データのソースとしてのみ機能します。
  • BUCKET_SCHEMA: バケットの JSON スキーマ。スキーマは、バケットに作成できるインスタンスを制約します。
  • INSTANCE_OVERWRITE_MODE: TRUE または FALSE。 指定されたインスタンスを特定の自然キーの最新のインスタンスと統合して新しいインスタンスを作成するか、指定されたとおりに新しいインスタンスを作成するかを決定します。

コンソール

コンソールを使用して新しいメタデータ バケットを追加するには、[Cloud Management] セクションの上部メニューの [METADATA] セクションをクリックします。[メタデータ] 構成ページには、MDE インスタンスで使用可能なバケットが一覧表示されます。

Types セクション - メタデータのリスト

バケットについて、次の情報が提供されます。

  • 名前: バケットの名前。各名前は一意である必要があります。
  • バージョン: バケットのバージョン。デフォルトでは、利用可能な最新バージョンのみが表示されます。以前のバージョンを表示するには、[最新のみ] チェックボックスをオフにします。
  • バケットタイプ: バケットのタイプを可視化します。次の 3 種類のバケットタイプがサポートされています。
    1. タグ: 指定されたタグの条件を満たすバケット。これらは型に関連付けられ、その型のすべてのタグによって継承されます。特定のレコードではなく変数自体を修飾することを目的としているため、タグレベルでインスタンス化できます。タグ バケットの例としては、タグの「アセット階層」や「測定単位」などがあります。
    2. レコード: レコードバケットは、特定のタグの各レコードを分類します。また、型に関連付けられ、タグによって継承されますが、レコードレベルでインスタンス化されます。各レコードは、限られた数のバケット インスタンス間で異なる値を持つことが想定されています。レコード バケットの例としては、[Shift] や [Operator Name] などがあります。
    3. 参照: ユーザー定義のキーとインスタンス間の Key-Value ペアのセットを定義するバケット。

新しいバケットを作成するには、[新しいメタデータ バケットを追加] をクリックします。

「型」セクション - 型のリスト

サイドパネルに表示されたフォームに、必要なバケット パラメータを入力します。

  • バケット名: バケットの一意のユーザー定義名。
  • バケットタイプ: Bucket クラスを定義します。
  • インスタンス更新モード: メタデータ バケットに指定されたインスタンス更新のタイプを指定します。
    1. インスタンスのオーバーライド: 不完全な場合でも、既存のインスタンスはエッジから受信した最新のインスタンスに置き換えられます。
    2. インスタンスの統合: 既存のインスタンスが、エッジから受信した最新のインスタンスと統合されます。新しいエッジ インスタンスに含まれる属性のみが置き換えられます。
  • JSON スキーマ: バケットの構造を定義する JSON Schema。有効なスキーマである必要があります。すべてのメタデータ インスタンスは、バケット スキーマに対して検証されます。

次に、デフォルトの構成パッケージで提供されるデフォルトのメタデータ バケットの JSON Schema の例を示します。

{
  "$id": "https://gmde.cloud/tag.schema.json",
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "title": "Tag metadata bucket",
  "type": "object",
  "properties": {
    "datatype": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "registerId": {
      "type": "string"
    },
    "edgeTagName": {
      "type": "string"
    },
    "tagName": {
      "description": "Tag name",
      "type": "string"
    },
    "deviceID": {
      "type": "string"
    },
    "deviceName": {
      "type": "string"
    },
    "deviceMetadata": {
      "type": "object"
    }
  },
  "required": ["tagName"],
  "additionalProperties": false
}