All Projects → ropensci → rrlite

ropensci / rrlite

Licence: other
R interface to rlite https://github.com/seppo0010/rlite

Programming Languages

c
50402 projects - #5 most used programming language
HTML
75241 projects
r
7636 projects
Makefile
30231 projects
C++
36643 projects - #6 most used programming language
lua
6591 projects

Projects that are alternatives of or similar to rrlite

suppdata
Grabbing SUPPlementary DATA in R
Stars: ✭ 31 (+93.75%)
Mutual labels:  r-package, peer-reviewed
medrxivr
Access and search medRxiv and bioRxiv preprint data
Stars: ✭ 34 (+112.5%)
Mutual labels:  r-package, peer-reviewed
nlrx
nlrx NetLogo R
Stars: ✭ 66 (+312.5%)
Mutual labels:  r-package, peer-reviewed
NLMR
📦 R package to simulate neutral landscape models 🏔
Stars: ✭ 57 (+256.25%)
Mutual labels:  r-package, peer-reviewed
PostcodesioR
API wrapper around postcodes.io - free UK postcode lookup and geocoder
Stars: ✭ 36 (+125%)
Mutual labels:  r-package, peer-reviewed
getCRUCLdata
CRU CL v. 2.0 Climatology Client for R
Stars: ✭ 17 (+6.25%)
Mutual labels:  r-package, peer-reviewed
rdefra
rdefra: Interact with the UK AIR Pollution Database from DEFRA
Stars: ✭ 14 (-12.5%)
Mutual labels:  r-package, peer-reviewed
bittrex
A R Client for the Bittrex Crypto-Currency Exchange
Stars: ✭ 26 (+62.5%)
Mutual labels:  r-package, peer-reviewed
nomisr
Access UK official statistics from the Nomis database through R.
Stars: ✭ 30 (+87.5%)
Mutual labels:  r-package, peer-reviewed
oai
OAI-PMH R client
Stars: ✭ 13 (-18.75%)
Mutual labels:  r-package, peer-reviewed
cyphr
Humane encryption
Stars: ✭ 91 (+468.75%)
Mutual labels:  r-package, peer-reviewed
opencage
🌐 R package for the OpenCage API -- both forward and reverse geocoding 🌐
Stars: ✭ 82 (+412.5%)
Mutual labels:  r-package, peer-reviewed
riem
✈️ ☀️ R package for accessing ASOS data via the Iowa Environment Mesonet ☁️ ✈️
Stars: ✭ 38 (+137.5%)
Mutual labels:  r-package, peer-reviewed
roadoi
Use Unpaywall with R
Stars: ✭ 60 (+275%)
Mutual labels:  r-package, peer-reviewed
geoparser
⛔ ARCHIVED ⛔ R package for the Geoparser.io API
Stars: ✭ 38 (+137.5%)
Mutual labels:  r-package, peer-reviewed
rdflib
📦 High level wrapper around the redland package for common rdf applications
Stars: ✭ 47 (+193.75%)
Mutual labels:  r-package, peer-reviewed
robotstxt
robots.txt file parsing and checking for R
Stars: ✭ 65 (+306.25%)
Mutual labels:  r-package, peer-reviewed
weathercan
R package for downloading weather data from Environment and Climate Change Canada
Stars: ✭ 83 (+418.75%)
Mutual labels:  r-package, peer-reviewed
ropenaq
⛔ ARCHIVED ⛔ Accesses Air Quality Data from the Open Data Platform OpenAQ
Stars: ✭ 69 (+331.25%)
Mutual labels:  r-package, peer-reviewed
phsmethods
An R package to standardise methods used in Public Health Scotland (https://public-health-scotland.github.io/phsmethods/)
Stars: ✭ 43 (+168.75%)
Mutual labels:  r-package

rrlite

Build Status Coverage Status

R interface to rlite. rlite is a "self-contained, serverless, zero-configuration, transactional redis-compatible database engine. rlite is to Redis what SQLite is to SQL. And Redis is a data structures server; at the simplest level it can be used as a key-value store, but it can store other data types (hashes, lists, sets and more).

This package is designed to follow exactly the same interface as redux.

Usage

See redux for more details.

The main function here is rrlite::hirlite that creates a redis_api object that exposes the full Redis API.

con <- rrlite::hirlite()
con
## <redis_api>
##   Redis commands:
##     APPEND: function
##     AUTH: function
##     BGREWRITEAOF: function
##     BGSAVE: function
##     ...
##     ZSCORE: function
##     ZUNIONSTORE: function
##   Other public methods:
##     clone: function
##     command: function
##     config: function
##     initialize: function
##     pipeline: function
##     reconnect: function
##     subscribe: function
##     type: function

This object has all the same methods as the corresponding object created by redux::hiredis() but operating on a rlite database. The default database uses the magic path :memory: but persistent on-disk storage is possible (see ?rlite_config).

All the usual Redis-type things work:

con$SET("mykey", "mydata")
## [Redis: OK]
con$GET("mykey")
## [1] "mydata"

As with redux, commands are vectorised:

con$MSET(c("a", "b", "c"), c(1, 2, 3))
## [Redis: OK]
con$MGET(c("a", "b", "c"))
## [[1]]
## [1] "1"
##
## [[2]]
## [1] "2"
##
## [[3]]
## [1] "3"

Approach

This package aims to be a drop-in self-contained replacement for redux without requiring Redis server. Therefore almost the entire package (and tests) is automaticaly generated from redux. The only installed files not generated are:

  • R/hirlite.R (because documentation)
  • src/subscribe.c (just a stub)

Meta

  • Please report any issues or bugs.
  • License: GPL
  • Get citation information for rrlite in R by doing citation(package = 'rrlite')

rofooter

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].