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

Delta Lake

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 Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > テクニカルコンポーネント > Delta Lake components
データガバナンス > サードパーティーシステム > テクニカルコンポーネント > Delta Lake components
データクオリティとプレパレーション > サードパーティーシステム > テクニカルコンポーネント > Delta Lake components
Last publication date
2024-02-28

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

Spark BatchtDeltaLakeInputコンポーネントは、テクニカルファミリーに属しています。

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

基本設定

[Define how to save the dataset] (データセットの保存方法を定義)

次のオプションから、使用するデータセットのソースを選択します。

 

[Metastore] (メタストア): メタストアからデータをテーブル形式で取得します。

 

[Files] (ファイル): ファイルからデータをデルタ形式で取得します。

  [Query] (クエリー): SQLクエリーからデータを取得します。

[Define a storage configuration component] (ストレージ設定コンポーネントを定義)

ターゲットファイルシステムへの接続に関する設定情報の提供で使用する設定コンポーネントを選択します。

このチェックボックスをオフにすると、ターゲットファイルシステムはローカルシステムになります。

使用する接続設定は同じジョブ内にあることが必要です。たとえばジョブにtS3Configurationコンポーネントをドロップした場合は、それを選択し、指定したS3ストレージシステムに結果を書き込めるようになります。

このフィールドは、[Basic settings] (基本設定)ビューで[Define the source of the dataset] (データセットのソースを定義する)ドロップダウンリストから[Files] (ファイル)を選択した場合のみ利用できます。

[Property type] (プロパティタイプ)

[Built-in] (組み込み)[Repository] (リポジトリー)のいずれかです。

 

[Built-In] (組み込み): 一元的に保存されるプロパティデータはありません。

 

[Repository] (リポジトリー): プロパティが保存されているリポジトリーファイルを選択します。

プロパティは、リポジトリーツリーのHadoopクラスターノードに一元的に保存されます。

後続するフィールドは、取得されたデータを使用して事前に入力されます。

Hadoopクラスターノードの詳細は、Hadoop接続メタデータを管理をご覧ください。

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

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

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。

  • [View schema] (スキーマを表示): スキーマのみを表示する場合は、このオプションを選択します。

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

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

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

Sparkは、PARQUETスキーマ内のカラムのデータ型を自動的に推測します。Apache SparkのTalendジョブでは、日付型がint96として推測され、保管されます。

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

ダイナミックスキーマ機能は、テーブルの不明なカラムを取得するしくみになっており、その他の目的には使用しないことをお勧めします。テーブルの作成には推奨しません。

 

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

 

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

[Database] (データベース)

使うDelta Lakeデータベースの名前を二重引用符で囲んで入力します。

このフィールドは、[Basic settings] (基本設定)ビューで[Define the source of the dataset] (データセットのソースを定義する)ドロップダウンリストから[Metastore] (メタストア)を選択した場合のみ利用できます。

[Table] (テーブル)

使うテーブルの名前を二重引用符で囲んで入力します。

このフィールドは、[Basic settings] (基本設定)ビューで[Define the source of the dataset] (データセットのソースを定義する)ドロップダウンリストから[Metastore] (メタストア)を選択した場合のみ利用できます。

[Folder/File] (フォルダー/ファイル)

ファイルシステムで使用するデータを参照するか、パスを入力します。

設定したパスがフォルダーを指す場合、このコンポーネントによりフォルダーに保管されているすべてのファイル(/user/talend/inなど)が読み取られます。サブフォルダーが存在する場合、[Spark configuration] (Spark設定)タブの[Advanced properties] (詳細プロパティ)テーブルでプロパティspark.hadoop.mapreduce.input.fileinputformat.input.dir.recursivetrueに設定しない限り、サブフォルダーは自動的に無視されます。
  • 使用するファイルシステムに応じて、ジョブに配置された対応する設定コンポーネント(S3用のtS3Configuration、Azure StorageおよびAzure Data Lake Storage用のtAzureFSConfigurationなど)を適切に設定します。

このフィールドに複数のファイルまたはディレクトリーを指定する場合は、パスをそれぞれコンマ(,)で区切ります。

参照用のボタンはSpark Localモードでは機能しません。お使いのディストリビューションで、Talend Studioがサポートしているその他のSpark Yarnモードを使用している場合は、同じジョブ内の設定コンポーネントで接続を適切に設定したことを確認する必要があります。使用されるファイルシステムに応じて設定コンポーネントを使用します。

このフィールドは、[Basic settings] (基本設定)ビューで[Define the source of the dataset] (データセットのソースを定義する)ドロップダウンリストから[Files] (ファイル)を選択した場合のみ利用できます。

[SQL Query] (SQLクエリー) データの取得に使用するSQLクエリーを入力します。

このフィールドは、[Basic settings] (基本設定)ビューで[Define the source of the dataset] (データセットのソースを定義する)ドロップダウンリストから[SQL Query] (SQLクエリー)を選択した場合のみ利用できます。

[Specify Time Travel timestamp] (タイムトラベルタイムスタンプを指定する)

このチェックボックスをオンにして、使うデータセットのタイムスタンプ定義のスナップショットを読み取ります。

Deltalakeで使われる形式はyyyy-MM-dd HH:mm:ssです。

Delta Lakeは、ファイルのアップロード時間とこのファイルのメタデータタイムスタンプとの間にわずかな違いを体系的に作成します。データをフィルタリングする必要がある場合は、この違いに留意してください。

これらのプロパティは、[Define how to save the dataset] (データセットの保存方法を定義)ドロップダウンリストで[Files] (ファイル)を選択した場合のみ利用できます。

[Specify Time Travel version] (タイムトラベルバージョンを指定する) このチェックボックスをオンにして、使うデータセットのバージョン管理されたスナップショットを読み取ります。

これらのプロパティは、[Define how to save the dataset] (データセットの保存方法を定義)ドロップダウンリストで[Files] (ファイル)を選択した場合のみ利用できます。

使用方法

使用ルール

このコンポーネントは、終了コンポーネントとして使用され、入力リンクを必要とします。

このDelta Lakeレイヤーは、Data Lakeシステムの上に構築されているため、Data Lakeシステムに対応する設定コンポーネント(tAzureFSConfigurationなど)を使用して、Data Lakeシステムの一部として接続されます。

[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を指定します。
    • オンプレミスのディストリビューションを使用する場合は、クラスターで使われているファイルシステムに対応する設定コンポーネントを使用します。

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

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

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