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()

评论

此博客中的热门博文

Rstudio 使用代理

ShadowsocksR Plus 就回来了~