有助于将数据加载到多个云数据库的Python软件包或设计
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有助于将数据加载到多个云数据库的Python软件包或设计相关的知识,希望对你有一定的参考价值。
我有一个数据帧字典,每个数据帧代表数据库中的一个表。我想将所有这些表加载到多个云数据库,包括:AWS DynamoDB雪花(ODBC)AWS RedShiftAWS文档数据库Azure CosmosDBGCP扳手GCP BigQueryGCP FireStoreGCP内存表AWS ElaticacheAWS海王星AWS QLDB我可以采用任何设计模式来解决此问题吗?可以连接到这些数据库的python软件包如何? GitHub上有类似的代码吗?或者,先将数据加载到一个数据库(如MongoDB)再将其迁移到其他数据库会更容易。
听起来您好像想在编程中使用某些ORM框架(例如SQLAlchemy
for Python)或某些ETL工具(例如SQLAlchemy
(基于JDBC)来将数据从数据帧传输到多个云数据库。
但是,我认为没有一个单一的解决方案可以支持这些全部不同的数据库,如下图所示。
图1. SQLAlchemy支持这些数据库,屏幕快照来自SQLAlchemy Kettle
页面
Kettle
图2.经典的ETL工具Kettle支持这些数据库,屏幕截图来自Kettle Dialects页面
所以混合的解决方案是:1.使用SQLAlchemy手动编写Python脚本2.直接将Kettle与一些必要的插件一起使用,这些插件支持其他附加数据库(例如,AWS DynamoDB Snowflake的Special database issues and experiences),甚至尝试通过其与Python集成。
希望有帮助。
以上是关于有助于将数据加载到多个云数据库的Python软件包或设计的主要内容,如果未能解决你的问题,请参考以下文章
使用 Dataflow 管道 (python) 将多个 Json zip 文件从 GCS 加载到 BigQuery
将 csv 文件加载到 BIGquery 中并在插入数据时添加日期列
使用 spark 将 parquet 数据从 Google 云存储加载到 BigQuery