有几个OLTP Postgres数据库,每天总共接受1亿行。
还有Greenplum DWH。如何每天仅进行少量转换即可加载这1亿行数据?
我将为此使用Python。
我敢肯定,即使使用批处理方式,以传统方式(psycopg2 + cursor.execute("INSERT ...
进行操作,也要花费大量时间,并且会在整个系统中造成瓶颈。
您对如何优化数据加载过程有什么建议?任何可能帮助您的链接或书籍也欢迎。
答案 0 :(得分:0)
您应该尝试将数据导出到平面文件(csv,txt等)中。
然后,您可以使用Greenplum实用程序的某些形式来导入数据。 看here。
您可以在创建平面文件之前使用Python对数据进行转换。使用Python自动化整个过程:将数据导出到文件中并将数据导入表中。