Я пытаюсь создать БД Clickhouse и скопировать в таблицу значения из многих файлов (все они имеют порядок столбцов).
Но я не понимаю, как с этим справиться.
Я использую RClickhouse , который я не знаю, есть ли разница по сравнению с clickhouse-r .
library(RClickhouse)
library(DBI)
library(tidyverse)
eggnog_dir <- "/home/acpguedes/projects/sig_trans/data/eggnog/table/"
setwd(eggnog_dir)
myconn <- DBI::dbConnect(drv = RClickhouse::clickhouse())
mytables <- list.files(".") # all tables are in the same folder
mysqltb <- db_create_table(con = myconn, table = 'eggnog')
lapply(mytables, function(x) {
read_tsv(file = x,
col_names = c( #in my case the tables has no header
'sequence',
'model',
'start',
'end',
'evalue',
'cov',
'qstart',
'qend',
'iteration',
'score',
'talilen',
'qlen',
'estart',
'eend',
'program'
)
) %>% dbWriteTable(conn=myconn, value = ., name = "domains", append=TRUE)
}
) -> dt
Не имеет значения Сам столбцы, я просто хотел бы привести пример того, как создать таблицу и загрузить в нее содержимое многих файлов (таких как tsv ou CSV или любой разделитель).
Я также пытался с dbpĺyr
используя copy_to()
вместо dbWriteTable
.
Кроме того, после загрузки всех таблиц я должен сделать оператор 'commit' для постоянного сохранения базы данных для последующего присоединения с R или других платформ?
Заранее спасибо.