CN112395252A - 文件合并方法、装置及电子设备 - Google Patents
文件合并方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112395252A CN112395252A CN202011082613.6A CN202011082613A CN112395252A CN 112395252 A CN112395252 A CN 112395252A CN 202011082613 A CN202011082613 A CN 202011082613A CN 112395252 A CN112395252 A CN 112395252A
- Authority
- CN
- China
- Prior art keywords
- file
- files
- folder
- hidden
- merging
- 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
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000005192 partition Methods 0.000 claims abstract description 74
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1748—De-duplication implemented within the file system, e.g. based on file segments
- G06F16/1756—De-duplication implemented within the file system, e.g. based on file segments based on delta files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Abstract
本申请公开了一种文件合并方法、装置及电子设备,所述方法包括:从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件。将多个第一文件移动至数据分区中的临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏。将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种文件合并方法、装置及电子设备。
背景技术
应用程序的日志在多个服务器同时运行时,上报到kafka的日志由消费者进程消费处理后,会以分布式存储的方式,对这些日志文件以ORC(Optimized Row Columnar)文件的格式进行压缩存储。由于ORC文件是分批落地,因此为保证实时查询的需要,每个批次的间隔需尽可能的小,且对于海量数据的采集,往往会使用多个消费者进行落地,导致分布式存储上的日志是以大量的ORC小文件形式落地,影响日志查询效率。为此,现有技术通过Hive提供的SQL(Structured Query Language)指令对这些ORC文件进行合并,以提高查询效率。
但由于Hive提供的SQL指令是在Hive分区映射的hdfs(Hadoop分布式文件系统)的文件夹上直接处理的,在合并结束后计算引擎会删除原文件夹的文件。因此在对有新增文件的文件夹上进行文件合并时,若新增文件为实时新增且文件合并过程所需时间过长,则在将合并后的文件覆盖到原文件夹时,会导致合并过程中该文件夹新增的文件被删除,造成数据丢失。
发明内容
本申请的目的在于至少解决现有技术中存在的技术问题之一,提供一种文件合并方法、装置及电子设备,避免文件在合并过程中,实时新增的文件被删除导致数据丢失,从而保证被存储的文件的完整性。
本申请实施例提供一种文件合并方法,包括:
从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件。
将多个第一文件移动至数据分区中的临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏。
将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
进一步的,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
检测多个第一文件的总文件尺寸,并在检测到多个第一文件的总文件尺寸处于预设范围时,生成临时文件夹,并将多个第一文件移动至临时文件夹。
进一步的,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
扫描文件属性数据库,获取多个第一文件中各第一文件的各文件属性,文件属性数据库记录有第一文件的属性数据,属性数据包括第一文件的文件尺寸。
根据各第一文件的各文件属性,检测多个第一文件的总文件尺寸。
进一步的,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统的元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
进一步的,在以将第二文件回写至数据分区后,还包括:
将第二文件的文件属性发送至文件属性数据库。
进一步的,在检测到第二文件完全发送至隐藏文件夹后,还包括:
删除临时文件夹。
进一步的,在本申请实施例中,提供了一种文件合并装置,包括:
文件获取模块,用于从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件;
文件合并模块,用于将多个第一文件移动至数据分区中的临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏;
属性变更模块,用于将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
进一步的,文件合并模块还用于:
检测多个第一文件的总文件尺寸,并在检测到多个第一文件的总文件尺寸处于预设范围时,生成临时文件夹,并将多个第一文件移动至临时文件夹。
进一步的,文件合并模块还用于:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
进一步的,本申请实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施例所述的文件合并方法。
进一步的,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上述实施例所述的文件合并方法。
相比于现有技术,上述实施例通过将待合并的多个文件移动到非隐藏的临时文件夹中进行合并处理,并将合并后的文件发送到隐藏文件夹中,在发送结束后将隐藏文件夹变更为非隐藏文件夹并存储合并后文件,利用了计算引擎不会识别隐藏文件夹中数据的特性,使得在文件合并过程中不会将合并后文件覆盖到原处而导致实时新增的文件被删除,从而避免数据丢失,保证被存储的文件的完整性。并且在文件合并过程中不进行复制,避免文件复制产生的网络传输而导致时间开销增大。
上述实施例通过检测到待合并文件的文件总大小达到预设范围时才进行文件合并,使得合并后的文件大小靠近数据块的尺寸,无需多次合并。
上述实施例通过确定文件属性中的文件尺寸来确定所要合并的文件,无需扫描文件系统的分区目录,有效地减轻文件系统元数据服务的压力。
上述实施例通过修改文件在系统的元数据上的索引节点来实现文件的移动,使得计算引擎对于文件移动和合并的过程无感知,保证了数据的时效性。
上述实施例通过将合并后文件的属性发送到文件属性数据库中,更改文件属性数据库的合并状态,避免重复合并。
上述实施例通过合并发送后删除临时文件夹,保证数据的时效性。
附图说明
下面结合附图和实施例对本申请进一步地说明;
图1为一个实施例中文件合并方法的应用环境图。
图2为一个实施例中文件合并方法的流程示意图。
图3为另一个实施例中文件合并方法的流程示意图。
图4位又一个实施例中文件合并方法的流程示意图。
图5为一个实施例中文件合并装置的结构示意图。
图6为一个实施例中计算机设备的结构框图。
具体实施方式
本部分将详细描述本申请的具体实施例,本申请之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本申请的每个技术特征和整体技术方案,但其不能理解为对本申请保护范围的限制。
现有技术的文件合并方式,是通过Hive提供的SQL(Structured Query Language)指令对这些ORC文件进行合并,以提高查询效率。但由于Hive提供的SQL指令是在Hive分区映射的hdfs(Hadoop分布式文件系统)的文件夹上直接处理的,在合并结束后计算引擎会删除原文件夹的文件。因此在对有新增文件的文件夹上进行文件合并时,若新增文件为实时新增且文件合并过程所需时间过长,则在将合并后的文件覆盖到原文件夹时,会导致合并过程中该文件夹新增的文件被删除,造成数据丢失。
为了解决上述问题,如图1所示,是一个实施例中文件合并方法的应用环境图。参照图1,该文件合并系统包括终端110和分布式文件系统120。终端110和分布式文件系统120通过网络连接。终端110具体可以是台式终端110或移动终端110,移动终端可以是手机、平板电脑、笔记本电脑等中的至少一种。分布式文件系统(Distributed File System,DFS)120是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点(可简单的理解为一台计算机)相连;或是若干不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件系统。其中,终端110从分布式文件系统120中获取待合并文件进行合并,并将合并后文件回写至分布式文件系统120中。
下面,将通过几个具体的实施例对本申请实施例提供的文件合并方法进行详细介绍和说明。
如图2所示,在一个实施例中,提供了一种文件合并方法。本实施例主要以该方法应用于终端来举例说明。该终端具体可以是上述图1中的终端110。
参照图2,该文件合并方法具体包括如下步骤:
S11、从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件。
其中,相对于合并后的第二文件,第一文件为分布式文件系统中合并之前的需要合并的小文件。
inode为分布式文件系统中的一种元数据结构,用来存放档案及目录的基本信息,包含时间、档名、使用者、群组以及目录和文件的层级关系。
在一个实施例中,通过先行设定获取条件,根据该合并条件实时跟踪每个数据分区中未合并的文件,当未合并的文件满足获取条件时,终端从分布式文件系统中获取满足合并条件的多个第一文件。
其中,获取条件可以为当第一文件数量达到设定值时,终端从分布式文件系统中获取多个第一文件。
在另一个实施例中,根据多个第一文件inode的文件属性中的合并状态,根据该合并状态实时跟踪数据分区中未合并的文件,终端从分布式文件系统中获取合并状态为未合并的多个第一文件。
S12、将多个第一文件移动至数据分区中的临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏。
在一个实施例中,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统的元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
在本实施例中,通过将分布式文件系统的元数据上的索引节点,即inode的文件属性中的存储地址,修改为临时文件夹的存储地址,不需要采用文件复制后进行合并的方式,降低了时间开销。
由于计算引擎具有不会识别隐藏文件夹中的数据的特性。因此,在本实施例中,通过修改临时文件夹的inode,将临时文件夹的文件属性的隐藏状态设为非隐藏,使得在合并过程中,不影响计算引擎对该临时文件中多个待合并的第一文件的查询,有效地降低合并过程对于相关文件查询访问的影响。
在本实施例中,当一个数据分区需要进行文件合并时,将多个第一文件移动至该数据分区的临时文件夹中,针对这个数据分区启动一个MapReduce任务。其中,MapReduce任务利用ORC标准官方的api提供的输入/输出库,对临时文件夹中的多个第一文件进行合并处理。
S13、将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
在本实施例中,MapReduce任务将合并后的第二文件写入第一文件所属数据分区中的隐藏文件夹,并且根据hdfs文件夹的特性,仅通过对隐藏文件夹的inode进行操作,将隐藏文件夹的文件属性的隐藏状态由隐藏变更为非隐藏,使得上述过程对计算引擎来说是透明且无感知的,保证数据的时效性,并且利用了计算引擎具有不会识别隐藏文件夹中的数据的特性,使得计算引擎不会删除合并过程中新增的文件。
在一个实施例中,在以将第二文件回写至数据分区后,还包括:
将第二文件的文件属性发送至文件属性数据库。
在本实施例中,多个第一文件合并成第二文件后,由于文件属性数据库中还存储有多个第一文件的属性数据,因此将第二文件的文件属性发送到文件属性数据库中来修改已合并的多个第一文件的属性数据,进而更改多个第一文件在文件属性数据库中的合并状态,使得在跟踪文件属性数据库中数据分区的未合并文件时,能够避免重复计算已合并的多个第一文件。
在一个实施例中,在检测到第二文件完全发送至隐藏文件夹后,还包括:
删除临时文件夹。
在本实施例中,hdfs文件夹的整体删除通过文件夹对应的inode进行操作。因此,通过修改临时文件夹对应的inode来进行临时文件夹的删除。
在本实施例中,待合并的多个第一文件需在同一数据分区中。当多个数据分区中均存在待合并的第一文件,并且达到合并条件时,能够以每个数据分区为单位,启动多个MapReduce任务并行执行。
在本实施例中,通过将待合并的多个文件移动到非隐藏的临时文件夹中进行合并处理,并将合并后的文件发送到隐藏文件夹中,在发送结束后将隐藏文件夹变更为非隐藏文件夹并存储合并后文件,利用了计算引擎不会识别隐藏文件夹中数据的特性,使得在文件合并过程中不会将合并后文件覆盖到原处而导致实时新增的文件被删除,从而避免数据丢失,保证被存储的文件的完整性。并且在文件合并过程中不进行复制,避免文件复制产生的网络传输而导致时间开销增大。
如图3所示,在另一个实施例中,提供了一种文件合并方法。本实施例主要以该方法应用于终端来举例说明。该终端具体可以是上述图1中的终端110。
参照图3,该文件合并方法具体包括如下步骤:
S21、从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件。
此步骤与上述实施例相同,具体解析可以参照上述实施例,为了避免重复,在此不再赘述。
S22、检测多个第一文件的总文件尺寸,并在检测到多个第一文件的总文件尺寸处于预设范围时,生成临时文件夹,并将多个第一文件移动至临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏。
分布式存储都有数据块的尺寸配置,为了计算引擎的效率考虑,会尽可能的减少计算引擎和分布式服务之间的元数据通讯,数据块数量要求尽可能的少。但由于Hive提供的sql指令在合并大量的orc文件时,合并后的文件大小是不可控的,导致合并文件经常需要在多次合并后可向数据块的尺寸靠近。为解决上述问题,在本实施例中,通过检测到待合并文件的文件总大小达到预设范围时才进行文件合并,使得合并后的文件大小靠近hdfs中的数据块的尺寸,无需多次合并。为避免合并文件的大小超过数据块的大小,因此该预设范围的最大值为数据块的大小。在预设范围的最小值与数据块相差一定的设定值,该设定值可根据实际情况进行调整,在此不多赘述。
在一个实施例中,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统的元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
在本实施例中,通过将临时文件夹的存储地址替换多个第一文件对应的inode的文件属性中的存储地址,实现将多个第一文件移动至临时文件夹中。
S23、将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
此步骤与上述实施例相同,具体解析可以参照上述实施例,为了避免重复,在此不再赘述。
如图4所示,在另一个实施例中,提供了一种文件合并方法。本实施例主要以该方法应用于终端来举例说明。该终端具体可以是上述图1中的终端110。
参照图4,该文件合并方法具体包括如下步骤:
S31、从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件。
此步骤与上述实施例相同,具体解析可以参照上述实施例,为了避免重复,在此不再赘述。
S32、扫描文件属性数据库,获取多个第一文件中各第一文件的各文件属性,文件属性数据库记录有第一文件的属性数据,属性数据包括第一文件的文件尺寸。
在本实施例中,从分布式文件系统的数据库中获取各个数据分区的待合并文件,可以通过扫描分布式文件系统的数据库中各个数据分区的目录来获取待合并文件,而这种方式需要根据分布式文件系统各个文件的元数据上的inode进行遍历,这样会给分布式文件系统的元数据服务增加很大的运行压力。
因此,在本实施例中,通过生成第一文件时,将文件所属数据分区、文件存储地址、文件尺寸大小和文件生成时间写入文件属性数据库中,数据库跟踪每个数据分区中未合并的文件,当数据分区中未合并文件满足合并条件时,则针对这个数据分区启动一个MapReduce任务。上述方式能够避免遍历数据分区中的文件,减轻分布式文件系统元数据服务的压力。
在本实施例中,通过确定文件属性中的文件尺寸来确定所要合并的文件,无需扫描文件系统的分区目录,有效地减轻文件系统元数据服务的压力。
S33、根据各第一文件的各文件属性,检测多个第一文件的总文件尺寸,并在检测到多个第一文件的总文件尺寸处于预设范围时,生成临时文件夹,并将多个第一文件移动至临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏。
在本实施例中,通过检测待合并文件文件属性的文件尺寸,在检测到待合并文件的文件总大小达到预设范围时才进行文件合并,使得合并后的文件大小靠近hdfs中的数据块的尺寸,无需多次合并。为避免合并文件的大小超过数据块的大小,因此该预设范围的最大值为数据块的大小。在预设范围的最小值与数据块相差一定的设定值,该设定值可根据实际情况进行调整,在此不多赘述。
在一个实施例中,所述将多个第一文件移动至数据分区中的临时文件夹,包括:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统的元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
在本实施例中,通过将临时文件夹的存储地址替换多个第一文件对应的inode的文件属性中的存储地址,实现将多个第一文件移动至临时文件夹中。
S34、将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
此步骤与上述实施例相同,具体解析可以参照上述实施例,为了避免重复,在此不再赘述。
进一步的,如图5所示,提供了一种文件合并装置,包括:
文件获取模块101,用于从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件;
文件合并模块102,用于将多个第一文件移动至数据分区中的临时文件夹,并对临时文件夹中的多个第一文件进行合并处理,形成第二文件,临时文件夹的文件属性为非隐藏;
属性变更模块103,用于将第二文件发送至数据分区中的隐藏文件夹,并在检测到第二文件完全发送至隐藏文件夹后,将隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
在一个实施例中,文件合并模块102,还用于:
检测多个第一文件的总文件尺寸,并在检测到多个第一文件的总文件尺寸处于预设范围时,生成临时文件夹,并将多个第一文件移动至临时文件夹。
在一个实施例中,文件合并模块102,还用于:
根据临时文件夹的存储地址,修改多个第一文件在分布式文件系统元数据上的索引节点,以将多个第一文件移动至数据分区中的临时文件夹。
在一个实施例中,提供了一种计算机设备,如图6所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现文件合并方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行文件合并方法。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的文件合并装置可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成文件合并装置的各个程序模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的文件合并方法中的步骤。
在一个实施例中,提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时执行上述文件合并方法的步骤。此处文件合并方法的步骤可以是上述各个实施例的文件合并方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述文件合并方法的步骤。此处文件合并方法的步骤可以是上述各个实施例的文件合并方法中的步骤。
以上所述是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本申请的保护范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
Claims (10)
1.一种文件合并方法,其特征在于,包括:
从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件;
将所述多个第一文件移动至所述数据分区中的临时文件夹,并对所述临时文件夹中的所述多个第一文件进行合并处理,形成第二文件,所述临时文件夹的文件属性为非隐藏;
将所述第二文件发送至所述数据分区中的隐藏文件夹,并在检测到所述第二文件完全发送至所述隐藏文件夹后,将所述隐藏文件夹的文件属性由隐藏变更为非隐藏,以将所述第二文件回写至所述数据分区。
2.根据权利要求1所述的一种文件合并方法,其特征在于,所述将所述多个第一文件移动至所述数据分区中的临时文件夹,包括:
检测所述多个第一文件的总文件尺寸,并在检测到所述多个第一文件的总文件尺寸处于预设范围时,生成所述临时文件夹,并将所述多个第一文件移动至所述临时文件夹。
3.根据权利要求2所述的一种文件合并方法,其特征在于,所述检测所述多个第一文件的总文件尺寸,包括:
扫描文件属性数据库,获取所述多个第一文件中各所述第一文件的各文件属性,所述文件属性数据库记录有所述第一文件的属性数据,所述属性数据包括所述第一文件的文件尺寸;
根据各所述第一文件的各文件属性,检测所述多个第一文件的总文件尺寸。
4.根据权利要求1或2所述的一种文件合并方法,其特征在于,所述将所述多个第一文件移动至所述数据分区中的临时文件夹,包括:
根据所述临时文件夹的存储地址,修改所述多个第一文件在所述分布式文件系统的元数据上的索引节点,以将所述多个第一文件移动至所述数据分区中的临时文件夹。
5.根据权利要求1所述的一种文件合并方法,其特征在于,在存储所述第二文件后,还包括:
将所述第二文件的文件属性发送至所述文件属性数据库。
6.根据权利要求1所述的一种文件合并方法,其特征在于,在检测到所述第二文件完全发送至所述隐藏文件夹后,还包括:
删除所述临时文件夹。
7.一种文件合并装置,其特征在于,包括:
文件获取模块,用于从分布式文件系统的数据库中获取数据分区中待合并的多个第一文件;
文件合并模块,用于将所述多个第一文件移动至所述数据分区中的临时文件夹,并对所述临时文件夹中的所述多个第一文件进行合并处理,形成第二文件,所述临时文件夹的文件属性为非隐藏;
属性变更模块,用于将所述第二文件发送至所述数据分区中的隐藏文件夹,并在检测到所述第二文件完全发送至所述隐藏文件夹后,将所述隐藏文件夹的文件属性由隐藏变更为非隐藏,以将第二文件回写至数据分区。
8.根据权利要求7所述的一种文件合并装置,其特征在于,所述文件合并模块还用于:
检测所述多个第一文件的总文件尺寸,并在检测到所述多个第一文件的总文件尺寸处于预设范围时,生成所述临时文件夹,并将所述多个第一文件移动至所述临时文件夹。
9.根据权利要求7或8所述的一种文件合并装置,其特征在于,所述文件合并模块还用于:
根据所述临时文件夹的存储地址,修改所述多个第一文件在所述分布式文件系统所述元数据上的索引节点,以将所述多个第一文件移动至所述数据分区中的临时文件夹。
10.一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6中任一项所述的文件合并方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011082613.6A CN112395252A (zh) | 2020-10-10 | 2020-10-10 | 文件合并方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011082613.6A CN112395252A (zh) | 2020-10-10 | 2020-10-10 | 文件合并方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112395252A true CN112395252A (zh) | 2021-02-23 |
Family
ID=74595847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011082613.6A Pending CN112395252A (zh) | 2020-10-10 | 2020-10-10 | 文件合并方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112395252A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112925759A (zh) * | 2021-03-31 | 2021-06-08 | 北京金山云网络技术有限公司 | 数据文件的处理方法和装置、存储介质、电子装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7603533B1 (en) * | 2003-07-22 | 2009-10-13 | Acronis Inc. | System and method for data protection on a storage medium |
KR20140062750A (ko) * | 2012-11-15 | 2014-05-26 | 김종환 | 숨김파일 백업을 통한 파일제어방법 |
WO2017032307A1 (zh) * | 2015-08-27 | 2017-03-02 | 北京金山安全软件有限公司 | 一种文件夹的合并方法及装置 |
CN106909855A (zh) * | 2017-03-24 | 2017-06-30 | 腾讯科技(深圳)有限公司 | 文件隐藏方法及装置 |
US10089316B1 (en) * | 2015-06-29 | 2018-10-02 | EMC IP Holding Company LLC | Managing multiple file system expansions |
CN109241063A (zh) * | 2018-09-27 | 2019-01-18 | 中国银行股份有限公司 | 一种数据合并方法及系统 |
CN110321329A (zh) * | 2019-06-18 | 2019-10-11 | 中盈优创资讯科技有限公司 | 基于大数据的数据处理方法及装置 |
-
2020
- 2020-10-10 CN CN202011082613.6A patent/CN112395252A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7603533B1 (en) * | 2003-07-22 | 2009-10-13 | Acronis Inc. | System and method for data protection on a storage medium |
KR20140062750A (ko) * | 2012-11-15 | 2014-05-26 | 김종환 | 숨김파일 백업을 통한 파일제어방법 |
US10089316B1 (en) * | 2015-06-29 | 2018-10-02 | EMC IP Holding Company LLC | Managing multiple file system expansions |
WO2017032307A1 (zh) * | 2015-08-27 | 2017-03-02 | 北京金山安全软件有限公司 | 一种文件夹的合并方法及装置 |
CN106909855A (zh) * | 2017-03-24 | 2017-06-30 | 腾讯科技(深圳)有限公司 | 文件隐藏方法及装置 |
CN109241063A (zh) * | 2018-09-27 | 2019-01-18 | 中国银行股份有限公司 | 一种数据合并方法及系统 |
CN110321329A (zh) * | 2019-06-18 | 2019-10-11 | 中盈优创资讯科技有限公司 | 基于大数据的数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
CHRIS C: "How do I Combine or Merge Small ORC files into Larger ORC file?", pages 1 - 6, Retrieved from the Internet <URL:https://stackoverflow.com/questions/50042225/how-do-i-combine-or-merge-small-orc-files-into-larger-orc-file> * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112925759A (zh) * | 2021-03-31 | 2021-06-08 | 北京金山云网络技术有限公司 | 数据文件的处理方法和装置、存储介质、电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11836112B2 (en) | Path resolver for client access to distributed file systems | |
US11010401B2 (en) | Efficient snapshot generation of data tables | |
CN103595797B (zh) | 一种分布式存储系统中的缓存方法 | |
CN109739828B (zh) | 一种数据处理方法、设备及计算机可读存储介质 | |
CN104881466A (zh) | 数据分片的处理以及垃圾文件的删除方法和装置 | |
US20220083504A1 (en) | Managing snapshotting of a dataset using an ordered set of b+ trees | |
WO2014166446A1 (zh) | 文件访问处理方法、系统及计算机存储介质 | |
CN113806300B (zh) | 数据存储方法、系统、装置、设备及存储介质 | |
WO2023066182A1 (zh) | 文件处理方法、装置、设备及存储介质 | |
CN114138776A (zh) | 图结构和图属性分离设计的方法、系统、装置和介质 | |
US10642817B2 (en) | Index table update method, and device | |
CN109684270A (zh) | 数据库归档方法、装置、系统、设备及可读存储介质 | |
CN112395252A (zh) | 文件合并方法、装置及电子设备 | |
CN113239012A (zh) | 一种数据库迁移方法、装置、电子设备和存储介质 | |
CN111753141A (zh) | 一种数据管理方法及相关设备 | |
CN111752941A (zh) | 一种数据存储、访问方法、装置、服务器及存储介质 | |
CN115510016A (zh) | 一种基于目录分片的客户端应答方法、装置及介质 | |
US11494105B2 (en) | Using a secondary storage system to implement a hierarchical storage management plan | |
CN111625500B (zh) | 文件快照方法及装置、电子设备和存储介质 | |
US11074244B1 (en) | Transactional range delete in distributed databases | |
CN109857719B (zh) | 分布式文件处理方法、装置、计算机设备以及存储介质 | |
CN108376104B (zh) | 节点调度方法及装置、计算机可读存储介质 | |
CN113515518A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN116578247B (zh) | 一种基于元数据的数据存取方法及系统 | |
CN114443713A (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 |