一种大字段数据的处理方法及装置制造方法及图纸

技术编号:14234280 阅读:36 留言:0更新日期:2016-12-21 03:01
本发明专利技术公开了一种大字段数据的处理方法及装置,该处理方法包括:接收对指定数据库表的大字段数据进行处理的处理指令;如果所述大字段数据的数据长度小于或等于设定阈值,则根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。利用该处理方法,由于大字段数据所属的数据页至少存储两条大字段数据的数据信息,能够节省数据库的存储空间,由此降低了存储空间的资源浪费,此外,还能够减少大字段数据处理时的数据页加载量,由此降低了大字段数据处理时的输入输出代价,从而提高了数据库的执行效率。

Method and device for processing large field data

The invention discloses a method and a device for processing a large field data, the processing method comprises the following steps: receiving and processing instructions for processing large data fields specified database table; if the field data length is less than or equal to the threshold, according to the data manager instructions to determine the large field the data belongs to, and the corresponding treatment of the large field data, wherein the data pages for field records page, the page is used to store large field records at least two large field data. Using this method, the data pages from field data storage at least two large field data, the database can save storage space, thereby reducing the storage space of the waste of resources, in addition, can also reduce the amount of data page load field data processing, which reduces the cost of input and output field data processing, so as to improve the efficiency of database.

【技术实现步骤摘要】

