KR-20260064454-A - Method for Archiving Versioned Files Using Multiple Queues and Computing Device Employing the Same
Abstract
The present invention relates to a multi-queue-based archiving method for version control files and a computing device for the same. A multi-queue-based archiving method for version control files using a computing device according to one embodiment of the present invention may include: a step in which an inspection thread compares files stored in a source repository and an archive repository to determine target objects corresponding to transmission targets; a step in which the inspection thread records a transmission request for the target objects in one of a plurality of queues; and a step in which a transmission thread sequentially transmits the target objects stored in the source repository to the archive repository according to the order of the transmission requests recorded in the queue matched with the transmission thread among the plurality of queues.
Inventors
- 이창노
- 김세준
- 주재민
Assignees
- 삼성에스디에스 주식회사
Dates
- Publication Date
- 20260507
- Application Date
- 20250416
- Priority Date
- 20241031
Claims (20)
- In a multiple queue-based archiving method for versioning files using a computing device, A step in which a Checker Thread compares files stored in Source Storage and Archive Storage to determine target objects corresponding to the transmission targets; The above inspection thread records a transmission request for the target object in one of a plurality of queues; and An archiving method comprising the step of a transfer thread sequentially transferring the target objects stored in the source repository to the archive repository according to the order of the transfer requests recorded in the queue matched with the transfer thread among the plurality of queues.
- In claim 1, the step of determining the target objects An archiving method that uses the keys of files stored in the source repository to identify each object corresponding to a different version of the same file and determines the target object among the objects.
- In paragraph 2, the above key is An archiving method comprising at least one of the path information, filename, and file size of the above file.
- In paragraph 2, the step of recording the transmission request An archiving method in which, when the above target object corresponds to each object corresponding to a different version of the same file, the inspection thread records each transmission request for the above target objects in the same queue.
- In paragraph 4, the step of recording the transmission request An archiving method in which, when the above target object corresponds to each object corresponding to a different version of the same file, the inspection thread sequentially records each transmission request for the above target objects into the same queue according to the version order of the above target objects.
- In paragraph 1, the step of recording the transmission request An archiving method in which the inspection thread refers to a transmission amount array in which transmission amounts corresponding to each transmission request recorded in the plurality of queues are stored, selects one of the plurality of queues, and records the transmission request in the selected queue.
- In paragraph 6, the step of recording the transmission request is An archiving method that selects the queue with the smallest transmission amount among the plurality of queues by referring to the above transmission amount array.
- In paragraph 6, the step of recording the transmission request is An archiving method in which the inspection thread records a transmission request in the selected queue and adds a transmission amount corresponding to the transmission request to a corresponding queue within the transmission amount array.
- In paragraph 1, the step of recording the transmission request An archiving method in which the inspection thread sequentially selects one of the plurality of queues according to a preset order and records the transmission request in the selected queue.
- In paragraph 1, the inspection thread and the transmission thread are An archiving method in which multiple instances are created and executed within the computing device for parallel processing.
- In Clause 10, the above plurality of queues An archiving method provided in a number corresponding to the number of transmission threads, so as to enable one-to-one matching with the transmission threads.
- A computer program stored on a medium in combination with hardware to execute the archiving method of any one of claims 1 to 11.
- A computing device comprising a processor and performing multiple queue-based archiving for versioning files, The above processor is, A checker thread compares files stored in source storage and archive storage to determine target objects corresponding to the transfer target; The above inspection thread records a transmission request for the target object in one of a plurality of queues; and A computing device comprising a transfer thread that executes the transfer of the target objects stored in the source repository sequentially to the archive repository according to the order of the transfer requests recorded in the queue that matches the transfer thread among the plurality of queues.
- In Clause 13, determining the above target objects is A computing device that uses the keys of files stored in the source repository to identify each object corresponding to a different version of the same file and determines the target object among the objects.
- In paragraph 14, recording the above transmission request is A computing device in which, when the above target object corresponds to each object corresponding to a different version of the same file, the inspection thread records each transmission request for the above target objects in the same queue.
- In paragraph 15, recording the above transmission request is A computing device in which, when the above target object corresponds to each object corresponding to a different version of the same file, the inspection thread sequentially records each transmission request for the above target objects into the same queue according to the version order of the above target objects.
- In Paragraph 13, recording the above transmission request is A computing device in which the inspection thread refers to a transmission amount array in which transmission amounts corresponding to each transmission request recorded in the plurality of queues are stored, selects one of the plurality of queues, and records the transmission request in the selected queue.
- In paragraph 17, recording the above transmission request is A computing device that selects the queue with the smallest transmission amount among the plurality of queues by referring to the above transmission amount array.
- In paragraph 17, recording the above transmission request is A computing device in which the above inspection thread records a transmission request in the above-mentioned selected queue and adds a transmission amount corresponding to the transmission request to a corresponding queue within the above-mentioned transmission amount array.
- In Clause 13, the inspection thread and the transmission thread are A computing device that is created and executed in multiple units within the computing device for parallel processing.
Description
Method for Archiving Versioned Files Using Multiple Queues and Computing Device Employing the Same The present invention relates to data archiving for the long-term safe preservation of data, and more specifically, to a method for archiving version control files to which version control is applied based on a multi-queue and a computing device for the same. An archive system is a system that securely transfers data stored in object storage used by various organizations, such as corporations, research institutes, and public institutions, to archive storage for long-term preservation. For example, organizations like corporations need to organize, store, and manage data for long-term retention for purposes such as regulatory compliance, auditing, backups, and cost reduction; in this process, an archive system can be utilized to transfer data stored in source repositories to archive storage for safekeeping. The archive system can select data to be archived from the data stored in the source repository and transfer the selected data from the source repository to the archive repository. Here, the source repository may store version-controlled files to which version control is applied, and in the case of version-controlled files, multiple versions of the file may exist. When archiving version control files, it is necessary to transmit them sequentially while maintaining the order of each version; however, in some cases, versions may be transmitted out of order. That is, depending on transmission conditions such as the communication environment or data volume, the transmission of higher-priority versions may be delayed while that of lower-priority versions is faster, potentially resulting in lower-priority versions being completed first. In such cases, issues may arise within the archive repository, such as the individual versions of the corresponding version control file becoming out of order. FIG. 1 is a schematic diagram showing an archiving system according to one embodiment of the present invention. FIG. 2 is a schematic diagram showing the operation of an archiving device using a single queue. FIG. 3 is a block diagram showing an archiving device according to one embodiment of the present invention. FIG. 4 is a schematic diagram showing the operation of an archiving device according to one embodiment of the present invention. FIG. 5 is a block diagram illustrating a computing environment suitable for use in exemplary embodiments of the present invention. FIG. 6 is a flowchart illustrating a multi-queue based archiving method for version control files according to an embodiment of the present invention. FIG. 7 is a flowchart illustrating the step of recording a transmission request according to an embodiment of the present invention. Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Identical or similar components regardless of drawing symbols will be assigned the same reference number, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" for components used in the following description are assigned or used interchangeably solely for the ease of drafting the specification and do not inherently possess distinct meanings or roles. That is, the term "part" used in this invention refers to a hardware component such as software, FPGA, or ASIC, and the "part" performs certain roles. However, the meaning of "part" is not limited to software or hardware. The "part" may be configured to reside in an addressable storage medium or may be configured to run one or more processors. Accordingly, as an example, a 'part' includes components such as software components, object-oriented software components, class components, and task components, as well as processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within the components and 'parts' may be combined into a smaller number of components and 'parts' or further separated into additional components and 'parts'. In addition, when describing the embodiments disclosed in this specification, if it is determined that a detailed description of related prior art may obscure the essence of the embodiments disclosed in this specification, such detailed description is omitted. Furthermore, the attached drawings are intended only to facilitate understanding of the embodiments disclosed in this specification, and the technical concept disclosed in this specification is not limited by the attached drawings; it should be understood that they include all modifications, equivalents, and substitutions that fall within the spirit and technical scope of the present invention. FIG. 1 is a schematic diagram showing an archiving system according to one embodiment of the present invention. Referring to FIG. 1, an archiving system (1