上海交通大学高级数据库课件陆朝俊ed6ch24课案
44页1、24.1 第第2424章章 高级应用开发高级应用开发 n性能调优 n性能测试基准 n应用系统开发的其他问题 n标准化 24.2 性能调优性能调优 n系统性能调优: 调整各种参数和设计选项,以 改善针对特定应用的性能. l模式和事务设计 l数据库参数 l硬件 n执行性能调优的人 l应用开发者 lDBA 24.3 改善面向集合特性改善面向集合特性 n应用程序经常频繁执行一个查询Q(p),每次执行时参数p的 值不同. l每次调用的开销:服务器上的处理开销+与服务器的通信开销 l将多个查询合并为一个查询 n例如: 应用程序对各系循环, 每次循环执行如下SQL查询 select sum(salary) from instructor where dept_name = ? l如果表instructor在dept_name上没有聚簇索引,则每次执行都导致 表扫描 l即使有索引, 对每个系名都需要一次随机I/O操作 24.4 改善面向集合特性改善面向集合特性( (续续) ) n相反, 执行如下单一查询可获得各系薪酬总额: select dept_name, sum(salary) from inst
2、ructor group by dept_name l一遍扫描instructor表, 避免为每个系查询时导致的随机I/O l利用一轮通信即可将结果取到客户端 l客户端程序即可遍查该结果中各系的薪酬汇总 n在许多情况下, 将多个SQL查询合并成单个查询可以大幅 降低执行代价 l例如: instructor表很大, 系很多 24.5 改善面向集合特性改善面向集合特性( (续续) ) nJDBC API提供称为批量更新批量更新功能,可以用一轮与 数据库的通信执行一批插入操作. l没有此功能时, 每插入一条记录都需要一轮通信 nC/S系统中常用的另一种技术:存储过程. l存储在DB中的查询,预编译 l客户端可直接调用,无需编译 l通信开销极小:只需传送调用命令而非整个查询 n改写包含嵌套子查询的复杂查询 l许多查询优化器尚不能很好地优化这种查询 l去相关性: 查询优化器或手动改写 24.6 批量加载批量加载 n批量加载: 将大量数据加载到DB中 n如果通过分开的insert语句来执行插入: 性能很差 l每次解析语句的开销 l更重要的是: 为每条插入元组进行完整性约束检查和更 新索引的代价 n
3、如果批量插入: l完整性约束检查和索引更新即可以更加面向集合的方 式来执行 24.7 批量导入批量导入/ /导出导出 n多数数据库系统都有批量导入/导出实用程序 n批量导入 l从文件读数据, 并以高效方式执行完整性约束检查和索 引维护 l数据文件格式: CSV, XML, 或者依赖于数据库系统的二 进制格式等 n批量导出 24.8 批量更新批量更新 n例如 update department set budget = budget + ( select amount from funds_received where funds_received.dept_name = department.dept_name) where exists( select * from funds_received where funds_received.dept_name = department.dept_name); nSQL:2003提供merge完成这类任务. 24.9 瓶颈定位瓶颈定位 n多数系统的性能通常受制于一个或几个组件,称为 瓶颈. l例如一个程序花80% 时间在一个小循环上, 而
4、其他代码 占用20% 时间 4值得对这占用80时间的代码进行改善 n系统调优就是发现瓶颈, 并改善导致瓶颈的系统 组件, 从而去除瓶颈 n消除一个瓶颈常常暴露出另一个 n解决瓶颈问题就是不断去除瓶颈直至平衡 n非瓶颈组件可用便宜的低性能部件替换 24.10 发现瓶颈发现瓶颈 n不同于简单程序, 数据库可建模为排队系统 l事务向数据库系统请求各种服务 4如 CPU, 磁盘I/O, 锁 l每个服务都有一个与之关联的队列 4小事务所花时间多数是在队列中等待服务而非执行代码 n数据库系统中的瓶颈典型地发生在当某个服务具有极高使用率时 l相应地有个很长的队列 4如果请求到达是一致随机分布的, 队列长度随使用率指数增长 l故资源使用率应保持足够低. 4经验规则: 70% 左右的利用率较合适, 避免超过90% 24.11 数据库系统中的队列数据库系统中的队列 24.12 可调参数可调参数 nDBA可在三个层次对数据库系统调优: l硬件:例如增加磁盘或使用RAID, 增加内存, 移 到更快的处理器上. l数据库系统参数:例如缓冲大小, 检查点间隔. 4系统应尽可能自动调优. l高层数据库设计:如模式,
《上海交通大学高级数据库课件陆朝俊ed6ch24课案》由会员我**分享,可在线阅读,更多相关《上海交通大学高级数据库课件陆朝俊ed6ch24课案》请在金锄头文库上搜索。
高三世界地理专题复习总论4天气与气候汇编
云南大学分析化学第五章 酸碱滴定
南京大学 刘金源教授多元新史观与世界史教学
南大门之不夜城
海南大学 食品分析七 2014
东南大学功放电路和直流电源(第29讲)2014
步步高·2015高三物理总复习(江苏专用)【配套课件】:第4章 曲线运动万有引力与航天 第1课时 曲线运动.
必修2:4.1曲线运动 运动的合成与分解【2015《物理复习方略》一轮复习课件沪科版】.
济南大学电工习题答案.
金版学案13-14物理(人教版)选修3-2课件:5.3电感和电容对交变电流的影响.
现代教学媒体.
教案4(火警报警系统).
湖南大学-物理 课程指导八.
语s版六年级下册语文百花园四课件剖析
世纪金榜2018版复习方略物理课件31.
人教新课标二年级语文下册《我不是最弱小的_5》PPT课件.
楼宇自动化 课件 教学PPT 作者 傅海军 第5章.
暨南大学-管理学-第11章-控制.
海南大学 食品分析十二 2014.
北师大八年级数学下册-第2课时-分式的基本性质.
2024-03-21 39页
2024-03-21 41页
2024-03-21 40页
2024-03-21 34页
2024-03-21 33页
2024-03-21 35页
2024-03-21 21页
2024-03-21 45页
2024-03-21 33页
2024-02-20 85页