巨量数据一次性快速写入数据库的方法技术

技术编号:3958290 阅读:831 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种巨量数据一次性快速写入数据库的方法,操作步骤如下:当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把数据分组写到各个临时表中,由于是写入多个表,所以能在较短时间内完成,目的表处理单元自动判断计算机负载情况,系统空闲时,执行写入目的表操作,先从临时名称表中读取出来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中,至此,完成操作。

【技术实现步骤摘要】

本专利技术涉及数据库系统应用领域,具体涉及一种巨量数据一次性、快速写入数据库方法。
技术介绍
当前,计算机越来越普及,应用面也越来越广。随着信息系统的广泛应用,由于文 件在冗余度、操作方便性等方面的限制,使用数据库存取数据是一种较为普遍的方式。既然 用数据来存到数据,开发人员永远无法回避的一个问题就是向数据库写入数据。由于数据 库管理系统的性能越来越高,使得存取少量数据的速度较快,但是当瞬间写入巨量数据到 数据库的时候,数据库管理系统还是需要一定的时间来处理,而这时间有时候是用户难以 忍受的。为了解决上述问题,我们提出了一次性、快速写入巨量数据到数据库方法。
技术实现思路
本专利技术的目的是提供一种。本专利技术的目的是按以下方式实现的,支持方法的系统结构包括临时表生成和处 理单元,临时表和目的表处理单元,其中临时表生成和处理单元是核心,根据写入的数据量,动态生成临时表,并把数据写 入到生成的临时表中;临时表是暂时存放写入数据的中间体;目的表处理单元判断计算机负载情况,负载较低时,从临时表中取得数据,写入到 目的表中,具体操作步骤如下当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写 入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把 数据分组写到各个临时表中,由于是写入多个表,所以能在较短时间内完成,目的表处理单 元自动判断计算机负载情况,系统空闲时,执行写入目的表操作,先从临时名称表中读取出 来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中,至 此,完成操作。临时表生成和处理单元根据数据量动态生成的,临时表的个数由写入数据量决定 的,临时表的表名会单独存在临时名称表中。目的表处理单元自动判断计算机负载情况,系统空闲时执行,执行完成后,删除所 有临时表,清空临时名称表。本专利技术的优异效果是解决大量数据一次性写入数据库时速度较慢的问题,通过 动态生成多个临时表,达到加快数据写入速度,进而实现快速写入。附图说明附图1为现有技术的写入大量数据的数据流图;附图2为基于动态临时表的一次性、快速写入巨量数据到数据库的数据流图。具体实施例方式参照说明书附图对本专利技术的方法作以下详细地说明。下面参照附图2,对本专利技术的内容以一个具体实例来描述实现这一方法的过程。正如
技术实现思路
中所描述的,本专利技术的体系结构主要包括临时表生成和处理单元, 临时表,目的表处理单元。其中临时表生成和处理单元是该方法的核心,根据写入的数据量,动态生成临时表,并 把数据写入到生成的临时表中。临时表是此方法中的一个中间体,暂时存入写入的数据。目的表处理单元判断系统负载情况,系统空闲时,从临时表中取得数据,写入到目 的表中。一次性、快速写入巨量数据到数据库中的实现方式或操作步骤描述如下当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写 入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把 数据分组写到各个临时表中。由于是写入多个表,所以能在较短时间内完成。目的表处理 单元自动判断计算机负载情况,系统空闲时,执行写入目的表操作。先从临时名称表中读取 出来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中, 至此,完成操作。权利要求,其特征在于,支持方法的系统结构包括临时表生成和处理单元,临时表和目的表处理单元,其中临时表生成和处理单元是核心,根据写入的数据量,动态生成临时表,并把数据写入到生成的临时表中;临时表是暂时存放写入数据的中间体;目的表处理单元判断计算机负载情况,负载较低时,从临时表中取得数据,写入到目的表中,具体步骤如下当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把数据分组写到各个临时表中,由于是写入多个表,所以能在较短时间内完成,目的表处理单元自动判断计算机负载情况,系统空闲时,执行写入目的表操作,先从临时名称表中读取出来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中,至此,完成操作。2.根据权利要求1所述的方法,其特征在于临时表生成和处理单元根据数据量动态 生成的,临时表的个数由写入数据量决定的,临时表的表名会单独存在临时名称表中。3.根据权利要求1所述的方法,其特征在于目的表处理单元自动判断计算机负载情 况,系统空闲时执行,执行完成后,删除所有临时表,清空临时名称表。全文摘要本专利技术提供一种,操作步骤如下当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把数据分组写到各个临时表中,由于是写入多个表,所以能在较短时间内完成,目的表处理单元自动判断计算机负载情况,系统空闲时,执行写入目的表操作,先从临时名称表中读取出来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中,至此,完成操作。文档编号G06F17/30GK101799832SQ20101013663公开日2010年8月11日 申请日期2010年3月31日 优先权日2010年3月31日专利技术者王理想 申请人:山东高效能服务器和存储研究院 本文档来自技高网
...

【技术保护点】
巨量数据一次性快速写入数据库的方法,其特征在于,支持方法的系统结构包括:临时表生成和处理单元,临时表和目的表处理单元,其中:  临时表生成和处理单元是核心,根据写入的数据量,动态生成临时表,并把数据写入到生成的临时表中;  临时表是暂时存放写入数据的中间体;  目的表处理单元判断计算机负载情况,负载较低时,从临时表中取得数据,写入到目的表中,具体步骤如下:  当巨量数据要写入数据库中的目的表时,先通过临时表生成和处理单元,根据写入的数据量,先动态生成多个临时表,并且把表名写到临时名称表中,然后启动多个线程把数据分组写到各个临时表中,由于是写入多个表,所以能在较短时间内完成,目的表处理单元自动判断计算机负载情况,系统空闲时,执行写入目的表操作,先从临时名称表中读取出来临时表的表名,然后根据表名,循环从每个表中读取出来所有记录,写入到目的表中,至此,完成操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:王理想
申请(专利权)人:山东高效能服务器和存储研究院
类型:发明
国别省市:88[中国|济南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1