Для Spark-конектора Snowflake в AWS налаштуйте засіб читання власними параметрами проксі конектора:

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 задають проміжний обліковий запис. Без автентифікації проксі дозволений маршрут через публічний проксі може використовувати кандидати хоста й порту зі списку HTTP-проксі, зберігаючи налаштування облікового запису Snowflake.

Snowflake документує поля облікового запису, proxy_protocol і non_proxy_hosts як призначені лише для AWS. proxy_protocol додано в конектор 2.11.1, і за замовчуванням він http. non_proxy_hosts розділяє хости екранованою в URL вертикальною рискою (%7C) і підтримує зірочку як шаблон.

Використовуйте конектор, що відповідає версіям Spark і Scala проєкту. Ці параметри джерела даних мають власні назви й формати; властивості JDBC та об'єкти java.net.Proxy не є взаємозамінними вхідними даними.

Схожі статті