OSSデータソースの設定
OSS(オブジェクトストレージサービス、Object Storage Service)は、大容量で安全性と信頼性の高いクラウドストレージサービスで、非構造化データの保存に適しています。
使用制限
現在、次の構成方法にのみ対応しています:
- OSSの読み取り(オフライン読み取り)と、AEプリセット倉庫の空間テーブルへの書き込みに対応
- AEプリセット倉庫の空間テーブルからOSSへの書き込み(オフライン書き込み)に対応
注:
- OSSから、AEプリセット倉庫以外の他のデータベースへの直接書き込みには、現在対応していません
対応するフィールドタイプ
| ファイルタイプ | フィールドタイプ | オフライン読み取り(Reader) | オフライン書き込み(Writer) |
|---|---|---|---|
orc parquet | boolean | 対応 | 対応 |
| tinyint | 対応 | 対応 | |
| smallint | 対応 | 対応 | |
| integer | 対応 | 対応 | |
| bigint | 対応 | 対応 | |
| real | 対応 | 対応 | |
| double | 対応 | 対応 | |
| decimal | 対応 | 対応 | |
| varchar | 対応 | 対応 | |
| char | 対応 | 対応 | |
| varbinary | 未対応 | 未対応 | |
| date | 対応 | 対応 | |
| timestamp | 対応 | 対応 | |
| array | 対応 | 対応 | |
| row | 対応 | 対応 | |
| map | 対応 | 対応 | |
| csv | string | 対応。1文字の列区切り記号または \t(Tab)を設定でき、デフォルトはカンマです。詳しくは「CSV、Textファイルの読み取りルール」を参照してください。 | 書き込みに対応。列区切り記号のデフォルトはカンマです。設定項目は「CSV、Textファイルの書き込みルール」を参照してください。 |
| text | string | 対応。列区切り記号は正規表現として解析され、デフォルトはカンマです。詳しくは「CSV、Textファイルの読み取りルール」を参照してください。 | 書き込みに対応。列区切り記号のデフォルトはカンマです。設定項目は「CSV、Textファイルの書き込みルール」を参照してください。 |
| json | string | 限定的に対応。ファイルの区切り記号がカンマの場合のみ対応 | 限定的に対応。ファイルの区切り記号がカンマの場合のみ対応 |
OSSデータソースの作成
データ開発プラットフォーム - バッチ統合 モジュールで、OSSデータソースを追加を選択できます
データソース設定パラメータ情報
データソースに必要な設定情報を入力し、接続性テストが完了すると、OSSデータソースを作成できます。
| フィールド名 | 説明 |
|---|---|
| 基本情報 | |
| *データソース名 | データ開発プラットフォームのスペース内で一意である必要があります。英字、数字、アンダースコアの組み合わせで、数字やアンダースコアで始めることはできません |
| 備考 | 任意 |
| データソース設定 | |
| 環境を区別しない / 独立環境構成 | いずれかを選択:「環境を区別しない」は本番環境と開発環境で1セットの構成を共用することを表し、「独立環境構成」は2つの環境をそれぞれ独立して設定することを表します |
| *Endpoint | OSSのアクセスアドレス |
| *地域 Region | 例:oss-cn-shanghai |
| *Bucket | OSS Bucketのアドレス。例:oss://seatunnel-test |
| *Access Key | アクセスに使用するAccess Key |
| *Access Secret | アクセスに使用するAccess Secret |
| 高度な構成 | データベースへの接続に必要なその他の高度なパラメータ。自由に入力できます |
パラメータ名の前に * が付いているものは必須パラメータ、* が付いていないものは任意パラメータです。
オフライン同期タスクの作成
上記の手順でOSSデータソースを作成し、接続性テストに成功したら、実際のシナリオに応じてOSSオフライン読み取りのタスクを設定できます。
データソース/データの流向としてのOSS
データソースとしてOSSを選択し、以下の関連パラメータを設定します:
| フィールド名 | 説明 |
|---|---|
| *ソースタイプ | データソースのタイプとしてOSSを選択 |
| *データソース名 | データソース管理画面で登録済みのOSSデータソースを、ドロップダウンから選択できます。 対応するデータソースをまだ作成していない場合は、データソース管理 ボタンをクリックして、OSSデータソースを作成できます。 |
| *ファイルパス | ファイルパスを指定して、OSSオブジェクトストレージに保存されているファイルを読み取ります
|
| *ファイルタイプ | orc、csv、text、parquet、jsonタイプに対応しています |
| 高度な構成 | 空のデフォルトフォルダーが正常にマークされました:スイッチをオンにすると、ファイルディレクトリが空の場合にタスクの実行が成功したとみなされます |
パラメータ名の前に * が付いているものは必須パラメータ、* が付いていないものは任意パラメータです。
データの流向としてOSSを選択し、以下の関連パラメータを設定します:
| フィールド名 | 説明 |
|---|---|
| データソース | データの流向のタイプとしてOSSを選択し、データソース管理画面で登録済みのOSSデータソースをドロップダウンから選択します |
| 書き込みディレクトリ | データを書き込むOSSのディレクトリです。プリセットのプレフィックスの後に入力し、「/」で始めることはできません
|
| ファイルタイプ | orc、csv、text、parquet、jsonタイプに対応しています。csvまたはtextを選択した場合はファイル書き込みルールを設定できます。後述の「CSV、Textファイルの書き込みルール」を参照してください |
| 書き込みモード | デフォルトは「書き込みディレクトリ」で、以下から選択できます:
|
CSV、Textファイルの読み取りルール
データソースとして使用する場合は、csvまたはtextのファイルタイプを選択したあと、ファイル読み取りルールを展開し、列区切り記号とヘッダーを飛ばすを設定します。列区切り記号のデフォルトはカンマで、「ヘッダーを飛ばす」のデフォルトは「いいえ」です。ファイルにヘッダーが含まれていて、それをデータとして読み取る必要がない場合は、「TRUE」を選択します。
- csv:列区切り記号には、カンマ、セミコロン、縦線などの有効な1文字を使用できます。
\tと入力するとTabを表します。\t以外の複数文字の区切り記号には対応しておらず、ダブルクォート、復帰、改行も区切り記号として使用できません。たとえば、縦線で列を区切る場合は|と入力し、\|とは入力しないでください。 - text:列区切り記号は正規表現として解析されます。たとえば
\tはTab、\s+は連続する空白、::は2つ連続するコロンを表します。縦線またはドットで列を区切る場合は、正規表現の特殊記号として解釈されないよう、それぞれ\|または\.と入力してください。
CSVとTextでは区切り記号の処理方法が異なります。ファイルタイプを切り替えたり読み取りルールを変更したりした後は、データプレビューとフィールド照合を再度確認してください。
CSV、Textファイルの書き込みルール
データの流向として使用する場合は、csvまたはtextのファイルタイプを選択したあと、ファイル書き込みルールを展開します。画面には列区切り記号とヘッダーを飛ばすのオプションがあり、デフォルト値はそれぞれカンマと「いいえ」です。列区切り記号の入力ボックスには最大8文字まで入力できます。
書き込みの設定は読み取りの設定とは独立しているため、読み取り側の正規表現ルールを書き込みの設定にそのまま適用しないでください。カスタムの区切り記号を使用したり、ヘッダーのオプションを調整したりした場合は、まず手動実行で出力ファイルを確認し、区切り記号とヘッダーが想定どおりであることを確かめてから、本番の同期に使用してください。
フィールド照合の説明
データソースとターゲット側の設定が完了したら、フィールド照合関係を作成する必要があります。システムは照合関係に従って、ソース側フィールドのデータを目標フィールドに自動的に同期します。フィールド照合関係の設定方法は3つあります:
- 方法1:カスタム選択。ソーステーブルのフィールドを選択し、目標テーブルの目標フィールドを選択します
- 方法2:同名照合。システムが、ソーステーブルと目標テーブルの同名フィールド間に照合関係を自動作成します
- 方法3:同行照合。システムが、同じ行のフィールド間に照合関係を自動作成します
1つの目標フィールドに対応できるソースフィールドは1つだけであることに注意してください
フィールドタイプの変換方法
データ同期時、システムはCAST()関数でソーステーブルのフィールドを型変換し、目標フィールドの型への変換を試みます。型変換に失敗した場合、目標フィールドの値はNULLに設定されます
データタイプ変換に関する特記事項
- √ は、該当するタイプ変換に対応していることを表します
- √, null は、該当するタイプ変換に対応しており、変換に失敗した場合はNULLに設定されることを表します
| ソースタイプ/目標タイプ | ROW | ARRAY | MAP | STRING | BOOLEAN | TINYINT | SMALLINT | INT | BIGINT | FLOAT | DOUBLE | DECIMAL | BYTES | DATE | TIMESTAMP | TIME |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ROW | √, null | |||||||||||||||
| ARRAY | √, null | |||||||||||||||
| MAP | √, null | |||||||||||||||
| STRING | √ | √, null | √, null | √, null | √, null | √, null | √, null | √, null | √, null | √, null | √, null | √, null | ||||
| BOOLEAN | √, null | √ | ||||||||||||||
| TINYINT | √, null | √ | √, null | √, null | √, null | |||||||||||
| SMALLINT | √, null | √, null | √ | √, null | √, null | |||||||||||
| INT | √, null | √, null | √, null | √ | √, null | |||||||||||
| BIGINT | √, null | √, null | √, null | √, null | √ | |||||||||||
| FLOAT | √, null | √ | √, null | √, null | ||||||||||||
| DOUBLE | √, null | √, null | √ | √, null | ||||||||||||
| DECIMAL | √, null | √, null | √, null | √ | ||||||||||||
| BYTES | √, null | √ | ||||||||||||||
| DATE | √, null | √ | √, null | |||||||||||||
| TIMESTAMP | √, null | √, null | √ | |||||||||||||
| TIME | √, null | √ |
基本情報の設定
最後に、統合プランの基本情報を設定する必要があります。プラン名、責任者、統合の同期速度、備考などが含まれます。
設定が完了したら、「保存」 ボタンをクリックして統合プランの作成を完了できます。
注:プラン名は保存後に変更できません
詳細ページの表示:
オフライン同期プランのタスクフローへのマウント
マウントされたタスクフロー
1.マウント手順を開始する
- 統合プランの詳細ページで、右上の「ジョブフローにマウントする」ボタンをクリックします
2.タスクフローを選択する
-
ドロップダウンメニューから対象のタスクフローを選択します
-
タスクフローを新規作成する場合:
- ドロップダウンメニューの下にある「タスクフローを新規作成」ショートカットボタンをクリックします
- または「開発」モジュールで作成します
-
ヒント:対象のタスクフローが表示されない場合は、右側の↻更新ボタンをクリックしてください
3.同期ノードを作成する
- タスクフロー内で「オフライン同期プラン」タイプのノードを新規作成します
- このノードは現在の統合プランに関連付けられ、ノードの実行時に対応する統合プランの実行がトリガーされます
4.マウントを完了する
- 「ノードを作成し、マウントします」をクリックして設定を完了します
- マウントに成功したら、「タスクフローに進む」をクリックしてマウント結果をすぐに確認できます
注:タスクフローへのマウントで作成されたタスクノードは 未リリース状態 です。タスクフローを確認し、そのノードをリリースして配信を開始することをお勧めします。
タスクフローのマウント解除
オフライン同期プランのタスクフローへのマウントを解除する場合:
- タスクフローがまだリリースされていない場合は、そのプランがマウントされているタスクフローに移動し、開発モード でその「オフライン同期プラン」タスクノードを削除するだけです。
- タスクフローがすでにリリースされている場合は、開発モード でその「オフライン同期プラン」タスクノードを削除した後、タスクフローを再リリースする必要があります。これにより、本番環境 でのそのノードのマウントも同時に解除されます。

