栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 其他

R语言使用RClickhouse连接及读写Clickhouse数据库

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

R语言使用RClickhouse连接及读写Clickhouse数据库

服务器安装RClickhouse

用R语言做数据分析时,常常需要从多种数据源取数据,其中数据库是非常常见的数据源。RClickhouse包,可以在R语言中对Clickhouse数据库进行增删改查的操作。

安装:

install.packages(“RClickhouse”)


查看一下:

packageVersion("RClickhouse")
> packageVersion("RClickhouse")
[1] ‘0.5.2’
创建DBI Connection:
con <- DBI::dbConnect(RClickhouse::clickhouse(), host="192.168.8.145",db ="test")

注意:请注意,{RClickhouse}不使用HTTP接口与Clickhouse通信。因此,您可以使用本机接口端口(默认为9000)而不是HTTP接口(8123)。

将数据写入数据库:
DBI::dbWriteTable(con, "mtcars", mtcars)
DBI::dbListTables(con)
DBI::dbListFields(con, "mtcars") 



使用dplyr查询数据库:

tbl(con, "mtcars") %>% group_by(cyl) %>%summarise(smpg=sum(mpg))

tbl(con, "mtcars") %>% filter(cyl == 8, vs == 0) %>% group_by(am) %>% summarise(mean(qsec))
# Close the connection
DBI::dbDisconnect(con)
使用带有DBI的SQL样式命令查询数据库::dbGetQuery:
DBI::dbGetQuery(con, "SELECt vs ,COUNT(*) AS 'number of cases',AVG(qsec) AS 'average qsec'FROM mtcars GROUP BY vs")

# Save results of querying:

DBI::dbGetQuery(con, "SELECt (*) FROM mtcars WHERe am = 1")

# Or save the whole set of data (only useful for smaller datasets, for better performance and for larger datasets always use remote servers):

mtcars <- dbReadTable(con, mtcars)

# Close the connection
dbDisconnect(con)
使用ClickHouse函数查询数据库
# Get the names of all the avaliable databases
DBI::dbGetQuery(con, "SHOW DATAbaseS")

# 查看表
DBI::dbGetQuery(con, "SHOW TABLES")

# Get information about the variable names and types
DBI::dbGetQuery(con, "DESCRIBE TABLE mtcars")

# Compact CASE - WHEN - THEN conditionals
DBI::dbGetQuery(con, "SELECt multiIf(am='1', 'automatic', 'manual') AS 'transmission',multiIf(vs='1', 'straight', 'V-shaped') AS 'engine'FROM mtcars")

# 写入数据,跟Rmysql 语法差不多
diagram<-data.frame(id=4:5,name=c("周璐老师","宋雪老师"))

DBI::dbWriteTable(conn,"test01",diagram,append=T,row.names=F)


# Close the connection
dbDisconnect(con)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/279590.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号