Есть ли лучший способ перемещения больших данных (~ 20 миллионов строк) из базы данных Hive в базу данных Netezza в R? - PullRequest
0 голосов
/ 22 января 2019

У меня проблема с переносом большого объема данных (~ 20 миллионов строк, 20 столбцов) из Hive в Netezza.

Теперь я также ищу лучший или наиболее эффективный способ передачи данных.

На моем ноутбуке с Windows 10 успешно установлены драйверы Hive и Netezza с 16 ГБ памяти.

Я заметил пропущенные строки при передаче больших данных из Hive в Netezza. Ранее я успешно извлекал небольшие таблицы и записывал их в Netezza. базы данных с использованием пакетов 'odbc' и 'DBI' в R. Я также успешно передал большие объемы данных, используя 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)

Было бы здорово, если бы:

  1. данные могут быть перемещены порциями или
  2. перемещать данные из Hive в Netezza без необходимости переносить их на мой компьютер между * или
  3. Выполните передачу, не перегружая память моего ноутбука, чтобы я мог использовать ее для других задач во время этой передачи
...