首页 > Python > 翻译redis-natives-py

翻译redis-natives-py

2012年6月11日 发表评论 阅读评论

redis-natives-py

redis-natives-py模块是对redis-py中Redis实体的简单抽象,以将其与python中的数据类型相对应。该模块简洁明了,但是功能强大。它没有采用ORMing或者model-messing,因为这些不是Redis等高性能的k-v存储软件的使用方向。

可以使用的数据类型

  • Primitive* (string)
  • Set*
  • ZSet
  • Dict*
  • List*
  • Sequence

上面列表中的每种数据类型都绑定到它对应的Redis实体。没有缓存。任何改变都会立即更新到数据库中,因此它是线程安全和数据一致的。其中带*的数据类型与其对应的python内置类型几乎有相同的接口。所以可以方便使用它存储数据,而不需要直接连接到数据库。

Features

  • 绑定Redis实例,不缓存数据,数据变化立刻改变数据库
  • 使用工具类支持key namespaces(see RedisNativeFactory and annotations)
  • 大部分数据类型接口与python相同,方便与现有系统集成

FAQ

该模块性能如何?

redis-natives-py中性能是我主要的方向. 我尽量避免使用昂贵的操作,去操作高效的Redis,尽可能的减小内存消耗.

例子:数据类型

redis-natives-py是基于redis-py的,假定你已经安装redis-py,并且可以正常运行. 在下面的例子中我会忽略以下定义.

from redis import Redis
import redis_natives_py as rnatives 
# Our Redis client instance
rClient = Redis()
数据类型都具有的功能

所有的数据类型都有下面的方法/属性,让你直接在对象上执行Redis任务

  • Getter/setter property called key. Changes will be reflected to the store immediately.
  • type() return the Redis-internal datatype name of the associated value
  • move(redisClient/id) moves the key into the database currently selected in the given Redis instance or described by integer id
  • rename(newKey, overwrite=True) renames the current entity-key to newKey overwriting an exisiting key with the same name if overwrite is True
  • Property expiration yields the remaining time in seconds until the entity will be destroyed when it was marked as volatile before
  • let_expire(nSecs) marks the entity as volatile and determines that it will be automatically destroyed in nSecs
  • let_expire_at(timestamp) same as line above, but this time it will be destroyed at given time timestamp

后面的等明白了再翻吧,呵呵,半吊子英语+Google翻译太纠结了…

除非注明,文章为IT热血青年原创,欢迎转载!转载请注明本文地址,谢谢。
本文地址:http://blog.itblood.com/redis-natives-py-chinese.html

分类: Python 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.