提问者:小点点

将文件从本地计算机放入表阶段到雪花表阶段


我是新来的雪花,所以请在这里给我一些怜悯:-)

我正试图通过snowsql将文件暂存到表暂存。我已经设置了仓库、数据库名称、模式名称。我也创建了这个表,但是当我试图将一个文件放入s3时,我得到了一个SSL验证错误

kywils2#COMPUTE_WH@KW_POC_DB.MDBPRD_MASTER_DM>show TABLES;
+-------------------------------+----------------------------+---------------+------------------+-------+---------+------------+------+-------+----------+----------------+----------------------+-----------------+---------------------+------------------------------+---------------------------+-------------+
| created_on                    | name                       | database_name | schema_name      | kind  | comment | cluster_by | rows | bytes | owner    | retention_time | automatic_clustering | change_tracking | search_optimization | search_optimization_progress | search_optimization_bytes | is_external |
|-------------------------------+----------------------------+---------------+------------------+-------+---------+------------+------+-------+----------+----------------+----------------------+-----------------+---------------------+------------------------------+---------------------------+-------------|
| 2021-07-16 10:00:25.390 -0700 | MDM_CL_FR_DONATIONS_543611 | KW_POC_DB     | MDBPRD_MASTER_DM | TABLE |         |            |    0 |     0 | SYSADMIN | 1              | OFF                  | OFF             | OFF                 |                         NULL |                      NULL | N           |
+-------------------------------+----------------------------+---------------+------------------+-------+---------+------------+------+-------+----------+----------------+----------------------+-----------------+---------------------+------------------------------+---------------------------+-------------+

我的命令:

put file://c:\\Users\kywils\Documents\IT\u DBA\snowflake\u training\snowpipe\u testing\MDBPRD\u MASTER\u DM\u MDM\u CL\u FR\u捐赠\u 543611\u splitaa。gz@%MDM_Clu FR_捐款543611

错误:

的SSL验证失败https://sfc-va2-ds1-28-customer-stage.s3.amazonaws.com/?accelerate[SSL:CERTIFICATE\u VERIFY\u FAILED]证书验证失败(\u SSL.c:852)

据我所知,table Stage是一种雪花状的内部存储,所以我不明白为什么它会尝试转到S3?

我已尝试在文件名中使用双反斜杠。我也尝试过使用名称阶段,但我得到了相同的错误。


共1个答案

匿名用户

据我所知,table Stage是一种雪花状的内部存储,所以我不明白为什么它会尝试转到S3?

当雪花在AWS上运行时,存储在内部阶段的所有文件都在S3中。内部阶段仍然是S3,只是雪花管理的一个区域。所有表和实例化视图存储也是S3。

当你可以通过网络用户界面或像SnowSQL这样的客户端访问你的雪花帐户,但不能进入内部阶段时,通常是一个网络设备在进行数据包检查。Zcalar、Palo Alto、Cisco Umbrella等设备位于客户端和公共互联网之间。有时他们会被S3(或Azure Blob或GCP存储)上的内部阶段的雪花SSL证书弄糊涂。

要解决此问题,应首先运行以下命令:

select SYSTEM$WHITELIST();

通过此命令的输出,您可以要求网络管理员从数据包检查中排除给定端口(443或80)的所有URL——基本上是一条清晰的路径。当Snowflake设置帐户时,这些URL将绑定到该帐户,并且不会更改。他们使用的IP号码可以而且将会改变,所以你可以告诉网络团队这不是一个选项。他们可以打开一系列IP,但这将是广泛的-所有的AWS范围。

您可以通过使用SYSTEM$WHITELIST()函数的输出运行SnowCD来确认所有必需的网络路径都已清除。

https://docs.snowflake.com/en/user-guide/snowcd.html