質問
Snowflakeの大量レコードをcsvファイルコネクタで読み取る際、Snowflakeコネクタのテーブル書き込みで追加に時間がかかります。
より短時間で実施する方法がございましたら、ご教授ください。
※Integrateのスペックは、2CPU/4GB/1スケーラビリティー想定
回答
以下にご案内の方法にて、処理速度が改善されるかお試しください。
1.パラレルストリーミング処理を有効化する
パラレルストリーミング処理を有効化していただく事で、処理速度の向上が期待できます。
パラレルストリーミング処理を有効化していない場合は有効化していただき、
処理速度が改善されるかお試しいただけますでしょうか。
パラレルストリーミング処理の詳細につきましては、以下のマニュアルをご確認ください。
・パラレルストリーミング処理
・スマートコンパイラ
2.バッチサイズを変更する
テーブル書き込み処理の書き込み設定にてバッチサイズを大きい値に変更していただく事で、
一度に書き込むデータ量が増えるため、処理速度の向上が期待できます。
注意点としてまして、バッチサイズの値によってはヒープメモリ領域が枯渇し、
スクリプトの実行に影響を及ぼす可能性がございます。
つきましてはお手数ですが、お客様の環境にて事前に検証の上、
バッチサイズの設定値を指定いただきますよう、お願いいたします。
なお、他のお客様の実績としましては、
設定値を「10,000」前後で調整していただく事で、
スクリプトの実行に影響のない範囲での処理速度の向上が認められましたので、
設定値の参考にしていただければと存じます。
3.データを分割し、並列処理を実装する
読み込み処理や書き込み処理のデータを分割していただき、
それぞれの処理を複数スレッドで実行していただく事で、処理速度の向上が期待できます。
注意点としてまして、スレッドを多量に配置するとスレッド領域が確保できなくなり、
スクリプトの実行に影響を及ぼす可能性がございます。
このため、スレッドを増やす場合、上記エラーが発生しない範囲でスレッドを増やす開発をご検討ください。
詳細につきましては、関連FAQ記事をご確認ください。
4.HULFT Integrateサービスのスペックを向上させる
スクリプト実行するHULFT Integrateサービスのスペックを向上させることで、
スクリプト処理速度の向上が期待できます。
コメント
0件のコメント
記事コメントは受け付けていません。