本申请涉及数据库查询,尤其涉及一种数据库管理方法、装置及设备。
背景技术:
1、在关系型数据库中,一个关系表的数据如果按行存储,即每行数据作为一个单元存储在连续的存储空间中,包含了该行所有字段的数据,则称该表为行存表。
2、由于行存数据的存储方式,对行存表进行添加列操作时,可能会触发重写原有存量数据。特别是当指定新增列的位置在已有列之间时,需要将新增列的值填充到每一行数据的特定位置,当原表中数据量很大时,这样的数据重写操作会耗时很长,且需要占用较多系统资源,从而会影响数据库的响应速度。
技术实现思路
1、本申请提供一种数据库管理方法、装置及设备,可以有效提升在添加列时的执行速度,降低添加列时对数据库响应速度的影响。
2、第一方面,本申请提供一种数据库管理方法,该方法包括:
3、在接收到对所述数据库中的行存表添加列的操作指令时,确定所述操作指令对应的新增列的缺省值;
4、确定所述缺省值相对于所述行存表中已存在的每一行数据是否均相同;
5、当所述缺省值相对于所述行存表中已存在的每一行数据均相同时,跳过对所述行存表中已存在的每一行数据的重写操作,将所述缺省值和所述新增列的添加时间记录到所述数据库的系统表中。
6、在一些实施例中,所述方法还包括:
7、当所述缺省值相对于所述行存表中已存在的任意两行数据不相同时,根据所述操作指令,对所述行存表中已存在的每一行数据执行所述重写操作。
8、在一些实施例中,所述确定所述操作指令对应的新增列的缺省值,包括:
9、解析所述操作指令,确定所述新增列的属性信息,所述属性信息包括所述新增列的名称、数据类型、数据长度中的至少一项;
10、根据所述属性信息,确定所述新增列的缺省值。
11、在一些实施例中,所述将所述缺省值和所述新增列的添加时间记录到所述数据库的系统表中,包括:
12、在所述系统表中创建一个新的条目;
13、将所述缺省值与所述添加时间存储在所述条目中的相应字段中;
14、更新所述数据库的元数据,以完成所述新增列的添加。
15、在一些实施例中,所述更新所述数据库的元数据,以完成所述新增列的添加之后,所述方法还包括:
16、在接收到对所述新增列的数据写入操作指令时,根据所述数据写入操作指令指定的值组装新数据;
17、将所述新数据写入所述新增列中。
18、在一些实施例中,所述方法还包括:
19、在接收到对所述行存表的访问请求时,确定所述访问请求访问的目标列是否为所述新增列;
20、若所述目标列为所述新增列,且所述访问请求访问的行数据的生成时间位于所述新增列的添加时间之前,则根据所述系统表中存储的所述缺省值,获取所述目标列的数据;
21、若所述目标列不属于所述新增列,或者所述目标列为所述新增列、且所述访问请求访问的行数据的生成时间位于所述新增列的添加时间之后,则从所述行存表中获取所述目标列的数据。
22、第二方面,本申请提供一种数据库管理装置,该装置包括:
23、确定模块,用于在接收到对所述数据库中的行存表添加列的操作指令时,确定所述操作指令对应的新增列的缺省值;
24、判断模块,用于确定所述缺省值相对于所述行存表中已存在的每一行数据是否均相同;
25、记录模块,用于当所述缺省值相对于所述行存表中已存在的每一行数据均相同时,跳过对所述行存表中已存在的每一行数据的重写操作,将所述缺省值和所述新增列的添加时间记录到所述数据库的系统表中。
26、第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
27、所述存储器用于存储计算机执行指令;
28、所述处理器用于执行所述存储器存储的计算机执行指令,以实现如第一方面提供的数据库管理方法。
29、第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时,实现如第一方面提供的数据库管理方法。
30、第五方面,本申请提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如第一方面提供的数据库管理方法。
31、本申请提供的数据库管理方法、装置及设备,对于在行存表指定位置添加列的操作,如果新增列的缺省值对于已存在的每一行数据是一个相同的值时,将上述缺省值和新增列的添加时间记录到数据库的系统表中,并跳过对行存表中已存在的每一行数据的重写操作,由此可以有效提升在添加列时的执行速度,降低添加列时对数据库响应速度的影响。
1.一种数据库管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述确定所述操作指令对应的新增列的缺省值,包括:
4.根据权利要求1-3任一项所述的方法,其特征在于,所述将所述缺省值和所述新增列的添加时间记录到所述数据库的系统表中,包括:
5.根据权利要求4所述的方法,其特征在于,所述更新所述数据库的元数据,以完成所述新增列的添加之后,所述方法还包括:
6.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
7.一种数据库管理装置,其特征在于,所述装置包括:
8.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时,实现如权利要求1-6任一项所述的数据库管理方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-6任一项所述的数据库管理方法。