cihanb / rejson

ReJSON - a JSON data type for Redis

Home Page:https://redislabsmodules.github.io/rejson

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CircleCI

ReJSON - a JSON data type for Redis

ReJSON is a Redis module that implements ECMA-404 The JSON Data Interchange Standard as a native data type. It allows storing, updating and fetching JSON values from Redis keys (documents).

Primary features:

  • Full support of the JSON standard
  • JSONPath-like syntax for selecting element inside documents
  • Documents are stored as binary data in a tree structure, allowing fast access to sub-elements
  • Typed atomic operations for all JSON values types

Quickstart

  1. Launch ReJSON with Docker
  2. Use ReJSON from any Redis client, e.g.:

ReJSON with redis-cli

Documentation

Read the docs at https://redislabsmodules.github.io/rejson

Current limitations and known issues

  • Searching for object keys is O(N)
  • Containers are not scaled down after deleting items (i.e. free memory isn't reclaimed)
  • Numbers are stored using 64-bit integers or doubles, and out of range values are not accepted

Acknowledgements

ReJSON is developed with <3 at Redis Labs.

ReJSON is made possible only because of the existance of these amazing open source projects:

License

AGPLv3 - see LICENSE

About

ReJSON - a JSON data type for Redis

https://redislabsmodules.github.io/rejson

License:GNU Affero General Public License v3.0


Languages

Language:C 80.1%Language:Python 16.5%Language:Makefile 1.9%Language:Lua 1.0%Language:Shell 0.5%