重新思考数据库python库
doublethink的Python项目详细描述
双重思考
重新思考数据库python库。提供连接管理器和orm框架 (对象关系映射,有时对于nosql数据库称为odm或om)。
连接管理器
三个主要目的:
- 数据库服务器之间的循环连接
- 确保连接在适当的时间关闭
- 失败时重试可重试的查询
当前不是连接池,因为它不保持任何连接打开。 应该可以在不更改api的情况下实现连接池。 然而,测试表明,从 连接池。
用法示例
import doublethink
rr = doublethink.Rethinker(['db0.foo.com', 'db0.foo.com:38015', 'db1.foo.com'], 'my_db')
rr.table('mytable').insert({'foo':'bar','baz':2}).run()
for result in rr.table('mytable'):
print("result={}".format(result))
orm
简单而强大的orm系统。不强制实施架构。
用法示例
import doublethink
rr = doublethink.Rethinker(['db0.foo.com', 'db0.foo.com:38015', 'db1.foo.com'], 'my_db')
class MyTable(doublethink.Document):
pass
MyTable.table_create(rr)
doc1 = MyTable(rr, {'animal': 'elephant', 'size': 'large'})
doc1.save()
doc1_copy = MyTable.load(rr, doc1.id)
doc1_copy.food = 'bread'
doc1_copy.save()
doc1.first_name = 'Frankworth'
doc1.save()
doc1.refresh()
服务注册
现在还有一个serviceregistry类,一个轻量级的服务解决方案 发现分布式服务。在中维护服务信息和状态 一个称为“服务”的重新思考数据库表。