重新思考数据库python库

doublethink的Python项目详细描述


https://travis-ci.org/internetarchive/doublethink.svg?branch=master

双重思考

重新思考数据库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类,一个轻量级的服务解决方案 发现分布式服务。在中维护服务信息和状态 一个称为“服务”的重新思考数据库表。

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

推荐PyPI第三方库


热门话题
JavaPax考试:从非标准Maven存储库解析Karaf特性存储库(XML文件)   java Spring启动Bean创建异常   java中将ArrayList转换为数组的方法   Android Studio的java Unity插件。   java在CheckStyle中从方法计数中排除getter和setter   HibernateJava。sql。SQLSyntaxErrorException:表/视图“序列”不存在   与命令行程序Java vs C通信   java WebView膨胀异常   java在O(n)java8流中寻找两个列表的交集   java使用Gradle运行单元测试时,最大堆大小在哪里设置?   ssl加载java应用程序(CXF)内的jks文件   CI:Jenkins Git:Simple Java项目:希望在特定时间在脚本上发送消息   java根据位置更改数字   java按数值排序字符串数组   macos java版本“1.6.0_65”是否与java 6模棱两可?   Cassandra中的java时间戳