# Google Audience Partner API Status Via SFTP Import CLI ### 'td' Command v0.11.9以降のインストール 最新の[TD Toolbelt](https://toolbelt.treasuredata.com/)をインストールしてください。 ``` $ td --version 0.11.10 ``` ### Seedコンフィグファイルの作成 (seed.yml) ``` in: type: sftp_ddp file_names: - dmp_20180926_123456789.dat out: mode: append exec: {} ``` ### フィールドの推測 (load.ymlの生成) *connector:guess*を使用してください。このコマンドは、ソースファイルを自動的に読み取り、ファイル形式を評価(推測ロジックを使用)します。 ``` $ td connector:guess seed.yml -o load.yml ``` *load.yml*を開くと、推測されたファイル形式の定義が表示されます。この例では、CSVファイルをロードしようとしています。 ``` in: type: sftp_ddp file_names: - dmp_20180926_10130066a050f4e68b46d5b052abaedb05dd2f.dat out: mode: append exec: {} ``` 次に、*preview*コマンドを使用して、システムがファイルをどのように解析するかをプレビューできます。 ``` $ td connector:preview load.yml +------------+---------------------------------+ | recordInfo | rawData | +------------+---------------------------------+ | | 1 lines were processed correctly| | 1111111111 | Line 1111111111 could not find | ``` ### ロードジョブの実行 ロードジョブを送信します ``` $ td connector:issue load.yml --database td_sample_db --table td_sample_table ``` connector:issueコマンドは、すでに*database(td_sample_db)*と*table(td_sample_table)*を作成していることを前提としています。TreasureData内にデータベースまたはテーブルが存在しない場合、connector:issueコマンドは失敗するため、データベースとテーブルを[手動](https://docs.treasuredata.com/smart/project-product-documentation/data-management)で作成するか、*td connector:issue*コマンドで*--auto-create-table*オプションを使用してデータベースとテーブルを自動作成してください: ``` $ td connector:issue load.yml --database td_sample_db --table td_sample_table --time-column created_at --auto-create-table ``` # スケジュール実行 増分SFTPファイルインポートのために、定期的なData Connectorの実行をスケジュールできます。高可用性を確保するために、スケジューラーを管理しています。この機能を使用することで、ローカルデータセンターに*cron*デーモンを用意する必要がなくなります。 ## スケジュールの作成 新しいスケジュールは*td connector:create*コマンドを使用して作成できます。以下が必要です:スケジュール名、cron形式のスケジュール、データが保存されるデータベースとテーブル、およびData Connector設定ファイル。 ``` $ td connector:create \ daily_import \ "10 0 * * *" \ td_sample_db \ td_sample_table \ load.yml ``` `cron`パラメータは、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"=>"sftp_ddp", "access_key_id"....| +--------------+--------------+----------+-------+--------------+-----------------+------------------------------------------------+ ``` ## 設定の表示 *td connector:show*は、スケジュールエントリの実行設定を表示します。 ``` % td connector:show daily_import Name : daily_import Cron : 10 0 * * * Timezone : UTC Delay : 0 Database : td_sample_db Table : td_sample_table Config --- in: type: sftp_ddp file_names: - dmp_20180926_10130066a050f4e68b46d5b052abaedb05dd2f.dat out: mode: append exec: {} ``` ## スケジュールの削除 *td connector:delete*は、スケジュールを削除します。