TOS データソースを使用すると、Tinder Object Storage (TOS) からファイルを読み取ることができます。 このデータソースを使用して、TOS に保存されているファイルを取得、解析し、データを任意の宛先データソースに同期できます。 このトピックでは、DataWorks における TOS のデータ同期機能について説明します。
制限事項
DataWorks の TOS データソースは、次のフィールドタイプをサポートしています。
データ型 | 説明 |
STRING | テキスト。 |
LONG | 整数。 |
BYTES | バイト配列。 読み取られたテキストは、 |
BOOL | ブール値。 |
DOUBLE | 浮動小数点。 |
DATE | 日時。 次のフォーマットがサポートされています:
|
TOS データソースの作成
DataWorks で同期タスクを開発する前に、「データソース管理」の手順に従って、必要なデータソースを DataWorks に追加する必要があります。 データソースを追加する際に、DataWorks コンソールでパラメーターのヒントを表示して、パラメーターの意味を理解することができます。
データ同期タスクの開発
TOS データソースは、単一テーブルのオフライン同期タスクのソースとしてのみ使用できます。 次のセクションでは、データ同期タスクの設定方法について説明します。
詳細については、「コードレス UI でタスクを設定する」および「コードエディタでタスクを設定する」をご参照ください。
コードエディタのすべてのパラメーターとスクリプトサンプルについては、「付録:スクリプトサンプルとパラメーターの説明」をご参照ください。
付録:スクリプトサンプルとパラメーターの説明
コードエディタを使用したバッチ同期タスクの設定
コードエディタを使用してバッチ同期タスクを設定する場合、統一されたスクリプトフォーマットの要件に基づいて、スクリプト内の関連パラメーターを設定する必要があります。 詳細については、「コードエディタでのタスク設定」をご参照ください。 以下では、コードエディタを使用してバッチ同期タスクを設定する際に、データソースに対して設定する必要があるパラメーターについて説明します。
Reader スクリプトサンプル
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "tos",
"parameter": {
"datasource": "",
"object": ["f/z/1.csv"],
"fileFormat": "csv",
"encoding": "utf8/gbk/...",
"fieldDelimiter": ",",
"useMultiCharDelimiter": true,
"skipHeader": true,
"compress": "zip/gzip",
"column": [
{
"index": 0,
"type": "long"
},
{
"index": 1,
"type": "boolean"
},
{
"index": 2,
"type": "double"
},
{
"index": 3,
"type": "string"
},
{
"index": 4,
"type": "date"
}
]
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "stream",
"parameter": {},
"name": "Writer",
"category": "writer"
}
],
"setting": {
"errorLimit": {
"record": "0"
},
"speed": {
"concurrent": 1
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}Reader スクリプトのパラメーター
パラメーター | 説明 | 必須 | デフォルト値 |
datasource | データソースの名前。 コードエディタで追加したデータソースの名前と同じである必要があります。 | はい | なし |
fileFormat | ソースファイルのフォーマット。 サポートされているフォーマット: | はい | なし |
object | ファイルパス。 このパラメーターは、アスタリスク (*) ワイルドカード文字と配列をサポートしています。 たとえば、a/b/1.csv と a/b/2.csv ファイルを同期するには、このパラメーターを a/b/*.csv に設定します。 | はい | なし |
column | 読み取る列。 type パラメーターはソースデータ型を指定します。 index パラメーターはテキストファイル内の列番号を 0 から指定します。 value パラメーターは定数を指定します。 これにより、ソースファイルからデータを読み取る代わりに、定数値を持つ列が作成されます。
説明 指定する column 情報については、type パラメーターと、index または value パラメーターのいずれかを指定する必要があります。 | はい | すべての列が |
fieldDelimiter | フィールド区切り文字。 説明
| はい |
|
lineDelimiter | 行区切り文字。 説明 このパラメーターは、fileFormat が text に設定されている場合にのみ有効です。 | いいえ | なし |
compress | テキストファイルの圧縮フォーマット。 デフォルトでは、このパラメーターは空のままです。これは圧縮がないことを意味します。 サポートされているフォーマット: | いいえ |
|
encoding | ファイルのエンコード形式。 | いいえ |
|
nullFormat | テキストファイル内でヌルポインターを表す文字列。 テキストファイルにはヌルを定義する標準的な方法がないため、nullFormat を使用してどの文字列がヌルを表すかを定義できます。 例:
| いいえ | なし |
skipHeader | CSV ファイルの場合、skipHeader を使用してヘッダーをスキップするかどうかを設定します。
説明 skipHeader パラメーターは圧縮ファイルではサポートされていません。 | いいえ |
|
parquetSchema | 読み取る Parquet ファイルのスキーマ。 このパラメーターは、fileFormat が parquet に設定されている場合にのみ有効です。 parquetSchema を指定した後、設定全体が有効な JSON であることを確認してください。
| いいえ | なし |
csvReaderConfig | CSV ファイルを読み取るためのパラメーター設定。 値は Map 型です。 CSV ファイルの読み取りには csvReader が使用されます。 このパラメーターを設定しない場合、デフォルト値が使用されます。 | いいえ | なし |