0
question:データフローでスキーマを動的に更新するカスタムシンクを作成しましたか?Patch
操作がBigQueryIO APIのどこかに公開されているのでしょうか?Dataflow Java SDKでのBigQueryパッチ操作
これは、オンザフライでスキーマを更新するための重要な部分です。後方互換性のある方法でスキーマをマージしています。
question:データフローでスキーマを動的に更新するカスタムシンクを作成しましたか?Patch
操作がBigQueryIO APIのどこかに公開されているのでしょうか?Dataflow Java SDKでのBigQueryパッチ操作
これは、オンザフライでスキーマを更新するための重要な部分です。後方互換性のある方法でスキーマをマージしています。
これはSDK自体にはありませんが、DoFnからの副作用の標準パターンを使用できます。具体的には、作成するBigQueryクライアントは、DoFnsはシリアル化可能でなければならないため、一時的なマークを付ける必要があります。
class PatchFn extends DoFn<> {
private transient BigQuery bq;
...
}
そうではありません。これはBigQueryライブラリの一部です。 ParDoメソッドは任意のコードを呼び出すことができます。だから、BigQueryライブラリをインポートしてパス関数をそのように呼び出すのはなぜですか? –
私はSideInputを使ってこれらの行に沿って試しましたが、bigqueryクライアントは直列化できません。 ... – Matt
クライアントをParDoに直接渡すことはできませんが(直列化できません)、ネストされたクラス(つまり 'List()')を呼び出すことができますParDo内でexecute()を実行します。これは安全なアプローチですか?トップレベルで接続をインスタンス化しても、クライアントを呼び出すネストされたクラスのparDoを使用すると、接続はどのように管理されますか。 – Matt