表格式数据显示方法、插入方法、删除方法和更新方法技术

技术编号:2880524 阅读:236 留言:0更新日期:2012-04-11 18:40
本发明专利技术的目标是快速而正确地执行表格式数据的插入、删除和更新。CPU12接受记录号作为下标,生成下标转换数组,用于给出对应于所述的下标的范围的偏移值,标识插入位置,该位置指出要插入的字段值的位置,在下标转换数组中,有关插入位置,给出偏移值,该偏移值定义对应的下标的范围,还标识数组的末尾,在下标转换数组中,有关那些记录号大于对应于所述的插入位置的记录号的记录,给出偏移值,该偏移值还增大对应的下标的范围,还减少能接受的下标,将要插入的所述的字段值放在规定的末尾位置,这样,根据下标转换数组内的下标的范围,给出偏移值作为所述的下标,因此,用偏移值给出的下标来标识数组的字段值。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及数据处理方法和数据处理装置,用于使用计算机或其它信息处理装置处理大量的数据,特别是涉及构成数据库的表格式数据的更新、删除、插入和事务处理。本专利技术在处理大量数据的系统中应用,例如,数据库和数据仓库。更具体地,在大规模的科学技术计算、工厂和电力供应的控制系统中应用,以及定单管理和使命关键(如证券交易)事务性工作中。现有技术说明数据库可以应用于各种场合,但应用那些能够消除逻辑冲突的关系数据库(RDB),已经成为大中型系统的主流。例如,RDB可以用于机票预订系统或类似的系统中。在这种情况下,可以指定关键字段,以对目标执行快速搜索(通常是单个目标),或者,确认、取消或更改预订。但是,最近几年,对数据库的需求显著地增强,这些应用不仅涉及上文所述的单个数据记录的简单管理(使命关键的工作),而且还涉及分析(基于信息的工作)。例如,前述数据库的所有者可能尝试创建交叉表格,以便分析空座率如何随着时区、航线、季节等变化。但是,使用通常的RDB,使用本地存储来提交事务和确认其内容,因此,尽管适合用于主要基于事务处理的使命关键工作,但是却无法用于从结构角度对大规模的数据(基于信息的工作)进行分析。例如,如果希望对任意字段执行排序,理论上,这会花时间对n*log(n)(有n个记录)进行排序,那么,数据的规模越大,处理的效率就越低。(在实际产品中,处理效率的下降速度比理论上还要快)。此外,这种局限(时间=n*log(n))不仅表现在排序中,而且还表现在所有的一般操作中(如对局部集合的提取(=搜索))。很自然,有人提出了避免这种局限和提高速度的各种方法,其中一个很好的例子是位映像索引。位映像索引是一种位映像,其中,有关每个记录是否满足条件的信息用单个的位表示。例如,对于“性别”字段,将要创建“男性”位映像和“女性”位映像。此时,如果希望只提取(搜索)“女性”的记录,则可以快速地获得该局部集合(女性记录集)。但是,不可能在任何情况下为每个值创建位映像。例如,在有十亿条记录的数据库中,对于有十亿个不同值的字段,(例如,ID号码),就必须创建十亿个位映像,每个位映像的大小有十亿位(大约125 MB)。可以看出,位映像索引只对于那些变化特别少的字段(例如,性别)才切合实际。此外,这种方法很显然无法快速用于局部集合,也无法用于频繁地插入和删除记录的场合。其它提高速度的方法也有这样那样的局限。由于这种局限出现在旨在提高速度的各种方法的可应用的范围内,对于用户来说似乎完全相同的操作,可能在一瞬间完成,也可能花好几个小时,因此,可能发生处理时间相当不连续的严重问题(很难预测)。例如,如果使用在整个集合中有1000万个记录的表,对市场上的RDB来测量时间,有报告说,命中所有的记录(=1000万个记录)只需要花1秒,但只命中737个记录却需要花61秒。那么,命中900万个记录需要花多少处理时间呢?不必说,在执行搜索之前无法知道命中次数,因此,即使知道命中次数和进行搜索所需要的时间之间的对应关系存在某种函数,但是,却无法准确地预测所需要的时间。总之,如果假设提取500万个满足是男性这一条件的记录所需要的时间(搜索时间)与提取500万个满足是女性这一条件的记录所需要的时间(搜索时间)相同,甚至连这种理论基础都很脆弱。这种性能的不稳定性对于实时控制系统尤其致命。例如,大规模、复杂的供电系统,其中有许多发电厂通过电网与大量的电力用户连接,或者用于大规模的化工厂的控制系统,这两者都是管理和使用大量的数据但无法使用数据库的系统的例子。显然,即使它们的性能稳定,如果太慢,也无法使用,但是我们想强调的是,由于引入各种提高速度的方法,数据库变得十分复杂,这些方法只能在特定的有限的条件下使用,或者它们却带来了严重的问题,例如上文所提及的处理时间的严重不一致。现在,数据库的统计应用的上述方法已经普遍地应用(如上文所述),同时,所处理的数据的量越来越大,这是不争的事实。在这种情况下,数据仓库(DWH)和多维数据库(MDB)出现了,目的在于克服上述问题。DWH可以看作是一种RDB,在这种数据库中,事务处理功能等已经被删除,对其进行了调整,专门执行搜索和制表功能。相应地,n*log(n)的处理时间这一基本限制照旧,因此性能并没有得到充分的改善,不连续问题也未得到解决。此外,由于现有的用于执行使命关键工作的RDB和用于执行基于信息的工作的DWH无法避免地混合,导致对设备的投资越来越大,而且还带来了新的问题,包括信息管理越来越复杂,运行成本越来越高。另一方面,MDB可以看作是这样的一个系统,其中,基于指定字段(叫做维)的组合提前准备基础交叉表,用户请求的交叉表从基础交叉表进行合成。MDB可以令人满意地合成交叉表,但它们也存在许多问题。例如,不可能返回到原始记录(除非执行特殊操作,因为不可能从表返回到原始数据),它还无法处理诸如股票价格之类的随时更新的数据(由于交叉表必须提前准备);而且还无法在那些提前指定的字段之外的字段(维)上准备交叉表,还有其它许多别的问题。显然,对于DWH,也存在设备投资增加,信息管理复杂之类的问题。看看现实,很少引入DWH和MDB,除非在那些不管成本高低而更注重性能的领域,如上述控制系统和科技计算领域,金融工程等领域。显然,它们的功能和性能不能满足在上述领域的应用的需要。为了解决这些问题,当今的专利技术家们已经专利技术了搜索、制表、排序和联接表格式数据的方法(线性筛选器方法),其处理的速度大约是现有技术的100-1000倍,并已经申请了专利(日本专利申请号No.10-227278)。线性筛选器方法有许多优越的特性,包括很高而稳定的处理性能、处理的一致性、数据的压缩和可分割性、O(n)体系结构,以及排序的直接连接并适合管道式和并行处理。因此,本专利技术的目的是利用上述的线性筛选器方法,提供插入、删除和更新表格式数据的方法,特别是快速而正确地执行数据的插入、删除和更新。此外,正如通常所理解的,实际的更新操作需要正确应用排他的控制(其中,控制多个过程对相同的数据进行访问)和事务处理(其中,多个过程作为单个有效处理块提交或回滚)。为此,本专利技术还有一个目的,即提供插入、删除和更新表格式数据的方法,其中上述事务处理应正确地执行。
技术实现思路
本专利技术的目标通过提供一种插入表格式数据的方法来实现,其中,字段值在任意位置以表格式数据插入,这种数据用记录数组来表示,包含字段,字段里面包含字段值,其中所述的插入表格式数据的方法包括下列步骤生成下标转换数组,这种数组的构成使其能够接受记录号作为下标,并给出对应于所述的下标的范围的偏移值,标识插入位置,该位置指出要插入的字段值的位置,在所述的下标转换数组中,关于所述的插入位置,给出偏移值,该偏移值定义对应的下标的范围,还标识在所述的数组的末尾后面的规定的位置,在所述的下标转换数组中,关于那些记录号大于对应于所述的插入位置的记录号的记录,给出偏移值,该偏移值向上移动对应的下标范围,还减少能接受的下标,将要插入的所述的字段值放在所述的数组的末尾,这样,根据下标转换数组内的下标的范围,给出偏移值作为所述的下标,通过所述的偏移值给出的下标来标识数组的字段值。通过本专利技术,使用下标转换数组来给出下标的所规定的偏移,并标识数组的字段值本文档来自技高网
...

【技术保护点】
一种插入表格式数据的方法,其中,字段值在任意位置以表格式数据插入,这种数据用记录数组来表示,包含字段,字段里面包含字段值,其中所述的插入表格式数据的方法包括下列步骤:生成下标转换数组,这种数组的构成使其能够接受记录号作为下标,并给出 对应于所述的下标的范围的偏移值,标识插入位置,该位置指出要插入的字段值的位置,在所述的下标转换数组中,有关所述的插入位置,给出偏移值,该偏移值定义对应的下标的范围,还标识在所述的数组的末尾后面的规定的位置,在所述的下标转换数组中 ,有关那些记录号大于对应于所述的插入位置的记录号的记录,给出偏移值,该偏移值向上移动对应的下标范围,该偏移值还减少所接受的下标,将要插入的所述的字段值放在所述的数组的末尾后面的规定的位置,这样,根据下标转换数组内的下标的范围,给出偏 移值作为所述的下标,通过所述的偏移值给出的下标来标识数组的字段值。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:古庄晋二
申请(专利权)人:特博数据实验室公司
类型:发明
国别省市:JP[日本]

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

1