S3により、S3バケットに格納されているJSON、TSV、およびCSV形式のファイルのデータをインポートすることができます。S3ジョブを送信できます。S3へのコネクタの作成まず、認証情報の登録が必要です。以下のパラメータを設定してください。S3エンドポイントのログインユーザー名です。access_key_idとsecret_access_keyを使用して認証を行います。こちらを参照してください。匿名アクセスを使用します。この認証方法では、公開ファイルに限りアクセスできます。一時的に生成されたaccess_key_id、secret_access_key、およびsession_tokenを使用します。(こちらの認証方法はインポートのみに対応しており、現在はエクスポートには対応しておりません。Transfer」を作成します。アドホックDataConnectorジョブまたはスケジュールDataConnectorジョブを作成できます。このセクションでは、以下の4つのステップが必要です。fromインポートするための情報を登録します。your_bucket_name)。logs/data_)。ファイルパスを検出するための正規表現。パスがこのパターンと一致しないファイルはスキップされます)。logs/data_20170101.csv)。インクリメンタルローディングを有効にします。diffにlast_pathパラメーターが設定され、次回実行時にこのパスの前にあるファイルがスキップされます。インクリメンタルローディングが無効な場合は、last_pathは設定されません。静的IPのリストを使用することで、S3バケット/IAMユーザーへのアクセスを制限できます。必要な場合は、support@treasuredata.comにご連絡ください。CloudFrontは、静的および動的なWebコンテンツを高速で配信するWebサービスです。CloudFrontが受信するすべてのユーザー要求に関する詳細情報が記録されたログファイルを作成するよう、CloudFrontを設定できます。ログ機能を有効にした場合、以下のようなCloudFrontのログファイルを保存できます。from"の設定は以下のようになります。(このジョブをスケジュールする場合.)Previewこのセクションでは、設定したデータのプレビューを表示できます。このページを開けない場合は、コンソールに何らかのエラーがある可能性があります。その場合は、support@treasuredata.comまでご連絡ください。Settings"ボタンを選択します。Settingsでは、Guess機能によって設定されたプロパティを編集できます。必要に応じて、以下のセクションを編集してください。値自体にタイムゾーンが含まれていない場合に、タイムスタンプカラムのタイムゾーンが変更されます。カラムの名前を変更します。カラム名に使用できるのは小文字の英字、数字、および「_」だけです。指定されたタイプとして値が解析されます。その後、TreasureDataスキーマに変換して、保存されます。UIでの編集はCLIと比べて制限されます。toここでは、インポート先となるデータベース/テーブルを選択します。パーティション分割時間としてlongまたはtimestampのカラムを選択します。デフォルトの時間のカラムでは、add_timeフィルターとともにupload_timeを使用します。Whenここでは、ジョブにアドホック構成またはスケジュール構成を設定できます。ワンタイムジョブを設定します。cronを指定できます。実行時間の延期を追加します。「Asia/Tokyo」のような拡張形式のタイムゾーンをサポートしています。Transfersにリストアップされます。このページで、既存のジョブを編集できます。Transferセクションをクリックすれば、前回実行されたDataConnectorジョブの詳細を確認できます。スケジュール実行インクリメンタルなS3ファイルインポートに定期的なデータコネクターの実行スケジュールを作成しておくことができます。高い可用性を実現するために、スケジューラーの配信および稼働には細心の注意を払っています。この機能を使用すると、ローカルなデータセンターのcronデーモンは不要になります。path/to/sample_201501.csv.gz、path/to/sample_201502.csv.gz、...、path/to/sample_201505.csv.gz)と一致するすべてのファイルをインポートして、次回の実行のために最後のパス(path/to/sample_201505.csv.gz)を記憶しておきます。2回目以降の実行では、最後のパスよりも後のファイルだけをアルファベット順(辞書式順序)でインポートします。connector:createコマンドを使用して、新しいスケジュールを作成できます。Connector構成ファイルが必要になります。Dataのストレージは時間でパーティションに分割される(データ分割も参照)ので、--time-columnオプションを指定することをお勧めします。created_atまた、「cron」パラメーターでは「@hourly」、「@daily」、および「@monthly」の3つの特別なオプションを指定できます。デフォルトでは、UTCタイムゾーンでスケジュールが設定されます。-tまたは--timezoneオプションを使用して、特定のタイムゾーンでスケジュールを設定することができます。「--timezone」オプションでは「Asia/Tokyo」や「America/Los_Angeles」のような拡張形式のタイムゾーンだけがサポートされます。PST、CSTのような省略形のタイムゾーンはサポート*対象外*で、予期しないスケジュールが作成される可能性があります。connector:listコマンドを実行すると、現在スケジュールされているエントリーのリストが表示されます。connector:showを実行すると、スケジュールエントリーの実行設定が表示されます。connector:historyでは、スケジュールエントリーの実行履歴が表示されます。<jobid>を使用します。connector:deleteで、スケジュールを削除できます。S3ジョブの実行に長い時間がかかっています。したらいいでしょうか。コネクタージョブがインジェストしているS3ファイルの数を確認してください。ファイル数が10,000以上であると、パフォーマンスが低下します。この問題の回避策は以下のとおりです。path_prefixオプションの指定を限定して、S3ファイルの数を減らします。(256MB)をmin_task_sizeオプションに設定します。CLIを使用してコネクターを設定するコネクターをセットアップする前に、「td」コマンドをインストールします。Toolbeltをインストールしてください。シード構成ファイル(seed.yml)を作成するまず、下記の例に示すように、自分のAWSアクセスキーおよびシークレットアクセスキーを使ってseed.ymlを作成します。バケット名とソースファイル名(ファイルが複数の場合はプレフィックス)も指定する必要があります。S3は、指定されたプレフィックスに一致するすべてのファイルをインポートします。path/to/sample_201501.csv.gz、path/to/sample_201502.csv.gz、...、path/to/sample_201505.csv.gz)path_prefixの先頭に「/」を付けると、意図しない結果を招く可能性があります。/path/to/sample_file」と指定した場合、s3://sample_bucket//path/to/sample_file内のファイルがプラグインで検索され、本来のS3上のパスであるs3://sample_bucket/path/to/sample_fileとは異なります。使用可能なoutモードの詳細については、付録を参照してください。フィールドを類推する(load.ymlを生成する)次に、connector:guessを使用します。このコマンドはソースファイルを自動的に読み取り、ファイル形式とそのフィールドやカラムを評価(ロジックに基づき類推)します。load.ymlload.ymlを開くと、ファイル形式、エンコーディング、カラム名、タイプなど、評価されるファイル形式の定義が表示されます。connector:previewコマンドを使用すれば、データのプレビューを表示できます。|+-------+---------+----------+---------------------+guessコマンドではソースデータのサンプル行を使用してカラム定義を評価するため、ソースデータファイルに3つ以上の行と2つ以上のカラムが必要になります。予期しないカラム名またはカラムタイプが検出された場合は、load.ymlを直接修正して、再度プレビューしてください。Connectorでサポートされている解析は、「boolean」、「long」、「double」、「string」、および「timestamp」タイプです。「preview」コマンドは、指定されたバケットからいずれかのファイルをダウンロードして、そのファイルの結果を表示します。このため、previewコマンドとissueコマンドの結果が異なる場合があります。ロードジョブを実行する最後に、ロードジョブを送信します。データの大きさによっては、2~3時間かかる場合があります。Dataデータベースおよびテーブルを指定します。Dataのストレージは時間でパーティションに分割される(データ分割を参照)ので、--time-columnオプションを指定することをお勧めします。このオプションが指定されていない場合、データコネクターはまずlongまたはtimestampカラムをパーティション分割時間として選択します。--time-columnで指定するカラムのタイプは、longかtimestampのいずれかのタイプでなければなりません。データに時間のカラムがない場合は、add_timeフィルターオプションを使用して時間のカラムを追加できます。pluginを参照してください。created_atconnector:issueコマンドでは、database(td_sample_db)とtable(td_sample_table)がすでに作成されていることが前提となります。connector:issueコマンドに--auto-create-tableオプションを指定してデータベースとテーブルを自動作成してください。--auto-create-table現時点では、データコネクターはサーバー側のレコードについてはソートを行いません。時間ベースのパーティション分割を効果的に使用するには、あらかじめファイル内のレコードをソートしておいてください。timeという名前のフィールドがある場合は、--time-columnオプションを指定する必要はありません。outプラグインのモードseed.ymlのoutセクションでファイルのインポートモードを指定できます。(デフォルト)このモードがデフォルトで、ターゲットのテーブルにレコードが追加されます。appendreplaceこのモードでは、ターゲットのテーブルのデータが置換されます。このモードでは、ターゲットのテーブルに対して手動で行ったスキーマの変更はそのままです。S3リソースについてアクセス許可が与えられている必要があります。IAMユーザーにこのアクセス許可が付与されていない場合は、既定のいずれかのポリシー定義をユーザーに設定するか、またはJSON形式で新しいポリシー定義を作成してください。以下の例では、ポリシー定義の参考形式に基づき、IAMユーザーにyour-bucketバケットの読み取り専用(GetObjectおよびListBucketアクション)のアクセス許可を付与します。]}your-bucketを実際のバケット名に置換してください。セキュリティトークンサービス)を一時的な認証プロバイダーとして使用するIAMのaccess_key_idおよびsecret_access_keyによる基本認証のリスクが非常に高くなる場合があります(ただし、ジョブの実行時またはセッションの作成後にsecret_access_keyが明記されることは絶対にありません)。セキュアトークンサービス)から取得した一時的なセキュリティ認証情報を使用できます。STSを使用すると、IAMユーザーは自分のaccess_key_idとsecret_access_keyを使用して、一時的なnew_access_key_id、new_secret_access_key、およびsession_tokenキーを作成し、認証情報の有効期限を指定できます。一時的なセキュリティ認証情報には、基本的に以下の2つのタイプがあります。セッショントークン有効期限が指定された最もシンプルなセキュリティ認証情報です。この一時的な認証情報では、この認証情報を生成するために使用した元々のIAM認証情報がアクセスできるすべてのリソースにアクセスできます。この認証情報は、有効期限が切れない限り、元々のIAM認証情報のアクセス許可に変更がない限り有効です。フェデレーショントークン上記のセッショントークンに、さらにアクセス許可の制御レイヤが追加されます。フェデレーショントークンを生成する場合、IAMユーザーはアクセス許可ポリシー定義を指定する必要があります。Bearerがアクセスするリソースをさらに絞り込むことができます。任意のアクセス許可ポリシー定義を使用できますが、アクセス許可の範囲はトークンの生成に使用したIAMユーザーに付与されていたアクセス許可のすべてまたはサブセットのみに制限されます。セッショントークンと同じように、フェデレーショントークンの認証情報も有効期限が切れない限り、元々のIAM認証情報のアクセス許可に変更がない限り有効です。SDKを使用して生成できます。temp_credはフェデレーショントークン/ユーザーの名前です。bucketnameはアクセスを許可するバケットの名前です。詳細については、ARNの仕様を参照してください。S3バケットの基本的な読み取り操作です。STS認証情報は取り消すことができません。有効期限が切れるまで、または元々のIAMユーザーがこの認証情報を生成するために使用したアクセス許可を削除するまで有効です。一時的なセキュリティ認証情報が生成されたら、下記に示すように、SecretAccessKey、AccessKeyId、およびSessionTokenをseed.ymlファイルにコピーします。S3を通常通りに実行します。Connectorジョブでエラーが発生する可能性があります。Connectorジョブは最大回数(5回)まで再試行され、その回数を超えると「エラー」ステータスが生成されます。FacebookTwitterLinkedInこの記事は役に立ちましたか?0人中0人がこの記事が役に立ったと言っています他にご質問がございましたら、リクエストを送信してくださいページの先頭へ戻るコメント0件のコメントログインしてコメントを残してください。