AWS 上の Snowflake Spark コネクタのプロキシを設定する
Spark コネクタの use_proxy、proxy_host、proxy_port オプションを、AWS のプロトコル・アカウント・バイパス設定に関する公式の制限とともに設定します。
AWS 上の Snowflake Spark コネクタでは、コネクタ独自のプロキシオプションを使ってリーダーを設定します。
options = {
**snowflake_options,
'use_proxy': 'true',
'proxy_host': 'proxy.example',
'proxy_port': '8080',
'proxy_protocol': 'http',
}
reader = spark.read.format('snowflake').options(**options)
snowflake_options にはアプリケーションのエンドポイントと認証の設定が入ります。load を呼び出す前に、対象のテーブルまたはクエリを追加してください。
use_proxy の既定値は false です。有効にすると、proxy_host と proxy_port を個別のフィールドとして要求します。proxy_user と proxy_password は中間アカウントを提供します。プロキシ認証を使わない場合、許可されたパブリックプロキシ経由のルートでは、Snowflake のアカウント設定を保ったまま HTTP プロキシ一覧からホストとポートの候補を利用できます。
Snowflake は、アカウント関連のフィールド、proxy_protocol、non_proxy_hosts を AWS 専用として文書化しています。proxy_protocol はコネクタ 2.11.1 で追加され、既定値は http です。non_proxy_hosts は URL エスケープしたパイプ(%7C)でホストを区切り、アスタリスクのワイルドカードをサポートします。
プロジェクトの Spark と Scala のバージョンに合うコネクタを使用してください。これらのデータソースオプションには独自の名前と形式があり、JDBC プロパティや java.net.Proxy オブジェクトをそのまま代用することはできません。