Snowflake的目标,使用Meltano SDK构建的Singer目标。
项目描述
target-snowflake
Snowflake的目标。
使用Meltano Singer SDK构建。
功能
about
stream-maps
schema-flattening
target-schema
设置
设置 | 必需 | 默认值 | 描述 |
---|---|---|---|
user | True | None | Snowflake用户的登录名。 |
password | False | None | Snowflake用户的密码。 |
private_key | False | None | 私钥内容。对于密钥对身份验证,必须提供private_key或private_key_path。 |
private_key_path | False | None | 包含私钥的文件的路径。对于密钥对身份验证,必须提供private_key或private_key_path。 |
private_key_passphrase | False | None | 如果私钥加密,则用于解密私钥的口令。 |
account | True | None | 您的帐户标识符。请参阅帐户标识符。 |
database | True | None | Snowflake会话的初始数据库。 |
schema | False | None | Snowflake会话的初始模式。 |
warehouse | False | None | 会话的初始仓库。 |
role | False | None | 会话的初始角色。 |
add_record_metadata | False | 1 | 是否添加元数据列。 |
clean_up_batch_files | False | 1 | 是否在处理后删除批处理文件。 |
default_target_schema | False | None | 用于所有流的默认目标数据库模式名称。 |
hard_delete | False | 0 | 硬删除记录。 |
load_method | False | TargetLoadMethods.APPEND_ONLY | 加载数据到目标时的使用方法。 append-only 将始终写入所有输入记录,无论这些记录是否存在。 upsert 将更新现有记录并插入新记录。 overwrite 将删除所有现有记录并插入所有输入记录。 |
batch_size_rows | False | None | 每个批次中的最大行数。 |
validate_records | False | 1 | 是否验证传入流的模式。 |
stream_maps | False | None | 流映射功能的配置对象。更多信息请查看 流映射。 |
stream_map_config | False | None | 在映射表达式中使用的用户定义配置值。 |
faker_config | False | None | 用于映射表达式中的 Faker 实例变量 fake 的配置。仅当插件指定 faker 作为附加依赖项(通过 singer-sdk 的 faker 附加组件或直接指定)时适用。 |
faker_config.seed | False | None | 用于对 Faker 生成器进行种子以便产生确定输出的值:https://faker.readthedocs.io/en/master/#seeding-the-generator |
faker_config.locale | False | None | 一个或多个 LCID 区域字符串,用于产生本地化输出:https://faker.readthedocs.io/en/master/#localization |
flattening_enabled | False | None | 设置为 'True' 以启用模式展平和自动展开嵌套属性。 |
flattening_max_depth | False | None | 展平模式的最大深度。 |
use_browser_authentication | False | False | 如果应使用 SSO(通过外部浏览器)进行身份验证。请参阅 SSO 浏览器身份验证。 |
运行 target-snowflake --about
命令可以获取支持的设置和功能完整列表。
初始化 Snowflake 账户
此目标具有交互式功能,可帮助您初始化 Snowflake 账户,使其具备开始加载数据所需的一切。
- 用户
- 角色
- 仓库
- 数据库
- 适当的权限
CLI 将要求您提供有关要创建的新用户/角色等信息,但它还需要执行查询的 SYSADMIN 凭据。您应准备以下输入
- 账户
- 具有 SYSADMIN 和 SECURITYADMIN 访问权限的用户。这些默认与创建 Snowflake 账户的用户一起提供。
- SYSADMIN 用户的密码。
运行以下命令以开始交互式 CLI。注意 - CLI 将打印计划运行的 SQL 查询,并在做出任何更改之前与您确认。
poetry run target-snowflake --initialize
# Alternatively using Meltano CLI
meltano invoke target-snowflake --initialize
CLI 还具有 "dry run" 模式,它将打印查询而不执行它们。
请查看 YouTube 上的演示 (链接)。
使用环境变量进行配置
如果提供 --config=ENV
,则此 Singer 目标将自动导入工作目录 .env
中的任何环境变量,这样如果终端上下文或 .env
文件中设置了匹配的环境变量,则配置值将被考虑。
用法
您可以通过单独运行或使用 Meltano 的管道来轻松运行 target-snowflake
。
直接执行目标
target-snowflake --version
target-snowflake --help
# Test using the "Carbon Intensity" sample:
tap-carbon-intensity | target-snowflake --config /path/to/target-snowflake-config.json
开发资源
初始化您的开发环境
pipx install poetry
poetry install
创建和运行测试
在 target_snowflake/tests
子文件夹中创建测试,然后运行
poetry run pytest
您还可以使用 poetry run
直接测试 target-snowflake
CLI 接口。
poetry run target-snowflake --help
使用 Meltano 进行测试
注意: 此目标可在任何 Singer 环境中使用,并且不需要 Meltano。此处提供的示例仅供参考,并用于简化端到端编排场景。
您的项目已包含一个自定义的 meltano.yml
项目文件。
接下来,安装 Meltano(如果您尚未安装)和任何需要的插件
# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd target-snowflake
meltano install
现在您可以使用 Meltano 进行测试和编排
# Test invocation:
meltano invoke target-snowflake --version
# OR run a test `elt` pipeline with the Carbon Intensity sample tap:
meltano run tap-carbon-intensity target-snowflake
SDK 开发指南
请参阅开发指南,了解如何使用Meltano SDK开发自己的Singer taps和targets。
项目详情
meltanolabs_target_snowflake-0.11.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 042362cb4249ed024b414b1c5a8c0d5e4f1bc26265f2b3203c15bdecd4997810 |
|
MD5 | e5f85549034ae2c465a353d243c5a223 |
|
BLAKE2b-256 | 83fa1271cefe77baf54c72654507d8c8f7452708c83c6e35806f7671babd6d9a |
meltanolabs_target_snowflake-0.11.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3c2318acbae1f5e6a1787599a77e19961b398a5d192fa0c2021f4f9b682bb6fc |
|
MD5 | 0a7560f19fb2b5144733012141232c93 |
|
BLAKE2b-256 | 2e503dabcacd0569a4ee5e33908a05ceebe292fe1a907e0cc0292dfb93e54587 |