R 数据库 延迟测试
library(tidyverse)
library(duckdb)
library(arrow)
con <- dbConnect(
duckdb(),
dbdir = "./甘肃省POI数据.duckdb", # 数据库文件保存路径
read_only = FALSE
)
poi <- tbl(con, "poi")
poi
#查看列名
colnames(poi)
dbGetQuery(con, "PRAGMA table_info(poi)") |>
select(name, type)
# 关闭数据库连接
dbDisconnect(con, shutdown = TRUE)
poi |>
group_by(城市) |>
summarise(n = n()) |>
# show_query()
collect()
jzdw <- read_parquet('./jzdw_with_location_baidu.parquet')
jzdw |> str()
###parquet文件延迟
wz <- tbl_file(path='./接种单位位置.parquet')
wz
wz |>
group_by(接种单位所属区县名称) |>
summarise(n=n())
#DuckDB 加速的本地数据操作
library(duckplyr)
df <- duckdb_tibble(x = 1:3, y = letters[1:3])
df |> group_by(y) |> summarise(n=n())
nyc = tbl(
con,
"read_parquet('nyc-taxi/**/*.parquet', hive_partitioning = true)"
)
nc <- open_dataset('./接种单位位置.parquet')
#不使用 to_duckdb就使用arrow 进行计算
nc |>
# to_duckdb() |>
group_by(city) |>
summarise(n = n()) |>
collect()
read_parquet_duckdb('./接种单位位置.parquet') |>
group_by(city) |>
summarise(n = n()) |>
collect()
评论
发表评论