-
Notifications
You must be signed in to change notification settings - Fork 31
FireData Connecting R to Google Firebase
Persistent Data Storage and transfer with R can be complicated and time consuming. While there are great packages to connect R to DBs like mySQL/sqlLite/postgreSQL those databases itself need to be hosted and maintained. To implement a DB based login system in Shiny now probably takes 2 weeks of work to get it done in a secure way, and a IoT project for data collection requires a 24/7 running server.
The Google team took that common problem (not only of R) and created Firebase. Firebase is a online database that is not only intuitive to integrate into Apps & Web applications, but can also be used to build user registration/login systems with persistent data storage (thinking about shiny) or to transfer data between IoT devices via Firebase directly to a R environment. Writing a intuitive R to Firebase connector enables R to be used in new "cross platform" realtime applications. Thats why we strongly believe the "FireData" package will improve the R open source environment.
The R universe offers with the httr
package to apply PUT/POST commands to servers (including Firebase). In combination with a JSON library like jsonlite
it is possible to send & retrieve data from Firebase.
Google Firebase on the contrary is more sophisticated than simple PUT/POST requests and allows JWT tokenizations, registrations & logins and even file uploads. Firebase brings all functionality and ease to be the to-go Database for R IoT or Shiny related projects.
With the experience of GSOC 2016 we will start with a larger team (other open source developers signaled they would help to improve their own DB experience) to get the FireData package CRAN ready before the September deadline.
- Now - April : Adding prove of concepts of the Firebase integration into Shiny and IoT applications.
- April - June : Writing and implementing the various firebase connecting functions
- June - July : Adding the functions to the FireData package & writing Vignettes/Documentation
- July - August : Finishing FireData and getting it CRAN ready.
R is one of the strongest players in data science. The aim is to connect its strength in data analysis with the actual data. By making it easier to directly connect R to the inputs of IoT devices or other applications such as websites/shiny it will open new possibilities for open source developers around the world.
The final product, the FireData package, will connect two great environments with each other. When we succeed to make it stable & intuitive alot of projects will be build ontop of it.
- We have written a tutorial on Shiny & Firebase Logins https://r.codes/ItemPreview/-KaLAwn-zqMgARFUnxpo
(the R server side Firebase proof will be added soon)
Samuel Schmidt, Post-Doc. (has GSOC Mentor experience). | schmidt@glycosearch.com