データ接続と統合Pipeline Builderパイプラインの出力オントロジー出力の追加

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

オントロジー出力を追加する

オントロジー出力を追加すると、グローバルなオントロジーの新しい要素を定義する、クリーンで構造化されたデータを目指してパイプラインの統合を進められます。出力ガイダンスを追加することで、コンピュートチェックにかかる時間を節約し、ワークフローを最初から最後まで作成する際の指針にできます。

Pipeline Builder は現在、バッチデータセットとストリーミングデータセットの両方からオントロジーのオブジェクトとリンクを作成できます。ただし、Pipeline Builder では、ストリーミングデータセットを元にしたオブジェクトの編集を有効にしたり、多対多のリンクを設定したりすることはできません。

オブジェクトタイプ出力を追加する

オブジェクトタイプ出力を追加するには、2つの方法があります。パイプラインの出力パネルから空のオブジェクトを作成するか、グラフ上でデータ加工ノードに接続された、データが入力済みのオブジェクトを作成できます。

パイプラインの出力パネルを使用する場合

Pipeline Builder の右側にあるパイプラインの出力パネルを開き、オブジェクトタイプ > 追加を選択して、オブジェクトの名前、アイコン、プロパティを編集できる空のオブジェクトテンプレートを作成します。

グラフからオブジェクトを追加します。

入力の手間を省くため、複数形とオブジェクトタイプ IDには、名前に基づいて値が自動入力されます。

Pipeline Builder では新しいオブジェクトを定義できますが、既存のオブジェクトは、Pipeline Builder で作成されたものでない限り、変更や削除はできません。初回のデプロイ後は、オブジェクトタイプIDを変更できません。ただし、パイプラインが所有するオブジェクトタイプのAPI名は引き続き編集できます。

パイプラインの出力パネルでオブジェクトタイプを設定します。

これで、データを手動で入力を選択するか、既存のデータセットまたはデータ加工の出力をこのノードの入力にドラッグして、オブジェクトにデータを入力できます。

パイプラインの出力パネルでオブジェクトタイプを設定します。

グラフを使用する場合

オブジェクトの作成元となるデータ加工ノードを選択し、出力を追加 > 新規オブジェクトタイプを選択します。

グラフからオブジェクトを追加します。 グラフからオブジェクトを追加する2番目の画面。

エンロールメントに複数のオントロジーがある場合は、オブジェクトの作成時に、そのオブジェクトが属するオントロジーを選択する必要があります。選択しないと、エラーメッセージ An ontology must be specified to publish ontology type outputs が表示されます。オントロジーを設定するには、以下に示すように、下部のパネルまたはオブジェクトでオントロジーを設定を選択します。

パイプラインでオントロジーの設定が必要な場合の設定場所を示すスクリーンショット。

オブジェクトタイプのAPI名を編集する

Pipeline Builder のオブジェクトタイプエディター内で、オブジェクトタイプのAPI名を直接編集できます。API名を編集するには、右側のパネルでオブジェクトタイプにカーソルを合わせて編集を選択し、API名の項目を変更します。

API名の項目では、送信時に以下の点について名前が検証されます。

  • 現在のオントロジー内での重複
  • 書式要件への適合
  • 最大100文字の長さ制限

初回のデプロイ後は、オブジェクトタイプIDを変更できません。ただし、パイプラインが所有するオブジェクトタイプのAPI名は引き続き編集できます。

オブジェクトタイプの編集を有効にする

オブジェクトが Pipeline Builder で作成され、バッチデータセットを元にしている場合は、Pipeline Builder または Ontology Manager でオブジェクトタイプの編集を有効にできます。

ストリームを元にしたオブジェクトタイプは、現在、編集に対応していません。ストリームを元にしたオブジェクトタイプの編集を有効にするには、ダイレクトデータソース機能を使用します。

編集を有効にするには、右側のパネルでオブジェクトタイプにカーソルを合わせ、編集を選択します。このタイプのオブジェクトの編集を許可をオンにします。設定を反映するには、パイプラインを保存してデプロイします。

Person オブジェクトタイプが選択された、編集を有効にするダイアログ。

インターフェースを実装する

