我在将大量数据(约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,而不必在两者之间将其传输到我的计算机
在不占用笔记本电脑内存的情况下进行传输,以便在传输时可以将其用于其他任务
暂无答案!
目前还没有任何答案,快来回答吧!