Snowflake cloud data platform 为什么Snowflake建议创建一个外部舞台,而不是直接从桶中装载?

Snowflake cloud data platform 为什么Snowflake建议创建一个外部舞台,而不是直接从桶中装载?,snowflake-cloud-data-platform,snowflake-schema,snowflake-stream,Snowflake Cloud Data Platform,Snowflake Schema,Snowflake Stream,在AWS S3关于散装装载的雪花文件中, 他们说: 您可以直接从存储桶加载,但Snowflake建议创建一个引用存储桶的外部阶段,并改用外部阶段。 因此,我的第一个问题是: 为什么Snowflake建议创建一个外部舞台,而不是直接从桶中装载? 这有什么原因吗?或者,如果您有任何解释原因的文档,请让我知道。:) 我的第二个问题是: 在从本地文件系统大容量加载的体系结构图中,有箭头(➡) 从数据文件到后台,但是在AmazonS3批量加载的情况下,从数据文件到外部后台没有箭头。有箭头和没有箭头有什么区

在AWS S3关于散装装载的雪花文件中, 他们说:

您可以直接从存储桶加载,但Snowflake建议创建一个引用存储桶的外部阶段,并改用外部阶段。

因此,我的第一个问题是: 为什么Snowflake建议创建一个外部舞台,而不是直接从桶中装载? 这有什么原因吗?或者,如果您有任何解释原因的文档,请让我知道。:)

我的第二个问题是: 在从本地文件系统大容量加载的体系结构图中,有箭头(➡) 从数据文件到后台,但是在AmazonS3批量加载的情况下,从数据文件到外部后台没有箭头。有箭头和没有箭头有什么区别

从Amazon S3批量装载:

从本地文件系统大容量加载:

阶段拥有bucket的所有权限,因此安全角色可以创建并处理AWS令牌,然后向其他角色授予对阶段的读/写访问权限,这将加载数据和保护数据这两项任务分开


它还允许stage更改/更新令牌,并且使用它的代码/用户不会受到影响,甚至不会更改为方法,其中(我不知道名称,但不知道名称)动态密钥交换会发生,因此S3/AWS之间的密钥轮换是自动的。事实上,对于不同的数据源,我们有很多阶段来进行轮换,而业务策略的安全方面不需要由构建ETL代码的数据工程师来处理。

考虑到S3一致性保证了改进的地方最近,从S3直接加载可能比以前“更正常”。