Pipeline Builder のオブジェクトタイプ出力では、必要に応じてインターフェースを実装し、インターフェースタイプのプロパティをオブジェクトタイプのプロパティにマッピングできます。

インターフェースタイプを実装するには、次の手順に従います。

  1. 以下に示すように、オブジェクトタイプ出力パネルのプロパティマッピングセクションの下部にあるインターフェースを実装を選択します。

    インターフェースを実装ボタンが強調表示された、オブジェクトタイプ出力パネルのプロパティマッピングセクション。

  2. 実装するインターフェースタイプを検索して選択し、次へを選択します。

    実装するインターフェースタイプの検索ダイアログ。

  3. インターフェースタイプのプロパティをオブジェクトタイプのプロパティにマッピングします。任意と指定されていないすべてのインターフェースタイプのプロパティには、オブジェクトタイプのプロパティを選択する必要があります。任意のインターフェースタイプのプロパティは、マッピングせずに残すことができます。
  4. プロパティマッピングに問題がなければ、実装を選択します。

    必須および任意のインターフェースタイプのプロパティがマッピングされた、実装するインターフェースタイプのプロパティマッピングダイアログ。

    オブジェクトタイプ出力パネルのインターフェースセクションで、実装済みのインターフェースタイプをすべて確認できます。また、再マッピングを選択して、インターフェースタイプのプロパティマッピングを編集することもできます。同様に、削除ボタンを選択してインターフェースタイプの実装を削除することもできます。

実装済みのインターフェースタイプを一覧表示する情報セクションが追加されたプロパティマッピングセクション。

既知の制限事項

  • リンクタイプおよびアクションタイプの制約: Pipeline Builder のこのワークフローは、リンクタイプおよびアクションタイプの制約に対応していません。
  • オブジェクトタイプのプロパティ: 同様に設定されたインターフェースタイプのプロパティを実装するには、Pipeline Builder が対応しているプロパティタイプの設定のみを使用できます。たとえば、タイプクラスやレンダリングヒントは Pipeline Builder では設定できません。

ダイレクトデータソースを有効にする [ベータ版]

ベータ版

ダイレクトデータソースは開発のベータ版段階にあり、お使いのエンロールメントでは利用できない場合があります。開発が活発に進められている間は、機能が変更される可能性があります。

ダイレクトデータソースは、ストリームベースのデータを元にしているオブジェクトタイプへの編集を含め、オントロジーへの低遅延、低スループットの書き込みを提供します。

ダイレクトデータソースを有効にするには、次の手順に従います。

  1. オブジェクトタイプ出力を持つストリーミングパイプラインを作成します。このオブジェクトタイプの元をダイレクトデータソースにしますとこのタイプのオブジェクトの編集を許可のオプションが表示されます。両方の設定を有効にします。
  2. 必要に応じて出力先のオブジェクトを設定し、デプロイします。デプロイされると、オブジェクトタイプが Ontology Manager に表示され、そのオブジェクトを Insight と Object Explorer で閲覧できます。

Pipeline Builder のダイレクトデータソースの出力設定。「このオブジェクトタイプの元をダイレクトデータソースにします」と「このタイプのオブジェクトの編集を許可」のオプションが有効になっています。

デプロイ後のダイレクトデータソースの監視とデバッグについて詳しくはこちら。

既知の制限事項

ダイレクトデータソースは活発に開発が進められているベータ機能であり、現在、次の制限事項があります。

  • リプレイによってオブジェクトビューが消去される: ストリーミングパイプラインをリプレイすると、新しいビューを即座に提供するために既存のオブジェクトビューが削除されます。切り替えが即座に行われるため、新しいビューにはまだすべてのデータが入力されておらず、オブジェクトビューが一時的に不完全になったり、空になったりすることがあります。時間の経過とともに、ビューにすべてのデータが入力されます。この制限に対処するためのリプレイ機能を開発中であり、それに応じてこのドキュメントも更新されます。
  • 初回デプロイ時のタイムアウト: 初回デプロイ時、または出力をリセットしてリプレイする際に、ストリーミングジョブの送信前に失敗する場合があります。これは、デプロイ中に実行される初期セットアップによってタイムアウトが発生することがあるためです。
  • ブランチに対応していない: ブランチではダイレクトデータソースを使用できません。
  • バックフィルに時間がかかる場合がある: リプレイ後のデータのバックフィルに時間がかかる場合があります。改善に向けて開発を進めています。

