由redis支持的排序索引。

sandsnake的Python项目详细描述


https://secure.travis-ci.org/numan/sandsnake.png?branch=master

导言

Sandsnake是用python实现的排序索引,使用redis作为后端。 它最初被实现为用于Sunspear的索引系统。

要求

必需

需求应该由setuptools处理,但如果不是,则需要以下python包:

  • Nydus
  • redis
  • DateUtil

可选

  • 雇工

Sandsnake.创建Sandsnake后端

创建允许存储和检索索引的sandsnake对象:

>>> from sandsnake import create_sandsnake_backend
>>>
>>> sandsnake = create_sandsnake_backend({
>>>     'backend': 'sandsnake.backends.redis.Redis',
>>>     'settings': {
>>>         'defaults': {
>>>             'host': 'localhost',
>>>             'port': 6379,
>>>             'db': 0,
>>>         },
>>>         'hosts': [{'db': 0}, {'db': 1}, {'host': 'redis.example.org'}]
>>>     },
>>> })

在内部,Redissandsnake后端使用nydus在redis实例集群上分发索引数据。

有两个必需的参数:

  • backend:后端类的完整路径,该类应扩展sandsnake.backends.base.base sandsnake backend
  • settings:初始化后端所需的设置。对于Redis后端,这是redis集群中主机的列表。

示例用法

redis

from sandsnake import create_sandsnake_backend
import datetime

sandsnake = create_sandsnake_backend({
    "backend": "sandsnake.backends.redis.Redis",
    "settings": {
        "hosts": [{"db": 5}]
    },
})

#add a value of "abc" to the ``index`` for an ``object``
sandsnake.add("user:1", "homefeed", "abc")
sandsnake.add("user:1", ["homefeed", "recogfeed"], "abc")

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Selenium运行ChromeDriver而不修改路径   java软件包sun。网www.protocol。https不可见   java AEM中的哪个类实现了javax。servlet。请求调度器接口?   在java/scala中读取zip或7z文件时的性能问题   java将一个文件写入另一个二进制文件   java在类本身中创建实例   Java中C#Action()委托的等价物?   java如何在任何类中使用@Context或类似工具获取ServletRequest?   重构(java)应该/如何重构此代码?   hibernate中的java TransientObject异常   gwt使用Java在CouchDB 2.0 fauxton中创建文档   xml错误Java Jersey:NotAuthorizedException:HTTP 401未经授权   java heroku错误:无法找到或加载主类   java从CAS 5.0检索已发布的属性。Spring Security中的x 3.2.5