【问题标题】:Dataframe load from python to snowflake via EC2通过 EC2 从 python 加载数据帧到雪花
【发布时间】:2020-10-08 13:36:02
【问题描述】:

我有一个 python 数据框,我需要将它加载到雪花表中。我是通过 Jupyter notebook 做的,我能够加载数据。但是,当我在 EC2 中运行相同的代码时,我遇到了分段错误错误。我想问是否可以使用其他方法将数据从 python 数据帧加载到雪花中,例如创建临时 CSV 并通过 python 加载相同或以 pyarrow 格式更改它,然后通过 python 将其加载到雪花中。请注意,我不能使用 S3 存储桶。

【问题讨论】:

  • 我建议您使用更多详细信息更新您的问题。错误消息、示例代码等。您的本地机器和 EC2 实例显然有些不同,但没有任何细节,就不可能为您指出正确的方向并调试您的问题。
  • 我无法在虚拟环境中粘贴代码..我将尝试发布本地机器的代码...同时您能否建议其他方法来加载数据到雪花
  • 我认为您需要弄清楚为什么 write_pandas() 无法在 EC2 实例上运行,因为它运行的命令与您在替代解决方案中尝试使用的命令相同(PUT 和 COPY进入)。

标签: python pandas database-connection snowflake-cloud-data-platform


【解决方案1】:

你最好的方法是使用write_pandas()函数,它会创建一个临时文件,PUT它到雪花内部阶段,然后为你执行一个COPY INTO命令。

https://docs.snowflake.com/en/user-guide/python-connector-api.html#label-python-connector-api-write-pandas

不过,这不是唯一的方法,而且由于您的问题没有指定您使用的是哪种方法,我想我会从最好的方法开始。如果这是您已经在使用的方式,我将更新此答案。

【讨论】:

  • 我使用 to_sql 同时使用了 write_pandas() 和 pd_writer 但每次在 EC2 中使用它们时都会出错...但是两者都在我的本地系统中工作...请指定可以使用哪些其他方法用于加载数据...在此先感谢
  • 我使用回溯检查EC2中的错误,发现我收到以下错误:255001:不支持类型(方法)中的绑定数据....请您在这里分享一下这里有什么问题吗?数据是通过本地机器加载到雪花的,但现在我收到了这个错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-07
  • 2022-12-06
  • 1970-01-01
  • 1970-01-01
  • 2020-08-31
  • 1970-01-01
  • 2021-04-12
相关资源
最近更新 更多