Load アクションの高度なモード
Load アクションの JSON 構成で直接カスタマイズし、Aggregate と異なるオプション
目的
全体的なスキーマは Aggregate アクションと非常に似ていますが、特定のオプションについては制限があります。Load アクションは、データを生のソースから Data Platform に読み込むために設計されており、Aggregate アクションは Data Platform データウェアハウス内のテーブルに対する操作を実行するために設計されています。
広い意味で、Load アクションは Aggregate アクションの簡易版であり、データを読み込むための簡単な方法を提供することを目的としています。Aggregate アクションの完全なドキュメントについては、Aggregate アクションの高度なドキュメントを参照してください。
Load アクションの JSON 構成ファイルは、必須の高レベルオブジェクトで構成されています。これは次のものを含みます。
- Sources:データを読み込むために使用するソーステーブルを定義します。
- Schema:宛先テーブルとソーステーブルの間の個別のマッピングを定義します。
- Destination:Load アクションからの出力データを読み込むテーブルを定義します。
その他のオプションパラメータも追加できます。これは特定のセクション その他のオプションパラメータでカバーします。これは、セグメンテーション、パーシモン、変換ルールなどが含まれます。
ソース
形式:JSON はソースを指す文字列値とオプションの追加パラメータを含みます。ソースパスは次のようになります:dwh/database_name/table_name、ここで database_name はソースの場所の名前(ソースまたは Lakehouse Manager からのもの)であり、table_name はソースオブジェクトまたは Lakehouse Manager のスキーマ内のオブジェクトの名前です。
JSON キー:params.load_from[0].source または params.load_from.source
例:
SQL のようなソースの場合:テーブルにエイリアスを追加するには、テーブル名の後にスペースを追加し、テーブルのエイリアスの文字を追加します。例えば:"source": "dwh/mysql_source/lifetime_insights fb_i"。これにより、lifetime_insights テーブルが fb_i にエイリアス化されます。したがって、このエイリアスをジョインとスキーマで再利用できます。
スキーマ
スキーマは、ソース内のフィールドの名前と、これらのフィールドが宛先に持つ必要がある名前の間の名前の変更を決定します。
形式:スキーマオブジェクトには、各キーが宛先の属性の名前であり、値が属性に関連付けられたパラメータを含む JSON オブジェクトのシリーズが含まれます。
JSON キー:params.schema
例:
schema.keys()宛先属性type各属性のマッピングモード
3種類のマッピングがあります。
- type:
default:変換なしで属性を別の属性にマッピングします。 -
table属性の元のソースオブジェクト
-
attributeマッピング元のソース属性
-
operationSQL 操作セクションで言及された SQL 操作タイプを表します。(SQL のようなソースのみ)
- type:
replace:すべての宛先行にハードコードされた値を設定します。 -
value:この属性は、挿入/更新されるすべての宛先行について、値で埋められます。
type:"sql":次の SQL 式が適用されます。(SQL のようなソースのみ)-
sql値は SQL ステートメントです。
宛先
宛先は、アクションデータが注入される場所を表します。
形式:そのパスは次のようになります:dwh/database_name/table_name。ここで database_name は宛先データベースの名前(通常は default_dataset)であり、table_name は Lakehouse Manager スキーマ内の宛先テーブルの名前です。
JSON キー:params.load_to[source]
例:
一度に複数の宛先を埋めることができます。
その他のオプションパラメータ
Extract_chunk_size
extract_chunk_size は、一度にデータを抽出する際の最大許容サイズを表す整数値です。
JSON キー: params.load_from[0].extract_chunk_size
例:
これにより、ワーカーは5000行のバッチでデータを抽出できます。
Load_batch_size
load_batch_size は、一度にデータベースにデータを読み込む際の最大許容サイズを表す整数値です。
JSON キー: params.load_batch_size
例:
これにより、ワーカーは5000行のバッチでデータを読み込むことができます。
Source_rules
source_rules は、シンプルなデータ準備のためのルールを表します。この設定は、DWHから同期された既存のルールを上書きします。これらはソースの属性に適用されます。例えば、属性 date_source に変換ルールを適用したいと仮定しましょう。
形式: JSONオブジェクトのリストで、各オブジェクトは属性に適用されるルールを表します。
JSON キー: load_from.source_rules
例:
詳細な設定ドキュメントについては、blueprint rules の記事を参照してください。
Rules
Rules は source_rules と同様ですが、抽出属性ではなく、宛先属性に適用されます。これにより、同じソース属性に対して異なる宛先属性をマッピングし、異なるルールを割り当てることができます。
形式: JSONオブジェクトのリストで、各オブジェクトは属性に適用されるルールを表します。
JSON キー: rules
例:
JSON/XMLのセミ構造化マッピングの処理
セミ構造化データのマッピングを処理するには、 データを正規化するためにループするノードを指定する必要があります。
例えば、ソースがこのようになっている場合:
ロード設定の"params"セクションに以下を追加する必要があります:
構造化されたCSV/XLSXファイルのさらに多くのオプション
時々、ExcelやCSVファイルは最初の行から始まりません。 ファイルが始まる前にDPEがスキップする必要がある行数を設定する必要があります。
encoding
CSVファイルの文字エンコーディングを指定します(デフォルトは自動検出)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
header
ファイルの最初の行がヘッダーであるかどうかを示します(デフォルト: true)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
header_offset
ファイルソースでDPEがファイルが始まる前にスキップする必要がある行数を示します(デフォルト 0)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
offset
ヘッダーとデータ行の間に空白の行がいくつあるかを示します(デフォルト 0)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
limit
ファイルから読み取る最大行数を定義します(デフォルト None)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
separator
CSVファイルでフィールドを区切るために使用される文字を設定します(デフォルトは自動検出)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
quotechar
特殊文字を含むフィールドをクォートするために使用される文字を定義します(デフォルト '"')。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
escapechar
フィールド内でクォート文字をエスケープするために使用される文字を指定します(デフォルト '')。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
lineterminator
行の終わりを示す文字列を決定します(デフォルト "\n")。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
skipinitialspace
区切り文字の直後に続く空白を無視します(デフォルト false)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
doublequote
連続するクォート文字が1つとして解釈されるかどうかを制御します(デフォルト true)。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
worksheet
.xlsおよび.xlsxソースファイル専用
ロードするワークシートを指定します。
ロード設定の"params.load_from[0]"セクションに以下を追加する必要があります:
さらに詳しく
当社のソリューションのトレーニングや技術的な実装支援が必要な場合は、営業担当者にお問い合わせください、または当社のProfessional Services ページをご覧ください。見積もりをリクエストし、当社の専門家によってプロジェクトを分析してもらうことができます。
質問をする、フィードバックを送信する、またはData Platformを構築するチームと直接交流するには、専用のDiscord チャネルをご利用ください。
OVHcloudサービスについてサポートが必要な場合は、Help Centreでリクエストを作成してください。
コミュニティのユーザーに参加してください。

