热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

基于Oracle的数据架构的航空结算系统

欢迎进入Oracle社区论坛,与200万技术人员互动交流进入2012年4月13日,由IT168(ITPUB、IXPUB、ChinaUnix)主办的2012中国数据库技术大会(DTCC)将在北京隆重召开。本次大会上,OCM联盟发起人侯圣文分享了主题为“航空结算系统基于Oracle的数据架构解

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 2012年4月13日,由IT168(ITPUB、IXPUB、ChinaUnix)主办的2012中国数据库技术大会(DTCC)将在北京隆重召开。本次大会上, OCM联盟发起人侯圣文分享了主题为“航空结算系统基于Oracle的数据架构解

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

2012年4月13日,由IT168(ITPUB、IXPUB、ChinaUnix)主办的2012中国数据库技术大会(DTCC)将在北京隆重召开。本次大会上, OCM联盟发起人侯圣文分享了主题为“航空结算系统基于Oracle的数据架构解决方案”的精彩演讲。


航空结算系统提供了航空公司与代理人结算的统一方式,更快捷。3天一结算,达到了世界第一的地位。在这个主题中,侯圣文紧密围绕航空结算系统后台数据库的性能调优工作展开。首先分析了Oracle数据库性能对航空结算系统的影响因素,进而发现了系统架构存在的问题及其他性能瓶颈;然后根据Oracle数据库性能优化方向对系统进行调整和测试;进而总结出一套行之有效的数据库优化步骤和方法。从应用设计角度、操作系统层面以及数据库层面分别对系统性能调优策略进行了分析,找出了产生系统性能瓶颈的原因,最终给出航空结算系统的性能优化实施步骤。

航空计算系统分为两块,航空结算系统后台数据库体系结构结合了OLTP与OLAP类型,原有OLTP和OLAP混合部署的数据库进行分库处理,从数据库的安全性和均衡压力方面,OLTP部分采用了Oracle RAC技术构建,优化了SQL代码、内存使用率、数据访问优化、物理存储优化,提升了系统整体的吞吐量。

谈到数据库的性能评估,常用的一些指标包括系统吞吐量(更大的读写性能)、用户响应时间、数据库命中率、CPU使用情况、内存使用情况、磁盘I/O和数据加载时间。

侯圣文进一步分析了数据库性能评估,从数据库性能评估及影响因素的角度出发,对系统进行了全面地分析,找到了系统存在的主要瓶颈,并确定了优化方向,将原有系统分为OLTP和OLAP两种不同类型的数据库,从各自的优化特点出发给出了有真对性的优化方法和实践。建立有效的监控和预防体系结构,深入研究OLTP和OLAP类型数据库的优化调整方法,规范化数据库设计。

影响数据库性能的因素大致有以下方面:

1、 应用程序设计

2、 应用程序SQL编码(Hint的乱用、CBO优化器模式的选择、适时使用绑定变量)

3、 数据库设计(分清OLTP与OLAP系统,有针对性的优化)

4、 数据安全性和可用性(引入RAC技术,)

5、 内存使用率、数据加载、网络流量

整个航空结算系统中具体的优化实践

1、 应用程序SQL代码优化调整:有效的表设计,引入分区表技术

2、 充分使用CPU资源,使用并行特性完成CTAS、使用并行特性完成索引创建以及有效的应用程序设计。在应用程序的设计角度,指定了SQL编写规范,限制了动态SQL。

在应用程序SQL代码优化调整战略上,严格执行SQL计划,创建索引,在RAC中使用反向索引降低索引块争用,为了提高航空计算系统的效率,我们使用到了函数索引提高复杂计算效率,同时会对碎片索引进行重建操作,从而保证了数据的真实性和有效性。

3、系统设计阶段和开发阶段优化效率最高,尽量设定明确的优化目标、创建最少可重复的测试、记录额自动测试、避免常见的错误。

