Skip to main content

用于 keyvaluehosting.com 的 Python 客户端

项目描述

Riak 的 Python 客户端
=======================

构建状态
============

[![构建状态](https:// /travis-ci.org/basho/riak-python-client.svg?branch=master)](https://travis-ci.org/basho/riak-python-client)

文档
======== =====

[Riak Python 客户端库的文档](http://basho.github.io/riak-python-client/index.html) 可用[这里](http://basho.github.io /riak-python-client/index.html)。

Riak 的文档可在 [此处](http://docs.basho.com/riak/latest) 获得。

存储库克隆
===================

*注意*:请使用 `git clone` 的 `--recursive` 参数克隆此存储库,或使用 `git submodule update --init` 跟随克隆。此存储库使用两个子模块。

安装
=======

推荐用于此客户端的 Python 版本是 Python `2.7.8`(或更高版本,`2016-06-21` 的`2.7.11`)、`3.3.x` 、“3.4.x”和“3.5.x”。每个系列的最新版本应该是首选。应谨慎使用较旧版本的 Python `2.7.X` 和 `3.X` 系列,因为它们未包含在集成测试中。

Riak TS (Timeseries)
===================

您必须使用 `2.7.11`、`3.4.4` 或 `3.5.1` 版本(或更高版本的版本系列)。否则你会受到 [this Python bug](https://bugs.python.org/issue23517) 的影响。

从源头
-----------

```sh
python setup.py install
```

Python包`setuptools`和`protobuf`有额外的依赖。

从 PyPI
---------

官方包被签名并发布到 [PyPI](https://pypi.python.org/pypi/riak)。

要直接从 [PyPI](https://pypi.python.org/pypi/riak) 安装,您可以使用 `pip`。

```sh
pip install riak
```

测试
=======

要设置默认测试配置,构建一个测试 Riak 节点(从 `riak` 目录)

```sh
make rel
```

参见 [基本集群设置](http://docs.basho.com/riak/latest/ops/building/basic-cluster-setup/) 了解更多详情。

对于所有简单的默认值,将 `RIAK_DIR` 环境变量设置为 Riak 安装的根目录。然后从 `riak-python-client` 目录

```sh
make -C buildbot preconfigure
```

使用 Riak 目录中的 `riak start` 启动你的 Riak 节点,然后

```sh
make -C buildbot configure
make - C buildbot test
```

这将运行测试套件两次:一次启用安全性,一次未启用。

测试中与 Riak 的连接
----------------------------

如果您的 Riak 服务器未在 localhost 上运行,或者您从源代码构建了 Riak devrel,请使用环境变量 `RIAK_TEST_HOST`、`RIAK_TEST_HTTP_PORT` 和 `RIAK_TEST_PB_PORT` 来指定查找 Riak 服务器的位置。`RIAK_TEST_PROTOCOL` 指定要测试的协议。可以是“pbc”或“http”。

一些连接测试需要未使用的端口号。如果您的测试系统上正在使用端口 1023 和 1022,请将环境变量 `DUMMY_HTTP_PORT` 和 `DUMMY_PB_PORT` 设置为未使用的端口号。

测试搜索
--------------

如果您没有启用 [Riak Search](http://docs.basho.com/riak/latest/dev/using/search/),您可以将 `RUN_SEARCH` 环境变量设置为 0 跳过这些测试。

如果您没有启用 [Search 2.0](https://github.com/basho/yokozuna),您可以将 `RUN_YZ` 环境变量设置为 0 以跳过这些测试。

测试桶类型 (Riak 2+)
------------------------------

要测试桶类型,您必须运行`create_bucket_types ` setup 命令,它将创建用于测试的存储桶类型,或者您自己手动创建它们。它可以像这样运行(用你的 Riak 安装的根目录替换 `$RIAK`)

```sh
./setup.py create_bucket_types --riak-admin=$RIAK/bin/riak-admin
```

你可以交替将这些行添加到 `setup.cfg`

```ini
[create_bucket_types]
riak-admin=/Users/sean/dev/riak/rel/riak/bin/riak-admin
```

要跳过存储桶类型测试,请将“RUN_BTYPES”环境变量设置为“0”。

测试数据类型 (Riak 2+)
----------------

要测试数据类型,您必须设置存储桶类型(见上文.)

要跳过数据类型测试,请将 `RUN_DATATYPES` 环境变量设置为 `0`。

测试时间序列 (Riak 2.1+)
------------------------------

要测试时间序列数据,您必须运行 `setup_timeseries` 命令,这将创建用于测试的存储桶类型,或者您自己手动创建它们。它可以像这样运行(用你的 Riak 安装的根目录替换 `$RIAK`)

```sh
./setup.py setup_timeseries --riak-admin=$RIAK/bin/riak-admin
```

你可以交替将这些行添加到 `setup.cfg`

```sh
[setup_timeseries] riak
-admin=/Users/sean/dev/riak/rel/riak/bin/riak-admin
```

要启用时间序列测试,请将 `RUN_TIMESERIES` 环境变量设置为 `1`。

测试二级索引
-------------

测试 [二级索引](http://docs.basho.com/riak/latest/dev /using/2i/),`RUN_INDEXES` 环境变量必须设置为 1(或 0 以跳过它们。)

测试安全性(Riak 2+)
----------------- ---------

确保主机名 `riak-test` 解析为您的 Riak 主机(很可能是 `localhost`)。这样 SSL 主机验证才能成功。

默认情况下,Riak 上未启用 [Security](http://docs.basho.com/riak/latest/ops/running/authz/)。一旦在 `riak.conf` 文件中配置了 `security = on`,就可以使用 `riak-admin` 启用它。

运行测试

```sh
RUN_SECURITY=1 RIAK_TEST_HTTP_PORT=18098 python setup.py test
```

贡献者
--------------------------

* Andrew Thompson
* Andy Gross
* Armon Dadgar
* Brett Hazen
* Brett Hoerner
* Brian Roach
* Bryan Fink
* Daniel Lindsley
* Daniel Néri
* Daniel Reverri
* [Dan Root](https://github.com/daroot)
* [David Basden] (https://github.com/dbasden)
* [大卫德拉苏斯](https://github.com/linkdd)
* David Koblas
* Dmitry Rozhkov
* Eric Florenzano
* Eric Moritz
* Filip de Waard
* Gilles Devaux
* Greg Nelson
* Gregory Burd
* Greg Stein
* Ian Plosker
* Jayson Baird
* Jeffrey Massung
* Jon Meredith
* Josip Lisec
* Justin Sheehy
* Kevin Smith
* [Luke Bakken](https://github.com/lukebakken)
* Mark Erdmann
* Mark Phillips
* Mathias Meyer
* Matt Heitzenroder
* [Matt Lohier](https://github.com/aquam8)
* Mikhail Sobolev
* Reid Draper
*罗素布朗
* 生锈的克洛普豪斯
* 生锈的克洛普豪斯
* 斯科特 Lystig Fritchie
* Sean Cribbs
* Shuhao Wu
* Silas Sewell
* Socrates Lee
* Soren Hansen
* Sreejith Kesavan
* Timothée Peignier
* [Vitaly Shestovskiy](https://github.com/lamp0chka)
* William Kral
* [Yasser Souri](https:// github.com/yassersouri)

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

kvhosting-1.0.4.tar.gz (154.3 kB 查看哈希

已上传 source