在r中,有没有更好的方法将大数据(约2000万行)从hive数据库移动到netezza数据库?

ss2ws0br  于 2021-06-27  发布在  Hive
关注(0)|答案(0)|浏览(218)

我在将大量数据(约2000万行,20列)从hive传输到netezza时遇到问题。
现在,我也在寻找传输数据的最佳方法或最有效的方法。
我已经成功地将hive和netezza驱动程序安装在内存为16gb的Windows10笔记本电脑上。
我注意到在将大型数据从hive传输到netezza时丢失了行,以前我使用r中的“odbc”和“dbi”包成功地提取了小表并写入netezza数据库。我也使用alteryx成功地传输了大量数据,但是许可证已经过期,如果可能的话,我想使用r完成同样的任务。

library(odbc)
library(dplyr)

# Creating Hadoop Hive connection using driver (HadoopHive)

con_hq <- dbConnect(odbc::odbc(), "HadoopHive")

# Creating Netezza connection using re-configured driver(NZSQL)

con_nz <- dbConnect(odbc::odbc(), "NZSQL") 

# Running the SQL query to get data from table1 from Hadoop database

data <- dbGetQuery(con_hq, "select * from table1")

# writing the data frame 'data' into netezza database giving it a table

# name 'nz_table1'

dbWriteTable( con_nz, "nz_table1", data)

如果:
数据可以分块移动,也可以分块移动
将数据从hive移动到netezza,而不必在两者之间将其传输到我的计算机
在不占用笔记本电脑内存的情况下进行传输,以便在传输时可以将其用于其他任务

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题