CN117421288A - 数据库数据压缩方法及装置 - Google Patents
数据库数据压缩方法及装置 Download PDFInfo
- Publication number
- CN117421288A CN117421288A CN202311737983.2A CN202311737983A CN117421288A CN 117421288 A CN117421288 A CN 117421288A CN 202311737983 A CN202311737983 A CN 202311737983A CN 117421288 A CN117421288 A CN 117421288A
- Authority
- CN
- China
- Prior art keywords
- file
- target
- data
- target file
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013144 data compression Methods 0.000 title claims abstract description 54
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000007906 compression Methods 0.000 claims abstract description 70
- 230000006835 compression Effects 0.000 claims abstract description 69
- 238000013507 mapping Methods 0.000 claims abstract description 14
- 230000006837 decompression Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据库数据压缩方法及装置。其中,该方法包括:接收数据压缩指令,并根据数据压缩指令确定待压缩的数据库对象;根据预先确定的映射关系将待压缩的数据库对象与文件系统内的目标文件相关联;在建立目标文件与待压缩的数据库对象的关联关系之后,将目标文件进行压缩,并将压缩结果存储到指定目录中。本申请解决了数据库中的数据压缩过程较为复杂的技术问题。
Description
技术领域
本申请涉及数据库技术领域,具体而言,涉及一种数据库数据压缩方法及装置。
背景技术
目前,相关技术中对数据库中的数据进行压缩实现途径主要有两个方式,第一种方式是直接利用数据库进行压缩,但数据库压缩将大大增加处理器的使用率,而且需要对数据库对象的参数进行调整才能进行压缩,例如对Oracle数据库中的对象进行压缩时,需要针对每个数据表找出适配的pctfree(用于指示必须保留的最小空间的比例)值,第二方式通过存储系统对数据库对象进行压缩,但此种方式压缩效率较低。
发明内容
本申请实施例提供了一种数据库数据压缩方法及装置,以至少解决数据库中的数据压缩过程较为复杂的技术问题。
根据本申请实施例的一个方面,提供了一种数据库数据压缩方法,包括:接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中。
可选地,将所述目标文件进行压缩,并将压缩结果存储到指定目录中,包括:获取所述目标文件的文件头;根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型;根据所述目标文件的文件类型确定对应的压缩方式。
可选地,根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型,包括:在所述目标文件的文件头的字节数量为第一类数量的情况下,确定所述目标文件的文件类型为第一类型文件;在所述目标文件的文件头的字节数量为第二类数量的情况下,确定所述文件的文件类型为第二类型文件,其中,所述第一类型文件和所述第二类型文件所属的数据库类型不同。
可选地,根据所述目标文件的文件类型确定对应的压缩方式,包括:对所述目标文件的文件头进行识别,得到识别结果;根据所述识别结果确定所述目标文件所属的文件类型,所述目标文件的文件类型,所述目标文件的文件类型至少包括:用于存储数据库备份数据的第三类文件、用于存储数据库数据的第四类文件、用于记录数据库操作的第五类文件和用于存储数据库数据表的第六类文件;根据所述目标文件所属的文件类型确定所述目标文件对应的压缩方式。
可选地,将所述目标文件进行压缩,包括:获取所述目标文件的容量;在所述目标文件的容量不大于预设容量的情况下,压缩所述目标文件中的所有数据;在所述目标文件的容量大于所述预设容量的情况下,提取所述目标文件中数据的获取时刻,并将所述获取时刻早于预设时刻的数据确定为目标数据,压缩所述目标文件中的所述目标数据。
可选地,将所述目标文件进行压缩,包括:获取所述文件系统的负载,并所述文件系统的负载划分为多个负载区间;根据预先确定的所述负载区间与文件数量的映射关系,确定并行压缩所述目标文件的文件数量。
可选地,在将压缩结果存储到指定目录中之后,所述方法还包括:接收数据读取指令,并从所述数据读取指令中获取待读取的目标数据块;从所述压缩结果中提取所述目标数据块的状态信息,在所述状态信息指示所述目标数据块已被压缩的情况下,将所述目标数据块提取到预设内存中进行解压缩,得到所述目标数据块中的数据;将所述目标数据块中的数据输出。
根据本申请实施例的另一方面,还提供了一种数据库数据压缩装置,包括:接收模块,用于接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;关联模块,用于根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;压缩模块,用于在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中。
根据本申请实施例的再一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行上述数据库数据压缩方法。
根据本申请实施例的再一方面,还提供了一种计算机设备,包括存储器和处理器,处理器用于运行程序,其中,程序运行时执行上述数据库数据压缩方法。
在本申请实施例中,采用接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中的方式,通过将待压缩的数据库对象与文件系统内的目标文件建立关联关系,再对目标文件进行压缩,从而实现了简化数据库对象压缩流程的技术效果,进而解决了数据库中的数据压缩过程较为复杂技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种用于数据库数据压缩方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请的一种数据库数据压缩方法流程图;
图3是根据本申请实施例的一种可选的数据库数据压缩装置结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例,还提供了一种数据库数据压缩方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端、云端服务器或者类似的运算装置中执行。图1示出了一种用于实现数据库数据压缩方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据库数据压缩方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据库数据压缩方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输模块106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
根据本申请实施例,提供了一种数据库数据压缩方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本申请实施例的数据库数据压缩方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,接收数据压缩指令,并根据数据压缩指令确定待压缩的数据库对象;
步骤S204,根据预先确定的映射关系将待压缩的数据库对象与文件系统内的目标文件相关联;
步骤S206,在建立目标文件与待压缩的数据库对象的关联关系之后,将目标文件进行压缩,并将压缩结果存储到指定目录中。
通过上述步骤,可以实现采用接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中的方式,通过将待压缩的数据库对象与文件系统内的目标文件建立关联关系,再对目标文件进行压缩,从而实现了简化数据库对象压缩流程的技术效果,进而解决了数据库中的数据压缩过程较为复杂技术问题。
在步骤S202中,根据所述数据压缩指令确定待压缩的数据库对象的方式有多种,其中,一种可选的方式为:通过标记组件在数据库管理系统中标记待压缩的数据库对象,形成配置文件或API(Application Programming Interface,应用程序编程接口),然后数据库管理系统通过JDBC(一种数据库交互接口)连接数据库,查询数据库对象,支持以数据库对象大小,类型排序。标记需压缩对象类型,通过生成配置文件或API。通过读取配置文件或API,获取待压缩数据库对象。
标记组件以预设时长,例如:10秒间隔粒度查询待压缩数据库对象,并通过CLI(命令行界面)或Web(网页端)界面展示数据库对象列表,可以理解的是,预设时长可以根据实际情况调整。
在步骤S204中,将所述待压缩的数据库对象与文件系统内的目标文件相关联的方式有多种,一种可选的关联方式是,通过数据库对象的名称与文件系统目录下的目标文件的名称进行关联,例如:数据库中的表对象“tbl_clean_log”与目标文件“tbl_clean_log.ibd”相关联。
下面通过具体的实施例来详细说明上述步骤S202至步骤S206。
在步骤S206中,对目标文件进行压缩时,可以根据目标文件的类型选择最优的压缩方式,需要进行说明的是,最优的压缩方式可以表现为压缩速率最快或压缩比例最大。
在一种可选的方式中,可以通过获取所述目标文件的文件头;根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型;根据所述目标文件的文件类型确定对应的压缩方式。
在本申请的一些实施例中,在所述目标文件的文件头的字节数量为第一类数量的情况下,确定所述目标文件的文件类型为第一类型文件;在所述目标文件的文件头的字节数量为第二类数量的情况下,确定所述文件的文件类型为第二类型文件,其中,所述第一类型文件和所述第二类型文件所属的数据库类型不同。
以第一类型文件所属的数据库类型为Oracle,第二类型文件所属的数据库类型为MySQL为例,第一类数量包括:512字节、32字节和128字节;第二类数量包括:24字节、256字节。
具体地,Oracle数据文件的前512字节属于文件头;Oracle归档日志文件的前32字节属于文件头;Oracle Redo日志文件的前32字节属于文件头;Oracle备份文件的前128字节属于文件头;MySQL Binlog日志文件的前24字节属于文件头;MySQL 表文件日志文件的前24字节属于文件头;MySQL 索引文件日志文件的前24字节属于文件头;MySQL备份文件的前256字节属于文件头。
在本申请的另一些实施例中,据所述目标文件的文件类型确定对应的压缩方式的具体步骤如下:对所述目标文件的文件头进行识别,得到识别结果;根据所述识别结果确定所述目标文件所属的文件类型,所述目标文件的文件类型,所述目标文件的文件类型至少包括:用于存储数据库备份数据的第三类文件、用于存储数据库数据的第四类文件、用于记录数据库操作的第五类文件和用于存储数据库数据表的第六类文件;根据所述目标文件所属的文件类型确定所述目标文件对应的压缩方式。
在实际的应用场景中,第三类文件包括:MySQL备份文件、Oracle备份文件;第四类文件包括:Oracle数据文件、MySQL 索引文件、MySQL 表文件;第五类文件包括:Oracle归档日志文件,MySQL Binlog日志文件;第六类文件包括:Oracle Redo日志文件,MySQL共享表空间文件。
第三类文件对应的压缩方式为采用zlib(一种压缩算法)进行压缩;第四类文件对应的压缩方式为采用lzo(一种压缩算法)进行压缩;第五类文件对应的压缩方式为采用zstd(一种压缩算法)进行压缩;第五类文件对应的压缩方式为采用无压缩方式处理。
在具体的压缩过程中,可以根据目标文件的容量大小确定数据压缩范围,例如:获取所述目标文件的容量;在所述目标文件的容量不大于预设容量的情况下,压缩所述目标文件中的所有数据;在所述目标文件的容量大于所述预设容量的情况下,提取所述目标文件中数据的获取时刻,并将所述获取时刻早于预设时刻的数据确定为目标数据,压缩所述目标文件中的所述目标数据。
需要进行说明的是,预设容量可以根据实际场景设置,例如:4GB。
在本申请的一些实施例中,还可以根据文件系统的负载情况,采用并行方式同时对多个目标文件执行压缩,具体的执行过程如下:获取所述文件系统的负载,并所述文件系统的负载划分为多个负载区间;根据预先确定的所述负载区间与文件数量的映射关系,确定并行压缩所述目标文件的文件数量。
具体地,系统负载区间为低于10%,压缩并行度4;系统负载区间为10%~20%,压缩并行度2;系统负载区间为大于20%,压缩并行度1。
将压缩结果存储到指定目录的方式如下:通过使用高速闪存盘存放压缩结果,记录目标文件每个数据块的压缩情况的元数据。文件系统块大小默认16KB。针对每个块使用8字节记录存储地址和压缩属性。
在将压缩结果存储到指定目录中之后,接收数据读取指令,并从所述数据读取指令中获取待读取的目标数据块;从所述压缩结果中提取所述目标数据块的状态信息,在所述状态信息指示所述目标数据块已被压缩的情况下,将所述目标数据块提取到预设内存中进行解压缩,得到所述目标数据块中的数据;将所述目标数据块中的数据输出。
在实际的应用场景中,文件系统组件每次写入数据时,通过在高速闪存盘里面的元数据里的标志位标识此数据块启用压缩或不压缩,从而确定文件系统组件执行数据写入的过程中是否进行压缩。文件系统组件每次读取数据时,先读取元数据,根据元数据标志位知道该数据块是否已被压缩,若已被压缩,文件系统读取数据,然后在内存解压数据,然后将解压后的数据输出。文件系统组件每次更新数据时,先读取元数据,根据元数据标志位知道此块是否已被压缩,若已被压缩,文件系统读取数据,然后在内存解压数据,更新数据,然后将数据写入磁盘,最终将写入成功状态值返回。文件被删除时,文件系统组件自动更新元数据,将数据块的数据设置为不压缩。
在一种可选的方式中,可以将压缩结果展示在界面中,例如:待数据库对象对应的压缩文件大小以及存储大小,以及压缩比。
本申请提供的数据库数据压缩方法通过管理系统直接标识待压缩数据库对象,无需命令行查询,易用性更好,数据库表对象通过文件系统压缩,无需数据库进行压缩,大幅度降低处理器的使用率,提升数据库运行效率。根据需压缩的数据库对象,自动使用内置最优压缩算法,压缩为透明压缩,将文件压缩时不影响文件读写操作,避免了存储系统对所有文件压缩。提升了数据压缩率和避免处理器过度消耗。
本申请实施例提供的数据库数据压缩方法,还应用于本申请实施例提供的一种数据库数据压缩装置,如图3所示,包括:接收模块30,用于接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;关联模块32,用于根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;压缩模块34,用于在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中。
压缩模块34,包括:确定子模块,用于获取所述目标文件的文件头;根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型;根据所述目标文件的文件类型确定对应的压缩方式。
确定子模块,包括:第一确定单元和第二确定单元,第一确定单元用于在所述目标文件的文件头的字节数量为第一类数量的情况下,确定所述目标文件的文件类型为第一类型文件;在所述目标文件的文件头的字节数量为第二类数量的情况下,确定所述文件的文件类型为第二类型文件,其中,所述第一类型文件和所述第二类型文件所属的数据库类型不同。
第二确定单元,用于对所述目标文件的文件头进行识别,得到识别结果;根据所述识别结果确定所述目标文件所属的文件类型,所述目标文件的文件类型,所述目标文件的文件类型至少包括:用于存储数据库备份数据的第三类文件、用于存储数据库数据的第四类文件、用于记录数据库操作的第五类文件和用于存储数据库数据表的第六类文件;根据所述目标文件所属的文件类型确定所述目标文件对应的压缩方式。
确定子模块中还包括:第一压缩单元和第二压缩单元,第一压缩单元,用于获取所述目标文件的容量;在所述目标文件的容量不大于预设容量的情况下,压缩所述目标文件中的所有数据;在所述目标文件的容量大于所述预设容量的情况下,提取所述目标文件中数据的获取时刻,并将所述获取时刻早于预设时刻的数据确定为目标数据,压缩所述目标文件中的所述目标数据。
第二压缩单元,包括:获取所述文件系统的负载,并所述文件系统的负载划分为多个负载区间;根据预先确定的所述负载区间与文件数量的映射关系,确定并行压缩所述目标文件的文件数量。
压缩模块34中包括:提取子模块,用于在将压缩结果存储到指定目录中之后,接收数据读取指令,并从所述数据读取指令中获取待读取的目标数据块;从所述压缩结果中提取所述目标数据块的状态信息,在所述状态信息指示所述目标数据块已被压缩的情况下,将所述目标数据块提取到预设内存中进行解压缩,得到所述目标数据块中的数据;将所述目标数据块中的数据输出。
根据本申请实施例的另一方面,还提供了一种非易失性存储介质,包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行上述数据库数据压缩方法。
根据本申请实施例的另一方面,还提供了一种计算机设备,包括存储器和处理器,处理器用于运行程序,其中,程序运行时执行上述数据库数据压缩方法。
上述计算机设备执行上述数据库数据压缩方法,采用接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中的方式,通过将待压缩的数据库对象与文件系统内的目标文件建立关联关系,再对目标文件进行压缩,从而实现了简化数据库对象压缩流程的技术效果,进而解决了数据库中的数据压缩过程较为复杂技术问题。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种数据库数据压缩方法,其特征在于,包括:
接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;
根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;
在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中。
2.根据权利要求1所述的方法,其特征在于,将所述目标文件进行压缩,并将压缩结果存储到指定目录中,包括:
获取所述目标文件的文件头;
根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型;
根据所述目标文件的文件类型确定对应的压缩方式。
3.根据权利要求2所述的方法,其特征在于,根据所述目标文件的文件头的字节数量确定所述目标文件的文件类型,包括:
在所述目标文件的文件头的字节数量为第一类数量的情况下,确定所述目标文件的文件类型为第一类型文件;
在所述目标文件的文件头的字节数量为第二类数量的情况下,确定所述文件的文件类型为第二类型文件,其中,所述第一类型文件和所述第二类型文件所属的数据库类型不同。
4.根据权利要求2所述的方法,其特征在于,根据所述目标文件的文件类型确定对应的压缩方式,包括:
对所述目标文件的文件头进行识别,得到识别结果;
根据所述识别结果确定所述目标文件所属的文件类型,所述目标文件的文件类型,所述目标文件的文件类型至少包括:用于存储数据库备份数据的第三类文件、用于存储数据库数据的第四类文件、用于记录数据库操作的第五类文件和用于存储数据库数据表的第六类文件;
根据所述目标文件所属的文件类型确定所述目标文件对应的压缩方式。
5.根据权利要求4所述的方法,其特征在于,将所述目标文件进行压缩,包括:
获取所述目标文件的容量;
在所述目标文件的容量不大于预设容量的情况下,压缩所述目标文件中的所有数据;
在所述目标文件的容量大于所述预设容量的情况下,提取所述目标文件中数据的获取时刻,并将所述获取时刻早于预设时刻的数据确定为目标数据,压缩所述目标文件中的所述目标数据。
6.根据权利要求4所述的方法,其特征在于,将所述目标文件进行压缩,包括:
获取所述文件系统的负载,并所述文件系统的负载划分为多个负载区间;
根据预先确定的所述负载区间与文件数量的映射关系,确定并行压缩所述目标文件的文件数量。
7.根据权利要求1所述的方法,其特征在于,在将压缩结果存储到指定目录中之后,所述方法还包括:
接收数据读取指令,并从所述数据读取指令中获取待读取的目标数据块;
从所述压缩结果中提取所述目标数据块的状态信息,在所述状态信息指示所述目标数据块已被压缩的情况下,将所述目标数据块提取到预设内存中进行解压缩,得到所述目标数据块中的数据;
将所述目标数据块中的数据输出。
8.一种数据库数据压缩装置,其特征在于,包括:
接收模块,用于接收数据压缩指令,并根据所述数据压缩指令确定待压缩的数据库对象;
关联模块,用于根据预先确定的映射关系将所述待压缩的数据库对象与文件系统内的目标文件相关联;
压缩模块,用于在建立所述目标文件与所述待压缩的数据库对象的关联关系之后,将所述目标文件进行压缩,并将压缩结果存储到指定目录中。
9.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至7中任意一项所述数据库数据压缩方法。
10.一种计算机设备,其特征在于,包括存储器和处理器,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任意一项所述数据库数据压缩方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311737983.2A CN117421288A (zh) | 2023-12-18 | 2023-12-18 | 数据库数据压缩方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311737983.2A CN117421288A (zh) | 2023-12-18 | 2023-12-18 | 数据库数据压缩方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117421288A true CN117421288A (zh) | 2024-01-19 |
Family
ID=89532832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311737983.2A Pending CN117421288A (zh) | 2023-12-18 | 2023-12-18 | 数据库数据压缩方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117421288A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851691A (zh) * | 2005-04-22 | 2006-10-25 | 北京九州软件有限公司 | 数据库备份数据的压缩和检索方法 |
CN112905551A (zh) * | 2019-12-04 | 2021-06-04 | 阿里巴巴集团控股有限公司 | 数据压缩方法、装置、电子设备及计算机可读存储介质 |
US20220114347A1 (en) * | 2019-08-01 | 2022-04-14 | Fujitsu Limited | Control method, control program, and information processing device |
CN114710482A (zh) * | 2022-03-23 | 2022-07-05 | 马上消费金融股份有限公司 | 文件检测方法、装置、电子设备及存储介质 |
CN116841973A (zh) * | 2023-07-07 | 2023-10-03 | 哈尔滨工业大学 | 面向嵌入式数据库的数据智能化压缩方法及系统 |
-
2023
- 2023-12-18 CN CN202311737983.2A patent/CN117421288A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851691A (zh) * | 2005-04-22 | 2006-10-25 | 北京九州软件有限公司 | 数据库备份数据的压缩和检索方法 |
US20220114347A1 (en) * | 2019-08-01 | 2022-04-14 | Fujitsu Limited | Control method, control program, and information processing device |
CN112905551A (zh) * | 2019-12-04 | 2021-06-04 | 阿里巴巴集团控股有限公司 | 数据压缩方法、装置、电子设备及计算机可读存储介质 |
CN114710482A (zh) * | 2022-03-23 | 2022-07-05 | 马上消费金融股份有限公司 | 文件检测方法、装置、电子设备及存储介质 |
CN116841973A (zh) * | 2023-07-07 | 2023-10-03 | 哈尔滨工业大学 | 面向嵌入式数据库的数据智能化压缩方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210318836A1 (en) | Data compression method and apparatus | |
CN104144216A (zh) | 可穿戴终端的数据处理方法和装置 | |
CN111078701B (zh) | 基于关系型数据库的数据抽取方法及装置 | |
US11372812B2 (en) | Mobile device and method capable of earlier determining that a number of files in a directory of an external connected storage device is about to full | |
CN103902589A (zh) | 一种下载文件的管理方法及装置 | |
EP3229444A1 (en) | Server and method for compressing data by server | |
CN111880966A (zh) | 一种数据库数据恢复方法和装置 | |
CN111125034A (zh) | 一种聚合对象数据处理方法、系统及相关设备 | |
CN109697019B (zh) | 基于fat文件系统的数据写入的方法和系统 | |
CN110209731A (zh) | 数据同步方法、装置、及存储介质、电子装置 | |
CN111857574A (zh) | 一种写请求数据压缩方法、系统、终端及存储介质 | |
CN111966647A (zh) | 一种小文件的云存储方法、装置、服务器及存储介质 | |
CN117421288A (zh) | 数据库数据压缩方法及装置 | |
WO2022110405A1 (zh) | 基于区块链的链上存储方法、装置、终端设备及介质 | |
CN114466387B (zh) | 基站的配置文件的更新方法、装置、存储介质和电子装置 | |
CN116303297A (zh) | 文件压缩处理方法、装置、设备及介质 | |
CN112615973B (zh) | 一种图片显示方法、装置、服务器和计算机可读存储介质 | |
CN115617800A (zh) | 数据读取方法、装置、电子设备及存储介质 | |
CN110704198A (zh) | 数据操作方法、装置、存储介质以及处理器 | |
CN114356212A (zh) | 数据处理方法、系统及计算机可读存储介质 | |
CN112601106A (zh) | 视频图像的处理方法、装置及存储介质 | |
CN114168074A (zh) | 镜像存储方法、装置、存储介质以及电子设备 | |
CN113468275A (zh) | 图数据库的数据导入方法和装置、存储介质及电子设备 | |
CN113568939B (zh) | 能耗监控方法、装置、服务器及计算机可读存储介质 | |
CN108874891B (zh) | 一种便于家庭云盘文件阅览的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |