adbc_driver_snowflake¶
低级 API¶
Snowflake 驱动程序的低级 ADBC 绑定。
- class adbc_driver_snowflake.DatabaseOptions(*values)¶
基类:
EnumFlight SQL 驱动程序特定的数据库选项。
- ACCOUNT = 'adbc.snowflake.sql.account'¶
- APPLICATION_NAME = 'adbc.snowflake.sql.client_option.app_name'¶
- AUTH_OKTA_URL = 'adbc.snowflake.sql.client_option.okta_url'¶
指定用于 OKTA 认证的 OKTAUrl
- AUTH_TOKEN = 'adbc.snowflake.sql.client_option.auth_token'¶
指定用于 OAuth 或其他形式认证的令牌
- AUTH_TYPE = 'adbc.snowflake.sql.auth_type'¶
根据 Snowflake 驱动程序支持的认证类型指定要使用的认证类型。默认为“auth_snowflake”(使用 AuthType.* 常量指定所需的认证类型)。
- CLIENT_IDENTITY_PROVIDER = 'adbc.snowflake.sql.client_option.identity_provider'¶
指定用于 WIF 认证的工作负载身份提供者。
- CLIENT_REQUEST_MFA_TOKEN = 'adbc.snowflake.sql.client_option.cache_mfa_token'¶
当为 true 时,MFA 令牌会缓存到凭据管理器中。Windows/OSX 默认为 true,Linux 默认为 false
- CLIENT_STORE_TEMP_CRED = 'adbc.snowflake.sql.client_option.store_temp_creds'¶
当为 true 时,ID 令牌会缓存到凭据管理器中。Windows/OSX 默认为 true,Linux 默认为 false
- CLIENT_TIMEOUT = 'adbc.snowflake.sql.client_option.client_timeout'¶
网络往返 + 读取 HTTP 响应的超时时间,使用 http://pkg.go.dev/time#ParseDuration 格式,例如“300ms”、“1.5s”或“1m30s”。ParseDuration 接受负值,但将使用其绝对值。
- DATABASE = 'adbc.snowflake.sql.db'¶
- DISABLE_TELEMETRY = 'adbc.snowflake.sql.client_option.disable_telemetry'¶
- HOST = 'adbc.snowflake.sql.uri.host'¶
- JWT_EXPIRE_TIMEOUT = 'adbc.snowflake.sql.client_option.jwt_expire_timeout'¶
JWT 超时后过期,使用 http://pkg.go.dev/time#ParseDuration 格式,例如“300ms”、“1.5s”或“1m30s”。ParseDuration 接受负值,但将使用其绝对值。
- JWT_PRIVATE_KEY = 'adbc.snowflake.sql.client_option.jwt_private_key'¶
指定用于签署 JWT 的 RSA 私钥,应指向包含要加载的 PKCS1 私钥的文件。通常以“RSA PRIVATE KEY”类型的 PEM 块编码
- JWT_PRIVATE_KEY_PASSWORD = 'adbc.snowflake.sql.client_option.jwt_private_key_pkcs8_password'¶
用于 JWT 认证的加密私钥的密码。
- JWT_PRIVATE_KEY_VALUE = 'adbc.snowflake.sql.client_option.jwt_private_key_pkcs8_value'¶
解析 PKCS #8, ASN.1 DER 格式的私钥。指定私钥值,无需从文件系统加载。
- KEEP_SESSION_ALIVE = 'adbc.snowflake.sql.client_option.keep_session_alive'¶
登录重试超时(不包括网络往返和读取 HTTP 响应),使用 http://pkg.go.dev/time#ParseDuration 格式,例如“300ms”、“1.5s”或“1m30s”。ParseDuration 接受负值,但将使用其绝对值。启用会话即使在连接关闭后也能保持活动状态
- LOGIN_TIMEOUT = 'adbc.snowflake.sql.client_option.login_timeout'¶
- OCSP_FAIL_OPEN_MODE = 'adbc.snowflake.sql.client_option.ocsp_fail_open_mode'¶
- PORT = 'adbc.snowflake.sql.uri.port'¶
- PROTOCOL = 'adbc.snowflake.sql.uri.protocol'¶
- REGION = 'adbc.snowflake.sql.region'¶
- REQUEST_TIMEOUT = 'adbc.snowflake.sql.client_option.request_timeout'¶
请求重试超时(不包括网络往返和读取 HTTP 响应),使用 http://pkg.go.dev/time#ParseDuration 格式,例如“300ms”、“1.5s”或“1m30s”。ParseDuration 接受负值,但将使用其绝对值。
- ROLE = 'adbc.snowflake.sql.role'¶
- SCHEMA = 'adbc.snowflake.sql.schema'¶
- SSL_SKIP_VERIFY = 'adbc.snowflake.sql.client_option.tls_skip_verify'¶
- USE_HIGH_PRECISION = 'adbc.snowflake.sql.client_option.use_high_precision'¶
控制用于 FIXED 数据类型的 NUMBER 列的数据类型。默认情况下,此功能已启用,NUMBER 列将全部作为 Decimal128 列返回,使用 NUMBER 类型的精度和比例。如果禁用,小数位数为 0 的定点数据类型将作为 Int64 列返回,非零小数位数将作为 Float64 列返回。此选项必须设置为“true”或“false”。
- WAREHOUSE = 'adbc.snowflake.sql.warehouse'¶
- class adbc_driver_snowflake.StatementOptions(*values)¶
基类:
EnumSnowflake 驱动程序特定的语句选项。
- INGEST_COPY_CONCURRENCY = 'adbc.snowflake.statement.ingest_copy_concurrency'¶
批量数据摄取并行运行 COPY 操作的最大数量。通过在文件仍在上传时执行 COPY 查询来优化批量数据摄取性能,Snowflake COPY 速度与数据仓库大小成比例。因此,较小的数据仓库可能需要更高的设置,以防止长时间运行的 COPY 查询阻塞其他查询的加载。默认值为 4。
- INGEST_TARGET_FILE_SIZE = 'adbc.snowflake.statement.ingest_target_file_size'¶
摄取期间写入的 Parquet 文件的近似大小。由于页脚/元数据的大小,实际大小会略大。不考虑批次大小,因此如果输入流产生非常大的批次,您将获得类似大小的 Parquet 文件。默认值为 10MB
- INGEST_UPLOAD_CONCURRENCY = 'adbc.snowflake.statement.ingest_upload_concurrency'¶
并行上传的 Parquet 文件数量。更高的并发性可以缓解拥塞并利用可用的网络带宽,但会增加内存使用。不能为负数。默认为 8
- INGEST_WRITER_CONCURRENCY = 'adbc.snowflake.statement.ingest_writer_concurrency'¶
批量摄取并行写入的 Parquet 文件数量。默认为 NumCPU
- PREFETCH_CONCURRENCY = 'adbc.snowflake.rpc.prefetch_concurrency'¶
结果集预取并发流的数量。默认为 10。
- QUERY_TAG = 'adbc.snowflake.statement.query_tag'¶
查询的标识符,可用于在查询历史记录中查找查询。使用空字符串取消设置标签。
- RESULT_QUEUE_SIZE = 'adbc.rpc.result_queue_size'¶
一次排队的批次数量。默认为 200。
DBAPI 2.0 API¶
ADBC Snowflake 驱动程序的 DBAPI 2.0 兼容门面。