2017-11-29 11 views
1

Google Cloud Dataprepはすばらしく、静的データセットを手動でインポートするために使用しましたが、GCSパスにアップロードされた新しいファイルを使用できるように複数回実行したいと考えています。私はあなたがDataprepのスケジュールをセットアップできることがわかりますが、インポート設定のどの場所でも新しいファイルをどのように処理するかはわかりません。Google Cloud Dataprepは新しいファイルのGCSパスを監視できますか?

これは可能ですか?明白な必要性のように思われる - うまくいけば、私は明らかな何かを逃した。

答えて

2

データセット中にフォルダの左にある+アイコンをクリックすると、GCSパスをデータセットとして追加できます(スクリーンショットを参照)。このデータセットを使用するフローに対してスケジュールされたジョブを設定すると、そのディレクトリ内のすべてのファイル(新しいファイルを含む)はスケジュールされた各ジョブの実行時に取得されます。

enter image description here

+0

ありがとう@Lars。一般的なアプローチは、偽装を避け、新しいファイルのデータをBigQueryテーブルに追加することです。処理されたファイルを移動/削除するか、実行ごとに「重複しないトランスフォーム」ステップを実行する必要がありますか? –

+2

処理されたファイルを別のディレクトリに移動する方法があります。その後、ジョブを設定してBQテーブルに追加することができます。 –

+0

残念ながら、このすべてがDataprep内で発生する可能性はありません...ビット制限です。私はあなたが 'gsutil'を使用して設定された時間に関連するフォルダをクリアするためにどこか他のcronタスクを書くことができたと思いますが、それはすべてがうまくいったと仮定しています。これらはすべてベータ版の兆候だと思う。 –

1

この上さらに更新。 2000年1月23日の質問new release of Dataprepには、Dataprepとは独立してデータフロージョブを再実行する機能が含まれています。あなたはDataprepジョブを実行すると

それはあなたが将来的に手動でジョブを起動するために使用できるデータフローのテンプレートを生成し、それが特定のパラメータを渡すことができます。

手順は、新しいファイルでトリガできるようにします(これはベータですので、Googleは正確なプロセスを変更する可能性があります):

  1. フローを作成し、関連するフロー/レシピを実行します。あなたがレシピを手に入れるまで手動で繰り返し/繰り返します。あなたがうまく走っているときは、ジョブをもう一度実行してください(新しいコンテンツを追加する可能性が高いため、置き換えずにデータを追加するジョブである必要があります)。オーバーヘッドを減らすために、「プロファイル結果」(新機能)のチェックを外すことをお勧めします。これは繰り返し可能なジョブになるためです。
  2. 完了したら、ジョブの詳細ページに移動しての結果をエクスポートボタンをクリックすると、データフローテンプレートへのリンクが表示されます。テキストをコピーします。それは新機能があったためだけの仕事のために利用可能であるとのデータフローのテンプレートパスは2018年1月23日リリース後を実行することに注意してください。
  3. DataFlowに移動し、ジョブを作成するを選択し、カスタムテンプレートを選択し、テンプレートパスに貼り付けることで、データフロージョブをトリガーする方法を確認できます。そこにあなたのGCS入力パスなどのあなたが供給できるパラメータが表示されます
  4. GCSの書き込みとイベントの詳細を使用してトリガされたGoogleクラウド機能を記述するステップ(3)に従ってファイルパスでテンプレートを実行する上記。
関連する問題