In this post, we'll look at building Druid Applications in the R language. RDruid is a Druid library for R, available here: https://github.com/metamx/RDruid
To setup Druid's webstream example, grab the Druid tarball at http://static.druid.io/artifacts/releases/druid-services-0.5.54-bin.tar.gz
tar -zxvf druid-services-*-bin.tar.gz cd druid-services-0.5.54 ./run_example_server.sh Enter webstream
To install RDruid and the other dependencies for this tutorial, simply run these commands in R:
install.packages("devtools") library(devtools) install.packages(c("shiny", "ggplot2")) install_github("RDruid", "metamx")
Lets query Druid and make a simple chart:
library(RDruid) library(ggplot2) url <- druid.url(host="localhost", port="8083") datasource <- "wikipedia" timespan <- interval(ymd(20130101), ymd(20200101)) tsdata <- druid.query.timeseries(url=url, dataSource=datasource, intervals = timespan, aggregations = sum(metric("count")), granularity = granularity("PT1M") ) print(ggplot(data=tsdata, aes_string(x="timestamp", y="rows")) + geom_line())
Which results in:
A more complicated Shiny web application is available on github here.