问题标签 [snowflake-pipe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
118 浏览

snowflake-cloud-data-platform - 从雪管连续数据加载设置之前加载

我已经设置雪管从 S3 存储桶连续加载表中的数据。这已经运行了大约一个月(即> 14 天)。在设置雪管之前,存储桶中有数据,我们还需要将这些文件加载​​到雪花中。Snowpipe 显然只保留 14 天的复制历史数据。什么是识别尚未摄取到表中的文件并批量导入它们的好方法?

0 投票
1 回答
2050 浏览

snowflake-cloud-data-platform - 雪花 - 使用舞台区域失败。原因:[您提供的 AWS 访问密钥 ID 无效。]

我正在尝试使用 Snowflake 连接到我的个人 S3 存储桶。首先,我使用 url、aws 密钥 ID 和密钥来创建阶段(成功)。但是当我尝试列出 s3 存储桶时,出现以下错误 -

使用舞台区域失败。原因:[您提供的 AWS 访问密钥 ID 无效。]

我确定我输入了正确的凭据,知道为什么会出现此错误吗?

太感谢了!

0 投票
1 回答
481 浏览

user-defined-functions - Snowflake Java Script 用户定义表函数

如何从 Snowflake Javascript UDF / UDTF 返回包含多列的表?

0 投票
2 回答
587 浏览

snowflake-cloud-data-platform - Snowpipe 自动摄取配置看起来会触发所有管道

我是 Snowflake 数据仓库的新手,想使用雪管加载数据并从包含多个文件夹(每个数据库一个)的外部阶段(S3 存储桶)自动摄取数据,并且在这些文件夹中有多个文件,每个表有 1 个文件。不同文件夹中的文件将在不同时间更新,我目前正在使用自动摄取将 S3 转到 SQS 再到 Snowpipe。

我的示例 S3 存储桶设置如下:

我目前的理解是,我将为每个表创建一个管道,因此 account.csv 将与 1 个管道相关,该管道将填充帐户表,然后 product.csv 将与另一个管道相关以填充产品表等。

目前,如果我将新文件添加到存储桶中,因为通知在存储桶上,所以看起来所有管道都会被触发。

我的问题是:

  • 添加新文件时触发所有管道是否正确?我是否需要将 db1 和 db2 设置为不同的外部阶段,所以如果我将文件添加到 db1 文件夹,那么只会读取链接到该外部阶段的管道?
  • 我读过 SNS 可以使用,但不确定它如何用于雪管。S3 是否发送消息以便它可以确定调用哪个管道并将消息散播到该管道?
  • 有没有比我上面使用的更好的方法?

谢谢你的帮助

0 投票
1 回答
221 浏览

loading - 我们可以根据 SNOWFLAKE 中 PIPE 的成功条件来设置任务启动条件吗

我有一个要求,将 3 个不同的文件加载到具有 3 个不同 PIPE 的单个表中。我希望仅在将所有 3 个文件加载到我的阶段后才触发目标进程。

我不想多次运行我的目标进程。

那么有什么方法可以让我们在 PIPE 成功上获得任务的开始条件。

我去了文档,但没有找到任何这样的信息,或者有没有办法实现它,我可能会错过。

0 投票
1 回答
203 浏览

snowflake-cloud-data-platform - 雪花 object_construct 卸载键顺序应保持不变。如何保持不按字母顺序排列?

我使用下面的雪花复制命令返回一个内容为 json 的文件

复制到@elasticsearch/product/sf_index from (select object_construct( 'id',id, alpha,'alpha' )from table limit 1) file_format = (type = json, COMPRESSION=NONE), overwrite=TRUE, single = TRUE,最大文件大小=5368709120;

json文件中的输出是

我希望在这里保留订单,而不是按字母顺序?像这样

有什么解决办法??提前致谢

0 投票
1 回答
203 浏览

snowflake-cloud-data-platform - 已超出云 AZURE 中的最大通知集成数

事实证明,在我们创建了 10 个通知集成后,我们无法创建更多并出现以下错误。是硬限制吗?是雪花那边还是天蓝色那边?可以改变吗?

已超出云 AZURE 中通知集成的最大数量。

代码:

0 投票
2 回答
722 浏览

snowflake-cloud-data-platform - How to troubleshoot Snowpipe auto ingest failures?

I'm trying to load all new files from an AWS S3 bucket depending on its paths to two Snowflake tables, but I couldn't yet succeed even with one table. What I've tried:

Created a stage:

Created a table:

Created a pipe:

Added the SQS ARN to the bucket's event with:

  • prefix: jobs_resource_usage/
  • suffix: .json
  • send to: SQS Queue
  • SQS queue ARN: the one which select parse_json(SYSTEM$PIPE_STATUS('DATA_SCIENCE.INFRA.job_metrics')):notificationChannelName; has returned

The stage works, because I can list files with like:

Which returns S3 file names like (included a sample to see its format):

s3://om/jobs-resource-usage/metrics/job_name=Ingest job/build_number=144.json

I can successfully load the file manually with:

However, the pipe doesn't load anything. If I do a

I can see it receives the notification messages:

but I can't see any lastForwardedMessageTimestamp entries, which suggests there's a problem with path matching? I've tried multiple permutations with the leading slash and to upload files right to the metrics path, without any spaces or =s, without success.

What did I do wrong, how could I figure out what's the problem here?

0 投票
1 回答
152 浏览

snowflake-cloud-data-platform - Snowflake stage Standalone 可以不借助任何云或锁机吗?

对于 Snowflake 中的暂存,我们需要 S3 AWS 层或 Azure 或本地机器。取而代之的是,我们可以将来自源团队的文件直接 FTP 到 Snowflake 内部存储,这样,Snowpipe 就可以从那里将文件加载到我们的 Snowflake 表中。

如果是,请告诉如何。如果不是,请同时确认。如果不是,那不是 Snowflake 每次都依赖其他平台的一大缺点。

0 投票
0 回答
357 浏览

snowflake-task - 在雪花任务中,我们是否有类似子任务将等到满足依赖关系而不是父任务条件

我有4个流。A_STREAM、B_STREAM、C_STREAM、D_STREAM

我有一个任务链,其中 A_TASK 是父任务,它有 3 个子任务(B_TASK、C_TASK、D_TASK)。

假设 A_TASK 被触发并完成,但是当它执行 C_TASK 流时,C_STREAM 没有数据,所以任务没有被触发。5 分钟后,C_STREAM 得到数据。

这里的问题是数据永远不会从 C_STREAM 加载到目标表,因为下次 A_TASK 不会被触发。我们如何应对这种情况?

我无法分离这些任务,因为它们在同一个目标表上运行。

在雪花任务中,我们是否有类似子任务会等到满足依赖关系的东西?