【问题标题】:Snowpipe Infastructure & s3 subfolders雪管基础设施和 s3 子文件夹
【发布时间】:2020-01-29 18:34:24
【问题描述】:

我正在尝试建立可扩展的雪管基础设施。我有一个 AWS lambda 函数提取数据并将原始 json 文件放入下面的相应文件夹中。

理想情况下,我想设置雪管以将每个文件夹中的数据读入它自己的雪花表中。

例如)

  • leads 文件夹中的leads json 文件现在通过管道传输到一个 雪花中的leads_json 表。
  • 现在,位于机会文件夹中的机会 json 文件通过管道传输到雪花中的 opportunitie_json 表中。

如何设置管道和阶段以减少所需的管道和阶段数量?

存储桶中的每个子文件夹是否需要一个管道和阶段?

我将使用 SQS 通知来利用 AUTO_INGEST=true 功能。

【问题讨论】:

    标签: snowflake-cloud-data-platform


    【解决方案1】:

    对于通过 Snowpipe 加载的每个 TABLE,您将需要 1 个 PIPE。如果您愿意,您可以有一个 STAGE 指向 S3 存储桶的顶层文件夹,或者您可以在较低级别的文件夹中为每个表创建 1 个。我希望这能回答你的问题。

    【讨论】:

    • 补充迈克的回答;我建议为凭证使用单个存储集成,因此它们不是基于每个阶段的,并且为您列出的每个 AWS 文件夹一个阶段。这可以减少一个阶段可以访问的文件,如果您必须重新处理一组文件,可以帮助减少开销。
    • @Chris 在本文档的选项 1 中?目前我只完成了选项 2。docs.snowflake.net/manuals/user-guide/…
    • 谢谢@MikeWalton
    • @Bigmoose70 是的,完全正确。它确实需要 ACCOUNTADMIN 访问权限才能创建集成。
    • @Chris 想通了!感谢你的帮助!等不及他们想出一种基于事件而不是 cron 或其他任务来执行任务的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-07
    • 2016-04-26
    • 1970-01-01
    • 2023-03-20
    • 2011-12-08
    • 2011-06-19
    • 2013-03-07
    相关资源
    最近更新 更多