[发明专利]一种甲骨文系统数据管理方法及其装置无效
申请号: | 200810192907.7 | 申请日: | 2008-12-31 |
公开(公告)号: | CN101452486A | 公开(公告)日: | 2009-06-10 |
发明(设计)人: | 陈皓;郑承满;张树贵;高志慧 | 申请(专利权)人: | 中国建设银行股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州三环专利代理有限公司 | 代理人: | 郝传鑫;潘中毅 |
地址: | 100032*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 甲骨文 系统 数据管理 方法 及其 装置 | ||
技术领域
本发明涉及甲骨文系统(oracle)数据库管理领域,更具体地,本发明涉及在计算机系统中oracle数据管理的方法和装置。
背景技术
在oracle存储过程中,对于数据量较小(通常在2000条记录以下,如代码转换表),但又需要频繁查询的表,通常会成为程序执行效率的瓶颈。例如个人征信系统中上报给人民银行征信中心的报文需要将ODS代码转换为人民银行征信中心代码,针对每个账户(假设有1亿个账户)需要代码转换的属性有30个左右,即,每个月底最少要访问代码对照表30亿次,对这样的问题,通常的做法是使用表关联查询,将需要转换的代码作为关联条件与相应的代码转换表进行关联,从而得到转换后的代码,该技术实现简单,而且oracle等数据库系统也会自动完成表关联查询的优化(例如,oracle系统一般会对关联表的记录先做有条件过滤,然后进行连接条件查询,这样可以使多表查询尽可能的高效)。但由于表关联查询在每次执行之前都需要进行自动优化,以及对小数据量数据查询(如代码转换表中的数据)有频繁的磁盘读操作,致使存储过程执行效率下降。
发明内容
本发明是为了在oracle数据管理过程中,减少读取磁盘次数和提高查询效率,提供一种oracle数据管理方法,本发明还提供一种oracle数据管理装置,用以保证上述方法在实际中实现和应用。
本发明提供的一种甲骨文系统数据管理方法包括如下步骤:
步骤a,在甲骨文系统中创建哈希表,构造所述哈希表的下标结构,并在甲骨文系统中声明所述哈希表为全局变量;
步骤b,在内存中为所述已被声明为全局变量的哈希表划分内存区域,创建所述哈希表的下标,并将所述下标与所述内存区域一一对应;
步骤c,将甲骨文系统中的数据项目存储到所述内存区域;
步骤d,根据查询条件查询所述哈希表的下标;
步骤e,根据查询到的所述哈希表的下标,从与所述下标对应的内存中读取数据项目。
其中,步骤a和b是通过oracle package支持完成,并且所述步骤a是根据所述数据项目的主键构造所述哈希表的下标结构,所述数据项目的主键的长度为所述哈希表下标的长度。
所述数据项目是列表、数组中的一种或其他类似的数据类型。
进一步地,所述步骤e中,当所述哈希表下标对应到的内存区域中数据项目为空时,返回预先设定的数据项目。
进一步地,当查询到的所述哈希表的下标多于一项时,读取第一项对应的内存区域中的数据项目。
进一步地,在所述步骤a之前创建一个视图,所述视图的结构即为所述步骤a中的哈希表的下标结构。
进一步地,在所述步骤a之前创建一个结构体,所述结构体的结构即为所述步骤a中的哈希表的下标结构。
本发明提供的一种甲骨文系统数据管理装置,包括:
创建单元,用于在甲骨文系统中创建哈希表,构造所述哈希表的下标结构,并在甲骨文系统中声明所述哈希表为全局变量;
内存划分对应单元,用于在内存中为已被所述创建单元声明为全局变量的所述哈希表划分内存区域,创建所述哈希表的下标,并将所述下标并将所述下标与所述内存区域一一对应;
存储单元,用于将甲骨文系统中的数据项目存储到所述内存划分对应单元划分出的所述内存区域;
查询单元,用于根据查询条件查询哈希表的下标;
读取单元,用于根据所述查询单元查询到的所述哈希表的下标,从与所述下标对应的所述内存区域中读取数据项目。
进一步地,所述的oracle数据管理装置,还包括默认数据项目单元,用于当所述查询单元查询到的所述哈希表下标对应到的内存区域中数据项目为空时,返回预先设定的数据项目。
进一步地,所述的oracle数据管理装置,还包括预处理单元,用于创建一个视图或结构体,所述视图或结构体的结构即为所述哈希表的下标结构。
采用本发明提供的技术方案,通过oracle package包将数据声明为全局变量,从而将数据从存储设备中存储在内存中,使得后续的数据项目查询完全在内存中进行,这样就避免了反复地查询存储设备中的数据,因为内存查询的速度要比在存储设备中查询要快很多,且避免了数据传输到内存的时间,因而大幅度的降低了程序的响应时间。并且,本发明的所提供的技术方案,采用了哈希表(hash table)查找的方式,通过给定数据查找数据下标,从而直接读取数据,避免了逐项对比查找,因而也大大提高了查询的效率。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国建设银行股份有限公司,未经中国建设银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810192907.7/2.html,转载请声明来源钻瓜专利网。