この記事では、RPresto パッケージを使用して、R 言語 で Treasure Data を使用する方法を説明します。
install.packages(c("RPresto", "devtools", "dplyr", "dbplyr", "ggplot2"))
devtools::install_github("treasure-data/RTD")
devtools::install_github("crowding/msgpack-r")R 言語に RODBC lib を使用する場合は、代わりに RJDBC lib を使用してください。RJDBC を使用すると、汎用の Trino/Presto JDBC ドライバを設定できます。R 言語から Treasure Data Trino にアクセスできるようになります。
以下のエンドポイントを使用してこの機能にアクセスできます。RPresto の場合は Presto JDBC を、RTD では API が使用される可能性があります。Treasure Data サイトとエンドポイントの詳細をご覧ください。
以下の例でクエリを実行できます。'test' データベースに 'flights' テーブルがあると仮定して、TD API キーの環境変数 <TD_API_KEY> を設定する必要があります。
別の地域を使用するには、host を目的の地域に置き換えます。
library(RPresto)
library(dplyr)
db <- src_presto(
host="https://api-presto.treasuredata.com",
port=443,
user=Sys.getenv("TD_API_KEY"),
schema='test',
catalog='td-presto'
)
flights_tbl <- tbl(db, 'flights')
# filter by departure delay and show result
flights_tbl %>% filter(dep_delay == 2)library(DBI)
con <- dbConnect(
RPresto::Presto(),
host="https://api-presto.treasuredata.com",
port=443,
user=Sys.getenv("TD_API_KEY"),
schema='test',
catalog='td-presto'
)
# write your query with dbGetQuery function
flights_preview <- dbGetQuery(con, 'SELECT year, month, day, dep_time, dep_delay, carrier, flight from flights limit 10')
# show query result
flights_previewサンプルノートブック をご覧ください。