対処手順とその他の一般的な問題については、ダイレクトデータソースの FAQ を参照してください。

リンクタイプ出力を追加する

オブジェクトタイプ出力を追加すると、リンクタイプ出力を定義できます。オブジェクト出力と同様に、パネルまたはグラフ上で作成できます。

パイプラインの出力パネルを使用する場合

パイプラインの出力パネルで、リンクタイプ > 追加を選択します。リンクタイプの左側と右側を定義できるフォームが開きます。

Pipeline Builder で定義するリンクには、同じパイプライン内で作成されたオブジェクトのみを使用できます。Ontology Manager アプリケーション内では、Pipeline Builder で作成されたオブジェクトと Ontology Manager で作成されたオブジェクトの間にリンクを作成できます。
初回デプロイ後は、リンクタイプID、またはソースおよび対象のオブジェクトタイプを変更できなくなります。

パイプラインの出力パネルからリンクタイプを設定する

凡例

リンクタイプ ID: このリンクを一意に表す、自動生成された ID です。

オブジェクトタイプのアウトプットを選択: ドロップダウンメニューからオブジェクトタイプを選択します。パイプラインにオブジェクト出力がない場合は、まずオブジェクト出力タイプを設定する必要があります。

カーディナリティ: リンクタイプの両側のカーディナリティを選択します。一対多と多対多の2種類のカーディナリティに対応しています。現在、一対一のリンクタイプには対応していません。以下の例では、Aircraft オブジェクトタイプと Flight オブジェクトタイプという2個のオブジェクトタイプが、カーディナリティを持つ関係で結ばれているとします。

  • 一対多のカーディナリティ:1個の Aircraft を多数の Flights にリンクできることを示します。
  • 多対多のカーディナリティ:1個の Aircraft を多数の Flights にリンクでき、1個の Flight を多数の Aircraft にリンクできることを示します。
    • 多対多のカーディナリティを選択すると、データセットまたは変換からの出力をクリックしてドラッグし、結合テーブルとして使用します。 というプロンプトが表示されます。このテーブルには、最初のオブジェクトタイプ(この例では Aircraft)の主キーと、2番目のオブジェクトタイプ(この例では Flight)の主キーの間のリンクのすべての組み合わせを含める必要があります。
    • 以下は、多対多のカーディナリティの例です。Class オブジェクトを多数の Student オブジェクトにリンクでき、Student オブジェクトを多数の Class オブジェクトにリンクできます。
Pipeline Builder における多対多のリンクの例。

主キー/列: リンクの左側の作成に使用するプロパティを選択します。

  • 一対多のカーディナリティを持つリンクタイプでは、主キーはオブジェクトタイプによって決まります。
  • 多対多のカーディナリティを持つリンクタイプでは、結合テーブル内のどの列を、リンクされた各オブジェクトタイプの主キーにマッピングするかを選択します。

外部キー/列: リンクの右側の作成に使用するプロパティを選択します。

  • 一対多のカーディナリティを持つリンクタイプでは、一方のオブジェクトタイプの外部キープロパティが、もう一方のオブジェクトタイプの主キープロパティを参照している必要があります。
  • 多対多のカーディナリティを持つリンクタイプでは、結合テーブル内のどの列を、リンクされた各オブジェクトタイプの主キーにマッピングするかを選択します。

名前: リンクタイプの両側の表示名を入力します。リンクタイプの片側は、そのオブジェクトタイプへのリンクを表します。Aircraft オブジェクトタイプの表示名は、Flight から Aircraft へのリンクを説明します。この例では、1個の Flight に1個の Aircraft が割り当てられるため、表示名として「割り当てられた航空機」を選択できます。

