POSTGRESQL性能测试数据

测试平台:Postgresql 8.3.5 ,DotNet 2.0, Ado.net驱动 1.1, WinXp Sp3, 迅驰 1.8G Hz, 内存 2G 数据插入实验中数据插入的时间包含生成GUID的耗时和更新界面进度条的耗时 查询的时间仅包含读取数据库的时间 测试查询语句: 从表查询: select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "szValue" ilike '%...%' 主表查询: select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "szSoftName" ilike '%...%' 建库语句: CREATE DATABASE testpsql WITH OWNER = postgres ENCODING = 'UTF8'; CREATE TABLE "TST_Sort_T" ( "nSortId" serial NOT NULL,"szSoftName" character varying(255),CONSTRAINT "TST_Sort_SortId_PK" PRIMARY KEY ("nSortId") )WITH (OIDS=FALSE); CREATE INDEX "TST_Sort_SortName_I" ON "TST_Sort_T" USING btree ("szSoftName"); CREATE TABLE "TST_Value_T" ( "nValueId" bigserial NOT NULL,"nSortId" serial NOT NULL,"szValue" character varying(255),CONSTRAINT "TST_Value_ValueId_PK" PRIMARY KEY ("nValueId"),CONSTRAINT "TST_Value_SoftId_FK" FOREIGN KEY ("nSortId") REFERENCES "TST_Sort_T" ("nSortId") MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION )WITH (OIDS=FALSE); CREATE INDEX "TST_Value_Value_I" ON "TST_Value_T" USING btree ("szValue"); 数据插入 ===================================================== 主表记录:0 从表记录:0 主表插入 从表插入 耗时 1000 1000×10 8秒 156毫秒 1000 1000×10 7秒 593毫秒 1000 1000×10 7秒 515毫秒 数据查询: ===================================================== 主表记录:3000 从表记录:30000 查询出的记录数量 查询条件筛选 耗时 2838 从表 218 毫秒 25586 从表 343 毫秒 25800 主表 203 毫秒 220 主表 31 毫秒 数据插入 ===================================================== 主表记录:3000 从表记录:30000 主表插入 从表插入 耗时 10000 10000×10 1分 20秒 328毫秒 10000 10000×10 1分 24秒 109毫秒 10000 10000×10 1分 21秒 828毫秒 数据查询: ===================================================== 主表记录:33000 从表记录:330000 查询出的记录数量 查询条件筛选 耗时 1977 从表 2秒 62 毫秒 282379 从表 4秒 687 毫秒 33323 从表 2秒 312 毫秒 132 从表 1秒 921 毫秒 130 主表 312 毫秒 33200 主表 531 毫秒 282330 主表 4秒 15 毫秒 2410 主表 328 毫秒 数据插入 ===================================================== 主表记录:33000 从表记录:330000 主表插入 从表插入 耗时 100000 100000×10 53分 6秒 390毫秒 100000 100000×10 1小时 49 分 3秒 562毫秒 100000 100000×10 2小时 35分 54秒 281 毫秒 数据查询: ===================================================== 主表记录:333000 从表记录:3330000 查询出的记录数量 查询条件筛选 耗时 18848 从表 20秒 468 毫秒 1124 从表 21秒 671毫秒 0 从表 20秒 375毫秒 32915 从表 20秒 328毫秒 33050 主表 3秒 562 毫秒 130 主表 3秒 265 毫秒 0 主表 1秒 890 毫秒 379750 主表 19秒 859毫秒 数据插入 ===================================================== 主表记录:333000 从表记录:3330000 主表插入 从表插入 耗时 100000 100000×10 2小时 36分 5秒 218 毫秒 (中间在主表中插入 250000,从表 250000X10, 运行中间出错 ) 主表记录:668592 从表记录:6685920 1000 1000×10 1分 17秒 31毫秒 1000 1000×10 1分 26秒 921毫秒 20000 20000×10 33分 16秒 625毫秒 200000 200000*10 6小时 17分 3秒 718 毫秒 200000 200000*10 5小时 59分 19秒 437 毫秒 数据查询: ===================================================== 主表记录:1103574 从表记录:11035740 查询出的记录数量 查询条件筛选 耗时 63033 从表 127093 ms 0 从表 57687 ms 88275 从表 128000 ms 974 从表 66860 ms 1030 主表 10406 ms 0 主表 5610 ms 88480 主表 57921 ms 390 主表 14797 ms 整数索引查询 从表查询: select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" >100 and "nValueId" < 10000 查询总耗时: 641 ms. 检索到 9899 行。 select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" >100 and "nValueId" < 100000 查询总耗时: 72843 ms. 检索到 99899 行。 select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" >100000 and "nValueId" < 110000 查询总耗时: 609 ms. 检索到 9999 行。 select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" >900000 and "nValueId" < 910000 查询总耗时: 1219 ms. 检索到 9999 行。 select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" = 100000 查询总耗时: 0 ms. 检索到 1 行。 select "szSoftName","szValue" from "TST_Sort_T" inner join "TST_Value_T" on "TST_Sort_T"."nSortId"="TST_Value_T"."nSortId" where "nValueId" = 9900000 查询总耗时: 94 ms. 检索到 1 行。 数据索引非常快,无须做主表的数字索引查询 我主要测试的是查询速度,在做数据插入时,晚上开机测试,同时在下载,下载速度越200多K,故对数据库插入应该有些影响。 ~~The END~~ 尹曙光

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果是个PostGreSQL的数据,于是装数据库,但这个也不懂呀,而且本系统用的Oracle,于是得解决迁移转换的问题。 总结下来两个思路。1、PostgresToOracle多金的
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么查看PostgreSQL数据库中所有表”文章能帮助大...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正确。  pg_hba.conf文件在Postgre安装文件目录下的data文件夹中。解决方案1、进入到data目录下,找到pg_hba.conf文件
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本地localhost访问正常,在相同网段的远程机器访问报如下错误
wamp 环境 这个提示就是说你的版本低于10了。 先打印php_info(),查看自己的版本(我这边是已经处理后的,之前的忘记截图了)
psycopg2.OperationalError: SSL SYSCALL error: EOF detected 问题提示:exception psycopg2.OperationalError
项目 postgres 连接不上, 所有连接报错 :psql: FATAL: sorry, too many clients already问题原由程序使用连接未及时释放, 连接一直处于 idle 状态处理方式1、 程序里面未释放的连接, 在使用后及时释放
服务器在同一个数据目录上启动了两个PostgreSQL实例(它已经删除postmaster.pid并使用了新的端口号,因此绕过了这种行为的正常保护措施被绕过),导致PostgreSQL的误操作postgresql 报错 FATAL: the database system is
问题原因:数据库崩溃,内存不足造成 或者 数据已损坏,磁盘故障造成首先介绍一下背景,在测试Deepgreen(Greenplum升级版)数据库时,pgbench并发数设置过多,导致数据库卡死了,在进行连接、重启、关闭时,都报同样
第 11 届 PostgreSQL 中国技术大会于 2022 年 1 月 7 日至 9 日在武汉光谷会展酒店成功举办。作为 PostgreSQL 技术领域的年度盛事,postgreSQL 中文社区旨在搭建开放、合作共享的平台,基于开源,创新驱动,共同探讨数据库行业数字化发展方向和未来新机遇。
即将到来的 PostgreSQL 15 已经确认会增加 MERGE 语句,MERGE 可以在单个语句中实现 INSERT、UPDATE 以及 DELETE 操作。在此之前,我们可以使用 INSERT … ON CONFLICT DO …. 语句代替该功能。
本文介绍了PostgreSQL 访问和操作 MySQL 数据库的外部数据包装器:mysql_fdw。mysql_fdw 提供了读写 MySQL 外部表、连接池、WHERE 条件下推、返回字段下推、预编译语句、JOIN 下推、聚合函数(min、max、sum、avg、count)下推、ORDER BY 下推以及 LIMIT OFFSET 下推等功能。
本文给大家分享了一些 PostgreSQL 实用小技巧。
PostgreSQL 全球开发组于 2021-05-20 发布了 PostgreSQL 14 的第一个 beta 版本。本文介绍了该版本中的主要新特性和增强功能,包括性能、新的 multirange 类型、SQL 语句、管理、复制和恢复、安全以及其他方面。
本文介绍了 PostgreSQL 横向子查询(LATERAL)的语法的作用。SELECT 就像一个循环语句,而 LATERAL 就像是一个嵌套循环语句,对于左侧表中的每行记录执行一次子查询操作。
PostgreSQL 15 增加了大量符合 SQL/JSON 标准的函数,使得 JSON 数据的处理更加简单。
PostgreSQL 支持多个不同级别的灵活加密技术,包括密码加密、字段加密、存储加密、传输加密、认证加密以及应用加密,可以保护数据不因数据库服务器被盗、内部管理员或者不安全的网络传输而导致泄露。
目录1.编译incubator-datasketches-cpp编译datasketches-cpp项目编译datasketches-cpp项目的PythonWrapperforDatasketches2.编译incubator-datasketches-postgresql3.Verifyinginstallationofdatasketches-postgresqlwithatestdatabase4.AdvancedExamplesofdata
连接pg需要指定以下的参数:·主机地址·端口·数据库名·用户·密码 如果没有指定上面的参数的话,pg会从环境变量中寻找以下的变量值:·PGHOST或PGHOSTADDR·PGPORT·PGDATABASE·PGUSER·PGPASSWORD 如果只是指定了前面四个参数,pg会尝试寻找口令文件。
pg库也是常用的数据库之一,有些刚开始接触开发的老师可能不熟,这里简单介绍一下,总体使用方法和mysql类似,所以这里只讲配置方法。这个地方test1是数据库1,test2是数据库2,yml文件一定要主要好格式,建议用properties。MyBaitsSqlSessionFactory配置文件。不同数据源的dao层要放到对应文件夹下。TimedConfig配置文件。文件夹格式,这里直接放贴图。Bd3Config配置文件。下面是数据源的配置文件。