Skip to main content

A loose framework of kick-ass redis patterns

Project description

This project aims to create a repository of useful python libraries built on top of redis (and using each other), to automate data modeling with Redis.

Redis is relatively low level, and while it is simple to start using, getting a good knowledge of how to model problems with it in an efficient way can be tricky. So I’ve created this project to wrap common use cases, into a loose framework of redis based solutions for real world problems.

Components:

1. Object Store

a fast yet simple ORM (well, OM actually) that automates creation, indexing and searching for complex objects using redis.

Indexes include: simple string index, numeric index that supports sorting and ranges, simplistic full text index, and a unique key.

2. Bitmap Counter

efficient unique value counter (to be used mostly as a unique users counter) with time slots, making use of redis bitmaps.

It makes use of new redis-2.6 commands BITCOUNT and BITOP, so it will not function on redis-2.4.

3. LuaCall

A convenience wrapper that allows you to edit, precache and call Lua scripts available in redis-2.6, as if they were native python functions.

4. Id Generator

Used in the object store, this can also be used standalone, as a centralized unique, incremental id generator using redis. To optimize performance, it reserves in local memory many ids when accessing redis, which can be tuned.

5. Redis Unit

A unit-test like set of assertions about redis data to be used to validate the data inside a redis database.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kickass_redis-0.1.5.tar.gz (14.6 kB view details)

Uploaded Source

File details

Details for the file kickass_redis-0.1.5.tar.gz.

File metadata

File hashes

Hashes for kickass_redis-0.1.5.tar.gz
Algorithm Hash digest
SHA256 b31eee1814f4529a6ac9f2aee901579a0b08308c191a884d9aeb802e5b312747
MD5 e4438f667fc559fb1f1b36961bc2eeb3
BLAKE2b-256 7c227352281c60fd20206c9a5972afab2ae999918d86382d541212b269fca9a5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page