複数形の表示名: リンクタイプのカーディナリティが多である側については、複数形の表示名の入力も求められます。これにより、ユーザーアプリケーションでリンクされたオブジェクトを表示する際に、正しい名前を表示できます。この例では、Flight オブジェクトタイプの複数形の表示名は、Aircraft から Flight へのリンクを説明します。1個の Aircraft には多数の予定された Flights があるため、複数形の表示名を「予定されたフライト」とすることができます。

グラフを使用する場合

リンクの作成元にする2個のオブジェクト出力を選択し、右クリックして新しいリンクタイプを選択します。すべてのオブジェクト情報が入力されたリンクが作成されます。

2個のオブジェクトからリンクを追加する。
2個のオブジェクトの情報が入力されたリンク。

または、グラフ上で1個のオブジェクトを選択し、片側の情報が入力された新しいリンクタイプを作成します。

1個のオブジェクトからリンクを追加する。
1個のオブジェクトの情報が片側に入力されたリンク。

オントロジーの検証エラーを解決する

ユーザーがパイプラインに加えた変更によって、オントロジーで検証エラーが発生することがあります。エラーの例には、次のようなものがあります。

  • Pipeline Builder と Ontology Manager の両方で、同じオブジェクトタイプまたはリンクタイプに競合する変更を加える。
  • パイプライン外のリンクタイプから参照されているオブジェクトタイプの主キーを変更する。
  • オブジェクトタイプのスキーマに、スキーマ移行が必要になる破壊的変更を加える。

エラーは、右側のパネルのこのパイプラインをデプロイセクションに表示されます。エラータブには、デプロイ前にどのような解決が必要かを説明するメッセージが表示されます。

パイプラインをデプロイするには、これらのエラーを解決する必要があります。

デプロイ前に解決する必要があり、ユーザーを Ontology Manager に移動させるオントロジーの検証失敗の例。

解決するボタンに矢印が表示されている場合、選択すると Ontology Manager に移動して検証エラーを解決できます。それ以外の場合は、Pipeline Builder で直接エラーを解決できます。

Ontology Manager でマージ競合を解決する

解決するボタンから移動する Ontology Manager ページ。

Ontology Manager に表示されるプロンプトに従って、マージ競合の解決を適用します。変更が編集に影響する可能性がある場合は、編集を破棄するか、オブジェクトの最新バージョンに対応するように編集を移行するかを決められます。それ以外の場合、マージ競合の解決に追加の指定は不要で、適用を選択できます。

オブジェクトに対して追加の操作が不要な場合のポップアップウィンドウのスクリーンショット。

変更を適用すると、オントロジーが最新の変更で更新され、pipeline に戻るを選択できます。

1個のオブジェクトからの、片側のみ設定されたリンク。

競合を解決してパイプラインに戻ると、Ontology type outputs are out of date with the ontology というエラーが表示されることがあります。これは、上記の競合解決ワークフローでオントロジーの出力に加えた変更が、パイプラインにまだ反映されていないためです。

競合解決後にパイプラインが古い状態のままであるために発生する、オントロジータイプの出力が最新でないことを示すエラーの例。

解決するを選択すると、この問題が解決され、パイプラインをデプロイできるようになるはずです。

Pipeline Builder で競合を解決する

オントロジーの検証エラーの中には、Ontology Manager に切り替えずに解決できるものもあります。以下の例では、スキーマ移行が必要です。これは、Pipeline Builder のオブジェクトタイプのスキーマが、オントロジーのメインブランチ上の最新スキーマから変更されている場合に発生します。解決するを選択して、Pipeline Builder で直接移行方法を選択します。

デプロイ前に解決する必要があるスキーマ移行の失敗の例。

影響を受けるプロパティについて、プロパティから編集を破棄するか、プロパティの最新バージョンに対応するように編集を移行するかを選択できます。

1個のオブジェクトからの、片側のみ設定されたリンク。

最適な方法を選択したら、移行を適用を選択します。

オブジェクトタイプの出力を Pipeline Builder に戻す

パイプラインから出力されるデータセットを元にしているオブジェクトタイプは、次の手順で Pipeline Builder に戻せます。

右側のパネルで、パイプラインの出力の横にある歯車アイコンを選択します。

Ontology Manager のオブジェクトタイプに移動するには、記号を選択します。