本专利技术实施例涉及数据库相关
,尤其涉及一种大字段数据的处理方法及装置
技术介绍
大字段是数据库中的一种数据类型,以大字段类型进行存储的数据称为大字段数据。一般地,以大字段类型存储的数据可以分为两类:一类是长文本,普通的文本类型最多只能存储4000个汉字,而基于大字段类型存储的长文本远可以大于4000字;另一类是二进制信息,如图片或者文件等。与其他数据类型相比,大字段需要采用特殊的存储方式。因为大字段数据的大小一般都很大,甚至大于数据库规定的最大行大小。这就意味着很多大字段数据无法直接在存储在数据库表中行单元中。现有存储大字段数据的方法中,通常是为大字段数据专门定义一种数据页的类型,称为大字段数据页,以用该类型的数据页独立存储大字段数据,且在行记录中只记录首个大字段数据页的页地址信息。对于该种简单的大字段独立存储方法,局限之处在于:对于需要存储大字段数据,至少需要一个大字段数据页,然而,对于一个大字段数据页来说,只能用来存储一个大字段数据。但在实际应用中,很多的大字段数据长度都不会超过数据页的一半,对于该种情况,大字段数据页在存储一个大字段数据之后,会剩余大量的空闲空间,而这些空闲空间也不能再用来存储其他数据。由此造成了大字段数据页的空间浪费;同时,当对大字段数据进行批量查询时,也会增加大字段数据页的输入输出代价,从而降低数据库的执行效率。
技术实现思路
本专利技术的目的是提出一种大字段数据的处理方法及装置,以实现对大字段数据的优化处理。一方面,本专利技术实施例提供了一种大字段数据的处理方法,该处理方法包括:接收对指定数据库表的大字段数据进行处理的处理指令;如果所述大字段数据的数据长度小于或等于设定阈值,则根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中,所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。另一方面,本专利技术实施例还提供了一种大字段数据的处理装置,该处理装置包括:指令接收模块,用于接收对指定数据库表的大字段数据进行处理的处理指令;数据处理模块,用于当所述大字段数据的数据长度小于或等于设定阈值时,根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中,所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。本专利技术实施例提供了一种大字段数据的处理方法及装置,该处理方法可概括为:首先接收对指定数据库表的大字段数据进行处理的处理指令;在确定大字段数据的数据长度小于或等于设定阈值时,根据接收的处理指令确定大字段数据所属的数据页,并对大字段数据进行相应的处理。利用该处理方法,由于大字段数据所属的数据页至少存储两条大字段数据的数据信息,能够节省数据库的存储空间,由此降低了存储空间的资源浪费,此外,还能够减少大字段数据处理时的数据页加载量,由此降低了大字段数据处理时的输入输出代价,从而提高了数据库的执行效率。附图说明图1为本专利技术实施例一提供的一种大字段数据的处理方法的流程示意图;图2为本专利技术实施例二提供的一种大字段数据的处理方法的流程示意图;图3为本专利技术实施例三提供的一种大字段数据的处理方法的流程示意图;图4为本专利技术实施例四提供的一种大字段数据的处理装置的结构框图。具体实施方式下面结合附图并通过具体实施方式来进一步说明本专利技术的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种大字段数据的处理方法的流程示意图。该方法适用于对大字段数据进行处理的情况,可以由大字段数据的处理装置执行,其中该装置可由软件和/或硬件实现,并一般集成于数据库管理系统中。如图1所示,本专利技术实施例一提供的一种大字段数据的处理方法,具体包括如下操作:S101、接收对指定数据库表的大字段数据进行处理的处理指令。在本实施例中,所述指定数据库表具体可理解为创建于数据库中的,且包含数据类型为大字段的列的任一基本表。在本实施例中,所述大字段数据具体可理解为所述指定数据库表中数据类型为大字段的列所对应的数据,如长文本、图片或者文件等,其中,对所述大字段数据的处理并不直接在所属列对应的行单元中进行,可以基于本专利技术实施例提供的大字段数据的处理方法进行。一般地,在对所述大字段数据进行处理时,可以首先进行接收处理所述大字段数据所需处理指令的操作。具体的,所述处理指令可以包括大字段数据的存储指令、修改指令以及删除指令等。S102、如果所述大字段数据的数据长度小于或等于设定阈值,则根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中,所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。一般地,在接收到所述处理指令之后,可以基于所述大字段数据的数据长度与所述设定阈值的大小关系来确定处理所述大字段数据所对应的处理方法。通常情况下,在接收到处理指令后,对于数据长度大于设定阈值的大字段数据而言,所使用的处理方法可以是现有的常规处理方法;对于数据长度小于或等于设定阈值的大字段数据而言,就可以使用本专利技术实施例所提供的处理方法来进行处理。具体的,所述大字段数据的数据长度具体可指数据类型为大字段的数据所具有的数据大小,一般以字节为单位来表示。所述设定阈值可人为设定,也可默认设定,其中,所述设定阈值可优选设定为一个数据页的页大小的一半或者更小,示例性的,若数据页的页大小为4KB,则所述设定阈值可以为2KB或者1.8KB等。在本实施例中,当所述大字段数据的数据长度小于或等于设定阈值时,表明所述大字段数据的数据长度较小,此时可以基于步骤S102实现对所述大字段数据的处理。具体的,首先根据所述处理指令确定所述大字段数据所属的数据页,然后,再基于处理指令对所述大字段数据进行相应的处理,其中,基于步骤S102所确定的数据页与基于现有处理方法确定的数据页不同,基于S102确定出的数据页中至少可以存储两条大字段数据的数据信息,为了便于区分,本专利技术实施例中记所述数据页为大字段记录页;而基于现有处理方法确定的数据页仅允许存储一条大字段数据。由此可知,基于步骤S102的处理步骤可以节省数据库的存储空间,减少存储空间的浪费。在本实施例中,基于S102确定出所述大字段数据所属的大字段记录页后,还可以基于不同的处理指令对大字段数据进行不同的处理操作,示例性的,如基于存储指令对大字段数据进行存储操作,或基于修改指令对大字段数据进行修改操作等。本专利技术实施例一提供了一种大字段数据的处理方法,该处理方法首先接收对指定数据库表的大字段数据进行处理的处理指令;在确定大字段数据的数据长度小于或等于设定阈值时,根据接收的处理指令确定大字段数据所属的数据页,并对大字段数据进行相应的处理。利用该处理方法,由于大字段数据所属的数据页至少存储两条大字段数据的数据信息,节省了数据库的存储空间,由此降低了存储空间的资源浪费,此外,很大程度减少了大字段数据处理时的数据页加载量,由此降低了大字段数据处理时的输入输出代价,从而提高了数据库的执行效率。实施例二图2为本专利技术实施例二提供的一种本文档来自技高网...
一种大字段数据的处理方法及装置

