トランスポーズ

行とカラムが入れ替わるようにデータを再配置できます。

情報一覧

パラメーター

説明
カテゴリー トランスフォーム
データ ソース タイプ HD
出力を他のオペレーターに送信 はい1
データ処理ツール Spark

新しいヘッダーを定義するためにどの入力カラムを使用するかを選択できます。入力に X カラムと Y 行がある場合、出力には Y 行と X カラムがあります。

次の例では、名前 カラムが出力ヘッダーとして選択されています。

年齢 名前 学年
12 Jenney A
14 Mary A
13 Emily B

名前 をヘッダー カラムとして使用してトランスポーズを実行すると、データセットは次の例のようになります。

名前 Jenney Mary Emily
年齢 12 14 13
学年 A A B

入力

HDFS からこのオペレーターへのデータセットです。新しいヘッダーを定義するには、少なくとも 1 つのカテゴリー カラムが必要です。

値が不正または欠落しています
欠損値は、新しいヘッダーを定義するために選択されたカラムにない場合にのみ保持されます。この場合、ジョブは実行時に失敗します。

制限事項

このオペレーターは、5,000 行を超える入力を転置できません。入力に 1 つのカラムがあり、このカラムを新しいヘッダーとして選択すると、オペレーターの構成中にエラーが発生します。

構成

パラメーター 説明
ノート このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。
新しいヘッダーのカラム オプションとして、名前と値が新しいヘッダーを定義するカテゴリー(文字配列) カラムを選択できます。列が選択されていない場合、出力のヘッダーはデフォルト (Column1, Column2...ColumnX) になります。
ノート: 選択したカラムに Null または重複した値が含まれている場合、ジョブは実行時に失敗し、意味のあるエラー メッセージが表示されます。

一部の値に英数字以外の文字が含まれている場合、新しいヘッダーではそれらはアンダースコアに置き換えられます。

一部の値が文字以外の文字で始まる場合は、カラム名の正規表現「^[A-Za-z]+ \\ w*$」と一致するように文字「a」が先頭に追加されます。

最初のカラムの新しい名前 出力の最初のカラムのオプションの新しい名前。正規表現「^[A-Za-z]+ \\ w*$」と一致します。

名前を指定したくない場合は、デフォルトの空のボックスのままにしておきます。

ノート: ここで値を指定すると、出力の最初のカラム名が上書きされます。新しいヘッダー (前のパラメーター) として選択されたカラムのカラム名、または定義する入力カラムが選択されていない場合はデフォルトのヘッダーのデフォルト値 Column1 のいずれかです。出力ヘッダー。
ストレージ フォーマット 結果を保存する形式を選択します。保存形式はオペレーターの種類によって決まります。

一般的な形式は、AvroCSVTSV、または Parquet です。

圧縮 出力の圧縮のタイプを選択します。

利用可能な Parquet 圧縮オプション。

  • GZIP
  • Deflate
  • Snappy
  • 圧縮なし

利用可能な Avro 圧縮オプション。

  • Deflate
  • Snappy
  • 圧縮なし
出力ディレクトリ 出力ファイルを保存する場所。
出力名 結果を含める名前。
出力を上書き そのパスにある既存のデータを削除するかどうかを指定します。
  • はい - パスが存在する場合は、そのファイルを削除し、結果を保存します。
  • いいえ - パスがすでに存在する場合は失敗します。
高度な Spark 設定の自動最適化
  • [はい] は、デフォルトの Spark 最適化設定の使用を指定します。
  • [いいえ] を選択すると、カスタマイズされた Spark 最適化を提供できます。 [設定の編集] をクリックして、Spark の最適化をカスタマイズします。詳細については、「詳細設定ダイアログ」を参照してください。

出力

ビジュアル出力

データ出力
これはセミターミナル オペレーターであり、設計時に後続のオペレーターに接続できますが、ユーザーがオペレーターを実行するまで完全な出力スキーマは送信されません。設計時の部分出力スキーマは、出力の最初のカラムのみです。実行後、出力スキーマは自動的に更新され、UI パラメーターの選択が有効でなくなった場合には後続のオペレーターが赤色に変わります。
ノート: 次のいずれかのイベントが発生すると、トランスポーズ オペレーターの最終出力スキーマがクリアされます。
  • ユーザーは、トランスポーズ オペレーターの構成プロパティを変更します。
  • ユーザーは、トランスポーズ オペレーターに接続されている入力を変更します。
  • ユーザーは、トランスポーズ オペレーターのステップ実行結果をクリアします。

この場合、後続のオペレーターに送信される出力スキーマは、設計時に定義された部分スキーマになります (したがって、後続のオペレーターは無効になる可能性があります)。ユーザーは、トランスポーズ オペレーターを再度実行して、新しい出力スキーマを送信する必要があります。

出力の最初のカラムは常に chararray です (入力ヘッダーから作成されるため)。他のすべてのカラムは、すべての入力カラム (ユーザーが指定した場合に新しいヘッダーを定義するために選択されたカラムを除く) が数値の場合はダブル型、それ以外の場合は chararray です。