Splitter

Splitter では階層データがフラット データに変換されます。Splitter には 1 つの入力ポートと、Splitter から次のステージへとデータを送信する 1 つの出力ポートがあります。Splitter の機能を使用する一例として、情報の一覧をファイルで受け取って、その情報の各項目を個々のデータ行として抽出することがあります。具体的には、例えば、緯度/経度ポイントで表す一定の距離内に配置された複数のランドマークを入力として引き渡し、それらのランドマークを Splitter によって個々のデータ行に分割できます。

Splitter ステージの使用

  1. [制御ステージ] の下で [Splitter] をクリックして、キャンバスまでドラッグし、データフロー内の配置したい位置にドロップして、入力および出力ステージに接続します。
  2. [Splitter] をダブルクリックします。[Splitter オプション] ダイアログ ボックスが表示されます。
  3. [分割位置] ドロップダウンをクリックして、このステージで使用できる別のリスト タイプを表示します。Splitter で作成するリスト タイプをクリックします。[Splitter オプション] ダイアログ ボックスは、選択内容に応じて調整され、そのリスト タイプで使用できるフィールドが表示されます。

    また、[分割位置] ドロップダウンの横にある省略記号 (...) ボタンをクリックすることもできます。[フィールド スキーマ] ダイアログ ボックスが表示され、Splitter に入力されるデータのスキーマが示されます。リスト タイプは太字で示され、その後に続いて、各タイプの個々のリストが表示されます。また、これらのフィールドの形式も表示されます (string、double 等)。Splitter で作成するリスト タイプをクリックし、[OK] をクリックします。[Splitter オプション] ダイアログ ボックスは、選択内容に応じて調整され、そのリスト タイプで使用できるフィールドが表示されます。

  4. 抽出された分割リストの元のレコードを返すには、[ヘッダ レコードを出力] をクリックします。
  5. レコードに分割リストがない場合のみ、元のレコードを返すには、[入力リストが空の場合のみ] をクリックします。
  6. Splitter で出力に含めるフィールドを選択します。そのためには、該当するフィールドの [含める] ボックスをクリックします。
  7. [OK] をクリックします。

Splitter の例

次の例では、ドライブの道順を含むルーティング ステージから出力を受け取って、各道順 (またはリスト項目) をデータ行に分割できます。データフローは次のようになります。

このデータフローは、次のように機能を実行します。

  1. Read from File ステージには、個々のポイントの識別を容易にする緯度、経度、および入力キー値が含まれます。

  2. Aggregator ステージでは、Read from File ステージからのデータに基づいてスキーマ (データの構造的階層) を作成し、緯度と経度のグループをルート ポイントの一覧として識別します。このステップは、次のステップを適切に実行するために必要なステップです。

  3. Location Intelligence モジュールの Get Travel Directions ステージでは、ステップ 2 からのルート ポイントを使用して、ある場所から別の場所への道順を作成します。
  4. Splitter ステージでは、データを RouteDirections フィールドで分割し、出力リストに Get Travel Directions ステージから使用可能なフィールドをすべて取り込む必要があります。

    スキーマは、次のように構成されます。RouteDirections と RoutePoints は、このジョブで使用できるリスト タイプです。

  5. Write to File ステージでは、出力がファイルに書き出されます。