Delphi,PGDac vs Zeos,Fetch,Lookup?

时间:2011-01-17 07:48:21

标签: performance delphi postgresql lookup fetch

我用Zeos测试知道:ZTable是否使用了fetch技术?

将来我们可以将较小的系统迁移到PGSQL,现在使用“Table”组件(作为BDE,但它有一个类似SQL的服务器)。

这些表使用真实游标,带有N记录的“窗口”,因此查找非常快,因为定位/查找是在服务器上启动的,并且只刷新这些N条记录,无论查找中有多少条记录表

我知道PGSQL使用fetch技术,我用一个表(id int,name varchar(100))和100万条记录测试它。 (我也尝试使用mysql)。适配器是Zeos。

ID,秒查找,在客户端上以字节为单位分配内存。

MySQL
500000  2,761   113 196 344
1000000 3,214   225 471 232
313800  0,437   225 471 232
328066  0,468   225 471 232
276374  0,390   225 471 232
905984  1,264   225 471 232
260253  0,359   225 471 232

PGSQL
500000  3,042   113 188 184
1000000 3,744   225 463 064
313800  0,436   225 463 064
328066  0,452   225 463 064
276374  0,375   225 463 064
905984  1,295   225 463 064
260253  0,359   225 463 064
142023  0,203   225 463 064

正如您在本地获取记录一样,这会导致225 MB的使用,并且搜索速度会慢一点,基于我们必须找到的记录。

我想问更多的事情:

一个。) PGD​​AC是否有一些技术可以使用查找而无需支付带内存和秒的内容?

湾) 或者PG ODBC驱动程序可以帮助解决ADO这个问题吗? (据我所知,ADO可以使用服务器端游标)?

下进行。) 有没有人查询表和性能的经验?这个关键问题还是不是? (也有客户端内存使用)。

d。) 如果没有机会避免使用查找来获取地狱,我们能做什么? 服务器端连接,以及查找字段更改的唯一代码,没有真正的查找?

感谢您的帮助:    DD

1 个答案:

答案 0 :(得分:1)

开发人员回答我:

  

你好,

     

现在PgDAC无法使用服务器端游标   如你所愿。我们将调查   添加此功能的可能性   下一个版本/版本之一   PgDAC。

     

最好的问候,Alex Devart团队   www.devart.com

所以现在没有SS光标。

感谢:   DD