スケジュール実行は、連携元からデータを取得する定期的な試行中のData Connectorの動作を制御する追加の設定パラメーターをサポートしています:
incrementalこの設定は、ロードモードを制御するために使用されます。ロードモードは、各オブジェクトに関連付けられたネイティブのタイムスタンプまたは数値フィールドの1つに基づいて、Data Connectorが連携からデータを取得する方法を管理しますincremental_columnnこの設定は、Treasure Dataにインポートされるベースカラムを定義するために使用されます。このフィールドには1つのカラムのみを定義できます。推奨値は created, createdTimestamp, updated, updatedTimestamp です- PST、CSTなどのTimezoneの略語はサポートされておらず、予期しないスケジュールになる可能性があります。
- --timezoneオプションは、'Asia/Tokyo'、'America/Los_Angeles'などの拡張Timezone形式のみをサポートしています。
incremental modeを使用したロードファイルの例を次に示します:
in:
type: intg_type
data_center: US1
authentication_mode: key_secret
application_key: your_application_user_key
secret_key: your_application_secret_key
api_key: your_api_key
data_source: account
batch_size: 1000
query: SELECT * FROM table_name
incremental: true
incremental_column: created
filters:
- type: add_time
from_value:
mode: upload_time
to_column:
name: time新しいスケジュールは、td connector:createコマンドを使用して作成できます。スケジュールの名前、cron形式のスケジュール、データが保存されるdatabaseとtable、およびData Connector設定ファイルが必要です。
cronパラメーターは、@hourly、@daily、@monthlyのオプションを受け入れます。
デフォルトでは、スケジュールはUTC timezoneで設定されます。-tまたは--timezoneオプションを使用して、timezoneでスケジュールを設定できます。
たとえば、td connector:createコマンドを使用して日次で実行されるスケジュールジョブを作成できます:
td connector:create connector_name @daily connector_database connector_table load.ymlTreasure Dataのストレージは時間でパーティション化されているため、--time-columnオプションを指定することもお勧めします(data partitioningも参照)。
td connector:create daily_import "10 0 * * *" \
td_sample_db td_sample_table load.yml \
--time-column created_atcronパラメータは、3つの特別なオプション:@hourly、@daily、および@monthlyも受け入れます。
デフォルトでは、スケジュールはUTCタイムゾーンで設定されます。-tまたは--timezoneオプションを使用して、タイムゾーンでスケジュールを設定できます。--timezoneオプションは、'Asia/Tokyo'、'America/Los_Angeles'などの拡張タイムゾーン形式のみをサポートします。PST、CSTなどのタイムゾーンの略語はサポートされて*いません*。予期しないスケジュールになる可能性があります。
td connector:listコマンドを実行することで、現在スケジュールされているエントリのリストを表示できます。
$ td connector:list
+--------------+--------------+----------+-------+--------------+-----------------+------------------------------------------+
| Name | Cron | Timezone | Delay | Database | Table | Config |
+--------------+--------------+----------+-------+--------------+-----------------+------------------------------------------+
| daily_import | 10 0 * * * | UTC | 0 | td_sample_db | td_sample_table | {"in"=>{"type"=>"s3", "access_key_id"... |
+--------------+--------------+----------+-------+--------------+-----------------+------------------------------------------+td connector:showは、スケジュールエントリの実行設定を表示します。
td connector:show daily_importName : daily_import
Cron : 10 0 * * *
Timezone : UTC
Delay : 0
Database : td_sample_db
Table : td_sample_table
Config
---
in:
type: s3
access_key_id: access_key_id
secret_access_key: secret_access_key
endpoint: endpoint
bucket: bucket
path_prefix: path_prefix
parser:
charset: UTF-8
...td connector:historyは、スケジュールエントリの実行履歴を表示します。個々の実行の結果を調査するには、td job jobidを使用します。
td connector:history daily_import+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
| JobID | Status | Records | Database | Table | Priority | Started | Duration |
+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
| 578066 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-18 00:10:05 +0000 | 160 |
| 577968 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-17 00:10:07 +0000 | 161 |
| 577914 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-16 00:10:03 +0000 | 152 |
| 577872 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-15 00:10:04 +0000 | 163 |
| 577810 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-14 00:10:04 +0000 | 164 |
| 577766 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-13 00:10:04 +0000 | 155 |
| 577710 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-12 00:10:05 +0000 | 156 |
| 577610 | success | 10000 | td_sample_db | td_sample_table | 0 | 2015-04-11 00:10:04 +0000 | 157 |
+--------+---------+---------+--------------+-----------------+----------+---------------------------+----------+
8 rows in settd connector:deleteは、スケジュールを削除します。
$ td connector:delete daily_import