オブジェクトに置換を選択します。データセットをオントロジータイプの出力に置換ダイアログが開きます。

Ontology Manager のオブジェクトタイプに移動するには、記号を選択します。

パイプライン内の対応するオブジェクトに戻すデータセット出力を選択し、選択した出力をインポートを選択します。

Ontology Manager のオブジェクトタイプに移動するには、記号を選択します。

変更を保存し、パイプラインをデプロイします。

Pipeline Builder でオントロジータイプの出力の所有権を解除する

Pipeline Builder でオントロジータイプの出力の所有権を解除すると、それらのオントロジータイプの管理が Ontology Manager に移管されます。以降、それらのオントロジータイプは Ontology Manager でのみ変更できるようになります。これは、共通プロパティタイプや実行時の派生プロパティなど、Pipeline Builder が対応していないオブジェクトタイプの設定が必要な場合に役立ちます。オントロジータイプの所有権を解除するには、所有権を解除するオブジェクトタイプを選択します。選択したオブジェクトタイプを参照するリンクタイプも、自動的に Ontology Manager に移管されます。

オントロジータイプの出力をデータセット出力に置き換えられるのは、main ブランチの最新の保存済みバージョンが正常にデプロイされている場合のみです。

Student オブジェクトタイプを選択した状態の、選択したオブジェクタイプとリンクタイプを所有権解除。

選択したオブジェクタイプとリンクタイプを所有権解除を選択します。

このパイプラインでは、オブジェクトタイプの出力ノードが、Ontology Manager のオブジェクトタイプの元となるデータセットの出力ノードに変換されます。右端のパネルで出力の横にあるアイコンを選択すると、Ontology Manager のオブジェクトタイプに移動できます。

Ontology Manager のオブジェクトタイプに移動するには、記号を選択します。

ダイレクトデータソースを元にしているオブジェクトの出力先の所有権を解除すると、グラフ内の所有権を解除したノードはストリームデータセットとして表示されます。ただし、このノードはストリーミングデータセットではなく、オブジェクトタイプの元となるダイレクトデータソースを表します。ストリームデータセットとは異なり、ダイレクトデータソースにはデータが直接保存されず、データはオントロジーに保存されます。所有権を解除した後も、Ontology Manager または Insight でオブジェクトタイプに移動できます。

ストリーミングデータセットのように表示されるダイレクトデータソースのオブジェクトタイプノードを示す、Pipeline Builder のグラフの一部。ノードを選択すると表示されるメニューには、プラットフォームのさまざまなアプリケーションでオブジェクトタイプを開く選択肢があります。

選択したオブジェクトの所有権を解除したら、パイプラインをデプロイします。

元データソースの列名は、対象のオブジェクトタイプのプロパティに設定されている元の列の名前と完全に一致している必要があります。列名が一致しないと、データが欠落したり、インデックス化ジョブが失敗したりします。たとえば、元の列が routeId であるプロパティには、元データソースに routeId という名前の列が必要です。

きめ細かなセキュリティ権限を設定する

詳細なセキュリティ権限またはオブジェクトセキュリティポリシーを使用して、オブジェクトにきめ細かなセキュリティ権限を設定できます。

Pipeline Builder のオブジェクトセキュリティポリシーは現在、Ontology Manager のオブジェクトセキュリティポリシーで利用可能な機能の一部をサポートしています。以下のセクションでは、Pipeline Builder がサポートする機能について説明します。

読み取り時のみ適用

行と列のアクセス制御(制限付きビューおよびオブジェクトセキュリティポリシーを含む)は、ユーザーが Pipeline Builder の出力から読み取れる内容を絞り込みます。これらの制御は、下流の出力やエクスポートには及びません。下流に流れるデータの保護を維持するには、これらの制御をマーキングまたは機密情報区分ベースのアクセス制御と組み合わせてください。モデル全体については、アクセス制御の伝播を参照してください。

きめ細かなセキュリティポリシーを設定するには、出力オブジェクトに移動し、きめ細かなセキュリティを設定を選択します。

出力の「きめ細かなセキュリティを設定」オプション。

ポップアップウィンドウで、詳細なセキュリティ権限またはオブジェクトセキュリティポリシーを選択します。

