一个用于python的nosql db库
pynosql的Python项目详细描述
python的pynosql库
摘要
pynosql是一个简单的库,它包装了两个流行的nosql数据库dynamodb mongodb,并提供了模型的概念 用于维护、扩展和减少存储在nosql表中的数据结构。扩展模型。模型并传递给 dynamo操作可以从默认值、添加/删除元素以及使用dynamodb简化boto3的使用中获益。
版本
0.0.1-支持dynamodb中的基本crud操作 0.0.2-支持使用get put对模型进行基本更新 0.0.3-支持在单个记录上未找到,对多个记录支持空列表
入门
实例化客户端并传递给所需的提供程序:
from pynosql.credentials.aws import AWSCredentials from pynosql.clients.aws import AWSClient from pynosql.providers.dynamo import DynamoDBProvider credentials = AWSCredentials( 'AKIAIOSFODNN7EXAMPLE', 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY' ) dynamo = DynamoDBProvider( AWSClient(self.credentials, 'us-west-2') )
扩展base.model.model以创建要存储在 您的NoSQL数据库:
from pynosql.base.model import Model class TestModel(Model): BASE = { 'test1': None, 'test2': None, 'test3': None, 'test4': None } def __init__(self): super(TestModel, self).__init__(self.BASE)
通过适当的调用将模型传递给dynamodb:
key = { 'test1': 'value1', 'test2': 'value2' } response = dynamo.get_record(TestModel(), 'TestTable', Key=key)
要将所有结果分页到模型中,只需继续传递模型 实例到dynamodb调用中。新记录将附加到 在模型中列出。