1

前処理は、ローカルおよびクラウドで実行できます。ローカルで実行する方法を知っています。

クラウド上で実行するにはどうすればよいですか?

4

1 に答える 1

1

Datalab を使用している場合は、セルに %ml preprocess --cloud と入力するだけで、生成されたテンプレートにクラウド フックが含まれます。

既存のコードを変更する場合は、DirectPipelineRunner を DataflowPipelineRunner に置き換えます。また、いくつかの「コマンドライン」引数を指定する必要があります。

次に例を示します。

RUNNER = 'DataflowPipelineRunner'
OUTPUT_DIR = 'gs://{0}/preprocessed_output/'.format(BUCKET)
options = {
    'staging_location': os.path.join(OUTPUT_DIR, 'tmp', 'staging')
    'temp_location': os.path.join(OUTPUT_DIR, 'tmp'),
    'job_name': 'preprocess' + '-' + datetime.datetime.now().strftime('%y%m%d-%H%M%S'),
    'project': PROJECT,
    'extra_packages': [ml.sdk_location],
    'teardown_policy': 'TEARDOWN_ALWAYS',
    'no_save_main_session': True
}
opts = beam.pipeline.PipelineOptions(flags=[], **options)
pipeline = beam.Pipeline(RUNNER, options=opts)
于 2016-09-29T16:51:19.887 に答える