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
2023-10-18

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

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

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

基本設定

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

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

 

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

 

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

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

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

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

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

使用する接続設定は同じジョブ内にあることが必要です。たとえば、tHDFSConfigurationコンポーネントをジョブにドロップした場合は、このコンポーネントを選択して、所定のHDFSシステム内で結果を書き込むことができます。

このフィールドは、[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に設定しない限り、サブフォルダーは自動的に無視されます。
  • 使用するファイルシステムに応じて、ジョブに配置されたHDFS向けtHDFSConfigurationコンポーネント、S3向けtS3Configurationコンポーネント、Azure StorageおよびAzure Data Lake Storage向けtAzureFSConfigurationなど、対応する設定コンポーネントを適切に設定します。

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

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

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

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

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

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