DBI :: dbGetQuery для баз данных слишком медленный - PullRequest
0 голосов
/ 30 августа 2018

У меня 6 таблиц под одной схемой. Есть 300 000 строк каждая Я использую DBI :: dbGetQuery для запроса всей таблицы следующим образом:

myRedshift <- DBI::dbConnect(RPostgreSQL::PostgreSQL(), 
                             dbname = 'dbname',
                             host = 'host',
                             port = 5439,
                             user = "user", 
                             password = "password")

 cis_has_bdpm_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table1"))
cis_cip_bdp_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table2"))
medicam_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table3"))
outpatient_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table4"))
open_medic_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table5"))
hospital_drugs_data <- data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table5"))
pmsi_data  <-data.frame( DBI::dbGetQuery(myRedshift, "select * from synapps.table6"))

но это очень медленно, для запроса всех таблиц требуется всего 1 минута. Итак, мой вопрос: нормально ли так долго? Есть ли способ ускорить его?

...