Apache Spark BatchのtSqlRowプロパティ - Cloud - 8.0

処理(インテグレーション)

Version
Cloud
8.0
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > 変換処理コンポーネント
データガバナンス > サードパーティーシステム > 変換処理コンポーネント
データクオリティとプレパレーション > サードパーティーシステム > 変換処理コンポーネント

このプロパティはSpark Batchジョブフレームワークで実行されているtSqlRowを設定するために使います。

Spark Batch tSqlRowコンポーネントは、変換処理ファミリーに属しています。

このフレームワーク内のコンポーネントは、ビッグデータ対応のサブスクリプションTalend 製品すべて、およびTalend Data Fabricで利用できます。

基本設定

[Schema] (スキーマ)[Edit schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

  • [Built-in] (組み込み): このコンポーネントに対してのみスキーマを作成し、ローカルに保管します。

  • [Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。

再使用するスキーマに整数またはファンクションのデフォルト値が指定されている場合は、これらのデフォルト値を引用符で囲まないようにご注意ください。引用符で囲まれている場合は手動で削除します。

詳細は、Talend Studioユーザーガイドでテーブルスキーマに関連する説明をご覧ください。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。
注: 変更を加えると、スキーマは自動的に組み込みになります。
  • [View schema] (スキーマの表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続をアップデート): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。

    変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーのコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

このコンポーネントはダイナミックスキーマ機能の利点を備えているので、ソースファイルから不明なカラムを取得したり、各カラムを個別にマッピングしなくてもソースからカラムを一括してコピーしたりできます。ダイナミックスキーマの詳細は、 Talend Studio ユーザーガイドをご覧ください。

このダイナミックスキーマ機能は、テーブルの不明なカラムを取得する目的で設計されており、この目的に限り使用をお勧めします。テーブルの作成で使用することは勧められていません。

ダイナミックスキーマでは、tSQLRowコンポーネントを使って、Parquetファイル内の複雑な(たとえばstructmapを含んでいる)スキーマをSpark SQLで読み取ったり照会したりできます。

[SQL context] (SQLコンテキスト)

tSqlRowで使うクエリー言語を選択します。

  • [SQL Spark Context] (SQL Sparkコンテキスト): Sparkネイティブクエリー言語。

  • [SQL Hive Context] (SQL Hiveコンテキスト): SparkでサポートされるHiveクエリー言語。

    [SQL Hive Context] (SQL Hiveコンテキスト)の場合、tSqlRowではHiveメタストアを使えません。Hiveメタストアに対してデータの読み取りまたは書き込みを行う必要がある場合は、代わりにtHiveInputまたはtHiveOutputを使ってください。この状況では、ジョブを別の方法で設計する必要があります。

    SparkでサポートされるHiveクエリーステートメントの詳細は、サポートされるHive機能をご覧ください。

クエリー

クエリーを入力します。フィールドの順序に気を付けて、スキーマ定義と一致するようにしてください。

tSqlRowコンポーネントは、入力リンクのラベルを使って、同じ入力リンクから取得されたデータセットが格納される登録済みテーブルに名前を付けます。たとえば、入力リンクのラベルがrow1である場合、このrow1が自動的に、クエリーを実行できるテーブルの名前になります。

詳細設定

[Register UDF jars] (UDF jarを登録)

tSqlRowで使うSpark SQLまたはHive SQL UDF(ユーザー定義ファンクション) jarを追加します。UDFの呼び出しでFQCN(完全修飾クラス名)を使わない場合は、[Temporary UDF functions] (一時UDFファンクション)テーブルでこのUDFのファンクションエイリアスを定義して、そのエイリアスを使う必要があります。クエリーからUDFを呼び出すにはエイリアスの方が実用的なので、エイリアスの利用をお勧めします。

このテーブルに1行を追加したら、クリックして[...]ボタンを表示し、次にこのボタンをクリックしてjarインポートウィザードを表示します。このウィザードを使用して、目的のUDF jarファイルをインポートします。

[Temporary UDF functions] (一時UDFファンクション)

このテーブルに入力して、インポートされた各UDFクラスに、tSqlRow内のクエリーで使う一時的なファンクション名を付けます。

[SQL context] (SQLコンテキスト)リストから[SQL Spark Context] (SQL Sparkコンテキスト)を選択した場合は、[UDF output type] (UDF出力タイプ)カラムが表示されます。このカラムでは、使うSpark SQL UDFの出力のデータ型を選択する必要があります。

使用方法

[Usage rule] (使用ルール)

このコンポーネントは中間ステップとして使用されます。

このコンポーネントは、所属するSpark Batchのコンポーネントのパレットと共に、Spark Batchジョブを作成している場合にだけ表示されます。

特に明記していない限り、このドキュメンテーションのシナリオでは、標準ジョブ、つまり従来の Talend データ統合ジョブだけを扱います。

[Spark Connection] (Spark接続)

[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
  • Yarnモード(YarnクライアントまたはYarnクラスター):
    • Google Dataprocを使用している場合、[Spark configuration] (Spark設定)タブの[Google Storage staging bucket] (Google Storageステージングバケット)フィールドにバケットを指定します。

    • HDInsightを使用している場合、[Spark configuration] (Spark設定)タブの[Windows Azure Storage configuration] (Windows Azure Storage設定)エリアでジョブのデプロイメントに使用するブロブを指定します。

    • Altusを使用する場合は、[Spark configuration] (Spark設定)タブでジョブのデプロイにS3バケットまたはAzure Data Lake Storageを指定します。
    • オンプレミスのディストリビューションを使用する場合は、クラスターで使用されているファイルシステムに対応する設定コンポーネントを使用します。一般的に、このシステムはHDFSになるため、https://help.talend.com/access/sources/content/topic?pageid=thdfsconfiguration&mapid=hdfs&afs:lang=ja&EnrichVersion=8.0を使用します。

  • [Standalone mode] (スタンドアロンモード): tHDFSConfigurationtS3Configurationなど、クラスターで使われているファイルシステムに対応する設定コンポーネントを使用します。

    ジョブ内に設定コンポーネントがない状態でDatabricksを使用している場合、ビジネスデータはDBFS (Databricks Filesystem)に直接書き込まれます。

この接続は、ジョブごとに有効になります。