【技术保护点】
一种大字段数据的处理方法,其特征在于,包括:接收对指定数据库表的大字段数据进行处理的处理指令;如果所述大字段数据的数据长度小于或等于设定阈值,则根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中,所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。

【技术特征摘要】
1.一种大字段数据的处理方法,其特征在于,包括:接收对指定数据库表的大字段数据进行处理的处理指令;如果所述大字段数据的数据长度小于或等于设定阈值,则根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,其中,所述数据页记为大字段记录页,所述大字段记录页用于存储至少两条大字段数据的数据信息。2.根据权利要求1所述的方法,其特征在于,还包括:在创建所述指定数据库表时,如果检测到所述指定数据库表中存在数据类型为大字段的列,则为所述列创建专属的大字段数据段,所述大字段数据段为处理大字段数据所需的数据环境;在所述大字段数据段中创建至少一个控制组,并为所述控制组对应分配一个数据页,记所述数据页为大字段控制页。3.根据权利要求2所述的方法,其特征在于,所述控制组基于对应的大字段控制页中存储的目录项信息管理大字段记录页,其中,所述目录项信息中的一条目录项对应记录一个大字段记录页的页地址以及页剩余空间大小;所述大字段记录页包括页头、数据以及数据索引三部分,其中,所述页头中记录有所述大字段记录页所属控制组的控制组地址;所述控制组地址为与所述控制组对应的大字段控制页的页地址。4.根据权利要求3所述的方法,其特征在于,所述根据所述处理指令确定所述大字段数据所属的数据页,并对所述大字段数据进行相应的处理,具体包括:当所述处理指令为存储指令时,确定存储所述大字段数据所需的大字段记录页,并对所述大字段数据进行存储操作;当所述处理指令为修改指令时,确定所述大字段数据所属的大字段记录页,并对所述大字段数据进行修改操作;当所述处理指令为删除指令时,确定所述大字段数据所属的大字段记录页,并对所述大字段数据进行删除操作。5.根据权利要求4所述的方法,其特征在于,所述确定存储所述大字段数据所需的大字段记录页,并对所述大字段数据进行存储操作,包括:将所述大字段数据分配到所述大字段数据段的任一个未封锁的控制组中,并封锁所述控制组;基于所述控制组对应的目录项信息确定存储所述大字段数据所需的大字段记录页;将所述大字段数据的数据信息写入所述大字段记录页;更新所述大字段记录页在所述控制组中的目录项信息,并释放对所述控制组的封锁。6.根据权利要求5所述的方法,其特征在于,所述基于所述控制组对应的目录项信息确定存储所述大字段数据所需的大字段记录页,包括:如果所述控制组对应的目录项信息为空,则为所述大字段数据分配一个新的大字段记录页;否则,确定所述控制组对应的目录项信息中是否存在满足设定条件的目录项,如果存在满足所述设定条件的目录项,则确定所述目录项中页地址对应的大字段记录页为存储所述大字段数据所需的大字段记录页;否则,为所述大字段数据分配一个新的大字段记录页;其中,所述设定条件为:目录项的页剩余空间大小大于或等于所述大字段数据的数据长度。7.根据权利要求4所述的方法,其特征在于,所述确定所述大字段数据所属的大字段记录页,并对所述大字段数据进行修改操作,包括:基于所述大字段数据在所述指定数据库表中对应的行记录信息,确定所述大字段数据所属数据页的页地址;基于所述页地址在所述大字段数据段中确定对应的大字段记录页;检查所述大字段记录页的页头中记录的控制组地址是否为空;如果所述控制组地址不为空...

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

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

1