一种数据记录的操作方法、装置、设备和存储介质制造方法及图纸

技术编号:18050176 阅读:24 留言:0更新日期:2018-05-26 08:09
本发明专利技术实施例公开了一种数据记录的操作方法、装置、设备和存储介质。其中,该方法包括:在记录组织和解析时,将修改表结构操作所添加的列对应的扩展字段与建表时原始列对应的原始字段予以区别。具体内容包括:获取数据记录所在表的记录组织描述,记录组织描述获取表中原始列和添加列的个数,并根据原始列的个数与添加列之前其他添加列的个数,确定扩展字段的物理标识;根据原始字段的数据长度之和与扩展字段之前其他扩展字段的数据长度之和,确定扩展字段的数据偏移;根据扩展字段的物理标识和数据偏移,将字段数据顺序组织到数据记录中。本发明专利技术实施例的技术方案,在表添加列时,只对数据字典进行操作,不需要重建数据,提高了表添加列的效率。

【技术实现步骤摘要】
一种数据记录的操作方法、装置、设备和存储介质
本专利技术实施例涉及数据库处理领域,尤其涉及一种数据记录的操作方法、装置、设备和存储介质。
技术介绍
数据库中数据列表的行记录最普通的组织方法是按照表定义列的顺序来组织各个字段,我们称之为顺序组织方法,也有组织方法按照字段中先定长后变长类型的顺序,将定长类型的字段和变长类型的字段分别集中在一起,对记录中字段的组织顺序进行调整,我们称为调序组织方法。例如,表TAB的定义为(C1VARCHAR(10),C2INT,C3VARBINARY(10),C4INT);按照顺序组织方法,字段的顺序为C1、C2、C3、C4,按照调序组织方法,表TAB中C2、C4列是定长的,C1、C3列是变长的,字段的顺序为C2、C4、C1、C3。与顺序组织方法相比,使用调序组织方法组织的所有记录中,不管变长数据如何取值,定长类型的字段在记录中的位置是固定的,在数据访问时可以根据其是第几个定长字段,获得其在记录中的数据偏移,不必从头开始遍历前导字段,能够有效的提高记录中数据访问的速度。但是在表添加列时,调序组织方法存在不足。新加列在记录中对应的数据字段可能在其他字段之间,无法根据记录长度省略后续的字段,所以对于当前已经存在的数据,添加列时必须要重建数据,这会导致数据表添加列操作产生大量的IO,效率很低。
技术实现思路
本专利技术实施例提供了一种数据记录的操作方法、装置、设备和存储介质,使得保证大多数情况数据访问速度的前提下,在数据记录所在表添加列时,只需要对数据字典进行操作,不必重建数据,提高表添加列的效率。第一方面,本专利技术实施例提供了一种数据列表的操作方法,该方法包括:获取数据记录对应的记录组织描述,所述记录组织描述获取所述数据记录所在表中原始列和添加列的个数,并根据所述原始列的个数与所述添加列之前其他添加列的个数,确定所述数据记录中扩展字段的物理标识,所述扩展字段为所述数据记录所在表中添加列对应的字段;获取所述数据记录中原始字段和扩展字段的数据长度,根据所述原始字段的数据长度之和与所述扩展字段之前其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移,所述原始字段为所述数据记录所在表中原始列对应的字段;根据每个扩展字段的物理标识和数据偏移,将每个扩展字段的数据顺序组织到所述数据记录中。第二方面,本专利技术实施例提供了一种数据列表的操作装置,该装置包括:组织描述获取模块,用于获取数据记录对应的记录组织描述,所述记录组织描述获取所述数据记录所在表中原始列和添加列的个数,并根据所述原始列的个数与所述添加列之前其他添加列的个数,确定所述数据记录中扩展字段的物理标识,所述扩展字段为所述数据记录所在表中添加列对应的字段;数据偏移确定模块,用于获取所述数据记录中原始字段和扩展字段的数据长度,根据所述原始字段的数据长度之和与所述扩展字段之前其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移,所述原始字段为所述数据记录所在表中原始列对应的字段;数据组织模块,用于根据每个扩展字段的物理标识和数据偏移,将每个扩展字段的数据顺序组织到所述数据记录中。第三方面,本专利技术实施例提供了一种设备,该设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例所述的数据记录的操作方法。第四方面,本专利技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术任意实施例所述的数据记录的操作方法。本专利技术实施例提供的一种数据记录的操作方法、装置、设备和存储介质,通过设定记录组织描述中对应扩展字段的物理标识,并根据数据记录中扩展字段的数据偏移,在原始字段之后顺序组织所有扩展字段,原始字段仍采用调序方式组织数据,保证了大多数情况下数据访问的速度;而且添加列后,之前已经存在的数据记录可以将其扩展字段的值解析为NULL,所以在表添加列操作时,只对数据字典进行操作,不需要重建数据,提高了表添加列的效率。附图说明图1为本专利技术实施例一提供的一种数据记录的操作方法的流程图;图2为本专利技术实施例二提供的方法中生成记录组织描述的方法流程图;图3为本专利技术实施例三提供的一种数据记录的操作方法的流程图;图4为本专利技术实施例三提供的方法中组织数据记录的方法流程图;图5为本专利技术实施例四提供的方法中解析数据记录的方法流程图;图6为本专利技术实施例四提供的方法中解析数据记录的方法流程图;图7为本专利技术实施例五提供的一种数据记录的操作装置的结构示意图;图8为本专利技术实施例六提供的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种数据记录的操作方法的流程图,本实施例可适用于数据库技术中任一种对行存储方式的数据记录进行组织和解析的情况。本实施例提供的一种数据记录的操作方法可以由数据记录的操作装置来执行,该装置可以通过软件和/或硬件的方式来实现,并集成在执行本方法的设备中,在本实施例中执行本方法的设备可以是平板电脑、台式机和笔记本等任意一种可以对数据记录进行操作的智能终端。具体的,参考图1,该方法具体包括如下步骤:S110,获取数据记录对应的记录组织描述。具体的,数据记录为表结构中的行记录。为了在数据记录所在表中添加列,而不用重建数据,需要获取表定义时原始列的个数,并在原始列之后添加新加列。在表添加列时,需要对数据字典中的对象进行修改,具体的,数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据记录所在表中各列的逻辑标识、列名、存储类型和长度等做出详细的说明。进一步的,表添加列后,在数据字典中对各个添加列进行说明,将原始列的个数作为第一个添加列的逻辑标识在数据字典中进行记录,并依次增加逻辑标识来对应记录剩余的添加列,并记录添加列对应的列名、存储类型和长度等信息。优选的,为了区分表中的原始列和添加列,可以在数据字典中对各列进行描述时对应设置一个区分标识,例如,原始列通过字符“0”来进行标识,添加列通过字符“1”来进行标识。进一步的,在需要对表中的数据记录中的数据进行组织或解析时,需要根据数据字典中的信息生成该表的记录组织描述。具体的,记录组织描述根据数据字典中对该表中各列信息的描述生成,是数据库中辅助组织和解析数据记录的内存结构。进一步的,本实施例中的记录组织描述根据数据字典中对表中各列信息的描述,获取表中原始列和添加列的个数,并根据原始列的个数与添加列之前其他添加列的个数,确定数据记录中扩展字段的物理标识。具体的,物理标识表示字段存储在数据记录中的实际顺序,优选的,物理标识可以为字段在数据记录中的物理ID,相应的,在数据记录所在表定义时该字段对应列的顺序为字段的逻辑标识,优选的,字段的逻辑标识可以为数据记录中该字段在表定义时对应的列的逻辑ID。例如,前文表TAB中C1列在数据记录中的对应字段的逻辑ID为0,物理ID为2。具体的,记录组织描述根据数据记录所在表中的列信息对数据记录中的本文档来自技高网...
一种数据记录的操作方法、装置、设备和存储介质

