2025年9月25日: PostgreSQL 18 发布!

Proboscis [Python] 0.1 发布

发布于 2005-09-26

这是 Proboscis[1] 的首次发布公告,Proboscis 是一个基于 PQueue 的 Green

Trunk 实现。它是一个用于 Python 的 PostgreSQL 驱动/接口。又一个

吗?是的,也不是。Proboscis 不是基于 libpq 的,它也不主要

提供 DB-API 2.0 接口(0.2 版本可能会为 DB-API 2.0 用户提供一个层)。

发布新闻项可以在这里找到[2]。

这个前端的特性,排名不分先后,包括:

* 纯 Python

* Green Trunk 接口

* 线程安全

* Windows 支持

* 基本 SSL 支持

* COPY TO/FROM 支持

* 协议级别的准备语句和游标(Portals)

* 按需的游标活动

* query 和 procedure 方法(参见 Green Trunk 文档)

* bytea 透明化(提示:使用参数时无需转义)

* Wire Tap(异步通知)

* 自动客户端编码/解码

在此下载[3]。

纯 Python?那一定很慢,对吧?首先,有一个可选的 C

扩展模块,可以在一个敏感的区域提供优化,所以它不一定

是纯 Python。随着 1.0 版本的临近,其他敏感区域也可能会

得到优化。

那么它到底有多慢或多快?以下是一些简单的测试

(服务器和客户端在同一台机器上)

Copying,

COPY FROM 摘要,

复制的元组数:50000

复制的字节数:2882981

时长:2.186987

平均元组大小(字节):57.000000

每秒平均 KB:1287.159045

每秒平均元组数:22862.505244

COPY TO 摘要,

复制的元组数:50000

时长:2.299819

每秒平均 KB:1224.009372

每秒平均元组数:21740.841414

(警告:没有 C 扩展模块,COPY TO 的 TPS 将减半)

Querying,

INSERT 摘要,

插入的元组数:1000

总时间:1.903957

每秒平均元组数:525.221976

(注意:批量 INSERT 在 0.2 版本中可能会快 2-3 倍)

SELECT 摘要,

循环次数:51

读取的元组数:1000

循环耗时:0.323199

读取元组耗时:0.322262

循环开销:0.000937

每秒平均元组数:3103.064739

(警告:没有 C 扩展模块,SELECT 将损失 1000 TPS)

虽然这些速度在实际应用中不太可能达到,但这确实给了

人们一个关于这个接口处理简单数据能力的初步印象。

要最快上手,请参阅快速入门页面的前端部分[4]。

获取更多帮助,请注册并向邮件列表提问[5]。

邮件列表[5]。

[1] http://python.projects.postgresql.org/project/fe.html

[2] http://pgfoundry.org/forum/forum.php?forum_id=522

[3] http://pgfoundry.org/frs/?group_id=1000094&release_id=315

[4] http://python.projects.postgresql.org/quick.html

[5] http://lists.pgfoundry.org/mailman/listinfo/python-general

本文已从先前版本的 PostgreSQL 网站迁移。对于迁移过程中可能出现的任何格式问题,我们深表歉意。