数据库性能优化是一个系统化循序渐进的过程结合本次成功的优化实践经验,侯圣文最后给出了可供参考的数据库优化步骤和方法。从数据库设计优化上,OLTP数据库适应于那些事务性非常高,以短事务以及小的查询为主的数据,采用Cache技术、B-tree索引技术与绑定变量。OLAP数据库适用于长事务、大查询的数据,采用分区技术和并行技术,两者分开设计和优化。更多精彩内容,请查看专题。



推荐阅读
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • 本文探讨了Android系统中联系人数据库的设计,特别是AbstractContactsProvider类的作用与实现。文章提供了对源代码的详细分析,并解释了该类如何支持跨数据库操作及事务处理。源代码可从官方Android网站下载。 ... [详细]
  • Lua字符串1.字符串常见形式字符串或串(String)是由数字、字母、下划线组成的一串字符。Lua语言中字符串可以使用以下三种方式来表示:•单引号间的一串字符。 ... [详细]
  • 本文详细介绍了在MyBatis框架中如何通过#和$两种方式来传递SQL查询参数。使用#方式可以提高执行效率,而使用$则有助于在复杂SQL语句中更好地查看日志。此外,文章还探讨了不同场景下的参数传递方法,包括实体对象、基本数据类型以及混合参数的使用。 ... [详细]
  • 本文通过一系列实验,探讨了Oracle 11g数据库中密码错误验证延迟特性对用户登录速度的影响。实验旨在验证当某个用户因输入错误密码而触发延迟时,是否会影响其他用户的正常登录速度。 ... [详细]
  • SQL查询与事务管理:深入解析
    本文详细介绍了SQL查询的基本结构和高级特性,包括选择、分组查询以及权限控制等内容,并探讨了事务管理中的并发控制策略,旨在为数据库管理员和开发人员提供实用指导。 ... [详细]
  • PHP 图形函数中实现汉字显示的方法
    本文详细介绍了如何在 PHP 的图形函数中正确显示汉字,包括具体的步骤和注意事项,适合初学者和有一定基础的开发者阅读。 ... [详细]
  • 本文由公众号【数智物语】(ID: decision_engine)发布,关注获取更多干货。文章探讨了从数据收集到清洗、建模及可视化的全过程,介绍了41款实用工具,旨在帮助数据科学家和分析师提升工作效率。 ... [详细]
  • 本文深入探讨了MySQL中的高级特性,包括索引机制、锁的使用及管理、以及如何利用慢查询日志优化性能。适合有一定MySQL基础的读者进一步提升技能。 ... [详细]
  • 将XML数据迁移至Oracle Autonomous Data Warehouse (ADW)
    随着Oracle ADW的推出,数据迁移至ADW成为业界关注的焦点。特别是XML和JSON这类结构化数据的迁移需求日益增长。本文将通过一个实际案例,探讨如何高效地将XML数据迁移至ADW。 ... [详细]
  • 在使用mybatis进行mapper.xml测试的时候发生必须为元素类型“mapper”声明属性“namespace”的错误项目目录结构UserMapper和UserMappe ... [详细]
  • Windows环境下Oracle数据库迁移实践
    本文详细记录了一次在Windows操作系统下将Oracle数据库的控制文件、数据文件及在线日志文件迁移至外部存储的过程,旨在为后续的集群环境部署做好准备。 ... [详细]
  • 面对众多的数据分析工具,如何选择最适合自己的那一个?对于初学者而言,了解并掌握几种核心工具是快速入门的关键。本文将从数据处理的不同阶段出发,推荐三种广泛使用的数据分析工具。 ... [详细]
  • Java连接MySQL数据库的方法及测试示例
    本文详细介绍了如何安装MySQL数据库,并通过Java编程语言实现与MySQL数据库的连接,包括环境搭建、数据库创建以及简单的查询操作。 ... [详细]
author-avatar
书友67997456_296
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有