きめ細かなセキュリティポリシーのポップアップウィンドウ。

オブジェクトセキュリティポリシー

オブジェクトセキュリティポリシーオプションでは、行レベルのポリシー、プロパティセキュリティポリシー、マーキングの解除管理、機密情報区分の変更を使用して、セルレベルのきめ細かなセキュリティを設定できます。

デフォルトでは、オブジェクトセキュリティポリシーはすべてのプロパティに適用されます。プロパティセキュリティポリシーにプロパティが含まれている場合、そのプロパティ値を閲覧するには、ユーザーがオブジェクトセキュリティポリシーとプロパティセキュリティポリシーの両方の条件を満たす必要があります。

きめ細かなセキュリティポリシーウィンドウのスクリーンショット。

行レベルのポリシーを追加するには、きめ細かなセキュリティの横にあるプラス記号(+)アイコンを選択します。

Granular Policy の作成ボタンのスクリーンショット。

ポリシーエディターでは、プロパティ値、ユーザープロパティ、固定値を比較するルールを作成して、セキュリティ条件を定義できます。

きめ細かなセキュリティ権限の設定ウィンドウのスクリーンショット。

マーキングまたは機密情報区分ユーザープロパティに基づくポリシーを作成するには、値のデータ型がマーキングまたは Classification に設定されていることを確認してください。

正しいデータ型を適用するには、データ加工ノードで Logical Type Cast 式を使用します。

Pipeline Builder の Logical Type Cast 式のスクリーンショット。

また、オントロジーとの互換性を保つため、マーキングと機密情報区分は配列に格納する必要があります。単一のマーキングまたは機密情報区分をオブジェクトプロパティに直接マッピングすると、エラーが発生します。

単一のマーキングをオブジェクトプロパティにマッピングしたときのエラーのスクリーンショット。

マーキングには、対応するマーキングIDを使用する必要があります。マーキングIDに期待される形式について詳しくはこちら。

きめ細かなセキュリティポリシーを設定したら、左下の戻るを選択してメインの設定ウィンドウに戻ります。追加の変更が不要な場合は、適用を選択してポリシーを保存します。

継承されたマーキングを解除するには必須制御に、機密情報区分を調整するには Classification に移動します。

機密情報区分ウィンドウのスクリーンショット。

Pipeline Builder は現在、手動で入力したテーブルの機密情報区分の調整をサポートしていません。

プロパティセキュリティポリシーも同様の方法で追加できます。プロパティセキュリティポリシーセクションで追加を選択します。これにより、新しいプロパティセキュリティポリシーが作成されます。プロパティセキュリティポリシーを設定するには、編集するポリシーの矢印を選択します。

プロパティセキュリティポリシーを追加する方法のスクリーンショット。

ポリシー名で、プロパティセキュリティポリシーの名前を変更できます。影響を受けるプロパティで、このポリシーを適用する列を1列以上選択し、上記と同じ方法できめ細かなセキュリティ、強制アクセス制御、または機密情報区分を設定します。

オブジェクトセキュリティポリシーの設定ウィンドウのスクリーンショット。

プロパティセキュリティポリシーを設定したら、左下の戻るを選択してメインの設定ウィンドウに戻ります。適用でポリシーを保存します。

制限付きビューポリシー

出力内でユーザーが閲覧できる行を設定するには、オブジェクトに適用する制限付きビューポリシーを作成できます。このポリシーは制限付きビューを元にしています。この制限付きビューは、変更を main にマージしてデプロイした後にビルドされます。

ポリシーは、制限付きビューポリシーのウィンドウで直接設定できます。ここでも、上記で説明したマーキングと機密情報区分のルールが適用されます。制限付きビューポリシーとベストプラクティスについて詳しくはこちら。また、より柔軟に設定できるように、制限付きビューポリシーをオブジェクトポリシーに変換することもできます。

制限付きビューポリシーの設定ウィンドウのスクリーンショット。

きめ細かなセキュリティポリシーの作成が完了したら、パイプラインを保存し、変更を提案します。基盤となるセキュリティポリシーは、main ブランチでのデプロイが正常に完了した後にのみ作成され、有効になります。