【技术保护点】
一种数据记录的操作方法,其特征在于,包括:获取数据记录所在表的记录组织描述,所述记录组织描述获取所述表中原始列和添加列的个数,并根据所述原始列的个数与所述添加列之前其他添加列的个数,确定所述数据记录中扩展字段的物理标识,所述扩展字段为所述数据记录所在表中添加列对应的字段;获取所述数据记录中每个原始字段和扩展字段的数据长度,根据所述原始字段的数据长度之和与所述扩展字段之前其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移,所述原始字段为所述数据记录所在表中原始列对应的字段;根据每个扩展字段的物理标识和数据偏移,将每个扩展字段的数据顺序组织到所述数据记录中。

【技术特征摘要】
1.一种数据记录的操作方法,其特征在于,包括:获取数据记录所在表的记录组织描述,所述记录组织描述获取所述表中原始列和添加列的个数,并根据所述原始列的个数与所述添加列之前其他添加列的个数,确定所述数据记录中扩展字段的物理标识,所述扩展字段为所述数据记录所在表中添加列对应的字段;获取所述数据记录中每个原始字段和扩展字段的数据长度,根据所述原始字段的数据长度之和与所述扩展字段之前其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移,所述原始字段为所述数据记录所在表中原始列对应的字段;根据每个扩展字段的物理标识和数据偏移,将每个扩展字段的数据顺序组织到所述数据记录中。2.根据权利要求1所述的方法,其特征在于,所述原始字段包括定长字段和变长字段;相应的,所述原始列包括定长列和变长列,所述记录组织描述获取所述定长列的数据长度,根据所述定长列的数据长度之和确定所述数据记录中第一个变长字段的数据偏移,所述第一个变长字段为所述数据记录所在表中第一个变长列对应的字段。3.根据权利要求2所述的方法,其特征在于,所述根据所述原始字段的数据长度之和与所述扩展字段之前其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移包括:根据所述记录组织描述中的第一个变长字段的数据偏移与所述变长字段的数据长度之和,确定第一个扩展字段的数据偏移;根据所述第一个扩展字段的数据偏移与所述扩展字段之前的其他扩展字段的数据长度之和,确定所述扩展字段的数据偏移。4.根据权利要求1所述的方法,其特征在于,所述将每个扩展字段的数据顺序组织到所述数据记录中包括:依据记录格式将每个扩展字段的数据顺序组织到所述数据记录中的扩展字段区,所述记录格式包括记录头和数据部分,所述扩展字段区包括所述扩展字段的控制信息、数据长度和字段值。5.根据权利要求1所述的方法,其特征在于,所述确定所述扩展字段的数据偏移之后,还包括:根据所述记录组织描述中待解析数据记录中字段的物理标识与数据偏移解析所述待解析数据记录中的字段...

【专利技术属性】
技术研发人员:王攀王家贤
申请(专利权)人:上海达梦数据库有限公司
类型:发明
国别省市:上海,31

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

1