如何解决使用AWS Sagemaker将Snowflake数据加载到Pandas数据框中
我正在尝试使用AWS Sagemaker上的Jupyter Lab将数据从Snowflake读取到Pandas数据框中。我可以成功加载100行,但不能成功加载220万行
- 〜20分钟后我放弃加载完整数据
- 在我的本地计算机上需要4分钟,如果我更改为在本地计算机上批量提取,则需要很长时间(〜10分钟)–但是可以在Sagemaker上尝试吗?
- 命令已成功发送到雪花(查看历史记录)
- 将基础视图放到Snowflake上的表中显示大小为222.5MB
步骤:
-
运行:
!pip install snowflake-connector-python[pandas]
-
重启内核
-
执行:
ctx = snowflake.connector.connect( user='<username>',account='<account>',password = '<password>',warehouse='<wh>',database='<db>',role='<role>',schema='<schema>' ) cur = ctx.cursor() sql = """ SELECT * <db>.<schema>.<view> """ cur.execute(sql) # Fetch the result set from the cursor and deliver it as the Pandas DataFrame. df = cur.fetch_pandas_all() cur.close() ctx.close()
是否需要任何特定的配置来确保我正在使用?
解决方法
在这种情况下,可以从ml.tx.xlarge(2vCPU,8Gib)调整按需笔记本实例的大小。有关笔记本实例的CPU /内存规格,请参见Amazon SageMaker Pricing。
在更早的解决此问题的尝试中,我们增加了卷的大小,但这是为了存储数据,并且对内存没有帮助(有关存储卷的更多详细信息,请参见Customize your notebook volume size,up to 16 TB,with Amazon SageMaker);因此我们能够将卷大小从50 GB EBS减小到10 GB EBS。
可以通过使用Jupyter界面打开终端并键入linux命令free
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。