Home - meetbill/redis-orm GitHub Wiki

redis-orm

1 特色

  • 轻量级:代码很小,模型和收集方法努力以 Redis 的方式最自然地工作。
  • tag 支持:使用 tag 标记 model,以有效地检索集合的子集。
  • 过期支持:创建带有 expire 参数的 model,以确保在该时间段内将其销毁。

2 使用手册

2.1 手册

能够在 “运行时” 创建实例属性,是 python 类的优秀特性之一

2.2 pipeline 与 transation

pipeline 不仅仅用来批量的提交命令,还用来实现事务 transation。

使用 transaction 与否不同之处在与创建 pipeline 实例的时候,transaction 是否打开,默认是打开的。即
(1) r.pipeline(transaction=False) 使用的 pipeline 功能
(2) r.pipeline() 使用的事务功能,python 中 redis 事务是通过 pipeline 的封装实现的

2.3 概念对比

SQL 概念 MongoDB 概念 Redis orm 概念 解释/说明
database database 数据库
table collection 数据库表/集合
row document document 数据记录行/文档
column field 数据字段/域
index index 索引
table joins 表连接,MongoDB 不支持
primary key primary key 主键,MongoDB 自动将 _id 字段设置为主键

3 深入了解 redis-orm

3.1 使用的 key

通过 redisorm 写入数据和 redisorm 对 redis 写入的数据对比

document 数据记录行/文档

string: redisorm:{model_name}:object:{xxxxxxxxxx}

记录 field 索引

set,redisorm:{model_name}:tags:{field_name:field_value}

4 传送门

5 todo

https://github.com/meetbill/redis-orm/wiki/todo