KR20230173351A - Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services - Google Patents

Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services Download PDF

Info

Publication number
KR20230173351A
KR20230173351A KR1020220074011A KR20220074011A KR20230173351A KR 20230173351 A KR20230173351 A KR 20230173351A KR 1020220074011 A KR1020220074011 A KR 1020220074011A KR 20220074011 A KR20220074011 A KR 20220074011A KR 20230173351 A KR20230173351 A KR 20230173351A
Authority
KR
South Korea
Prior art keywords
data
backup
server
unit
user terminal
Prior art date
Application number
KR1020220074011A
Other languages
Korean (ko)
Inventor
최찬엽
Original Assignee
주식회사 도시엔컴
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 주식회사 도시엔컴 filed Critical 주식회사 도시엔컴
Priority to KR1020220074011A priority Critical patent/KR20230173351A/en
Publication of KR20230173351A publication Critical patent/KR20230173351A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 데이터 통합 관리 시스템에 관한 것으로, 서버 이중화를 통해 데이터를 관리하고, 그 데이터를 공유할 수 있는 스토리지 제공하며, 기 설정된 백업 스케줄에 따라 그 데이터의 백업 서비스가 가능한 데이터 통합 관리 시스템에 관한 것이다. 본 발명에 따른 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템은 서버 이중화를 통해 서버 내 데이터를 관리하는 데이터 통합 관리 모듈, 복수 개의 사용자단말기로 네트워크 드라이브를 제공하며, 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 데이터 통합 관리 모듈이 관리하는 데이터에 접근하는 것을 가능하게 하는 네트워크 드라이브 모듈 및 상기 데이터 통합 관리 모듈이 관리하는 데이터를 기 설정된 스케줄에 따라 백업하는 백업 모듈을 포함한다.The present invention relates to a data integrated management system that manages data through server duplication, provides storage for sharing the data, and enables backup services for the data according to a preset backup schedule. will be. The data integrated management system capable of managing data through server duplication, providing shared storage, and data backup services according to the present invention provides a data integration management module that manages data in the server through server duplication, and a network drive to a plurality of user terminals. , a network drive module that allows the user terminal to access data managed by the data integrated management module through the network drive, and a backup module that backs up data managed by the data integrated management module according to a preset schedule. Includes.

Description

서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템{DATA INTEGRATED MANAGEMENT SYSTEM WITH SERVER REDUNDANCY FOR DATA MANAGEMENT, SHARED STORAGE DELIVERY, AND DATA BACKUP SERVICES}Data integrated management system capable of data management through server duplication, provision of shared storage, and data backup services {DATA INTEGRATED MANAGEMENT SYSTEM WITH SERVER REDUNDANCY FOR DATA MANAGEMENT, SHARED STORAGE DELIVERY, AND DATA BACKUP SERVICES}

본 발명은 데이터 통합 관리 시스템에 관한 것으로, 더욱 상세하게는 서버 이중화를 통해 데이터를 관리하고, 그 데이터를 공유할 수 있는 스토리지 제공하며, 기 설정된 백업 스케줄에 따라 그 데이터의 백업 서비스가 가능한 데이터 통합 관리 시스템에 관한 것이다.The present invention relates to a data integration management system, and more specifically, data integration that manages data through server duplication, provides storage for sharing the data, and enables backup services for the data according to a preset backup schedule. It's about management systems.

일반적으로 기업에서 대부분의 작업은 컴퓨터를 이용하여 수행되고 있다. 작업의 결과는 파일(워드(Word), 파워포인트(Powerpoint), 캐드(Cad) 등)로 생성이 된다. 이때 생성된 업무용 파일에 대한 협업과 보안을 높이기 위하여, 서버의 저장공간을 사용자단말기에 네트워크 드라이브로 제공하고, 사용자는 사용자단말기 내 네트워크 드라이브에서 업무용 파일을 생성. 저장, 수정 및 공유하는 기술이 주목 받고 있다.In general, most work in companies is performed using computers. The results of the work are created as files (Word, Powerpoint, CAD, etc.). In order to increase collaboration and security for business files created at this time, the server's storage space is provided to the user terminal as a network drive, and the user creates business files on the network drive in the user terminal. Technologies for storing, modifying, and sharing are attracting attention.

한편, 적어도 하나 이상의 서버를 위한 중앙집중형의 스토리지 시스템이 존재한다. 서버는 통신망으로 연결된 스토리지 시스템에 접속하여 데이터를 쓰거나 읽는다. 이때 서로 연결된 서버 중 어느 하나에 장애가 발생한 경우, 장애가 발생한 서버 내 데이터를 사용할 수 없어 큰 불편이 야기된다. 따라서 다른 서버에 동일한 데이터를 중복저장하여 어느 서버에 장애가 발생한 경우에도 데이터의 접근이 가능한 데이터 통합 관리 시스템의 필요성이 대두되고 있다.Meanwhile, a centralized storage system exists for at least one server. The server connects to a storage system connected to a communication network and writes or reads data. At this time, if one of the servers connected to each other fails, the data in the failed server cannot be used, causing great inconvenience. Therefore, there is an emerging need for an integrated data management system that stores the same data redundantly on different servers and allows access to the data even when a server fails.

한편, 서로 다른 서버에 동일한 데이터를 중복저장하는 이른바 서버 이중화에서는 실수로 반영된 데이터나 바이러스에 감염된 파일도 복제될 수 있다는 문제점을 가지고 있다. 따라서 실수로 반영된 데이터나 바이러스에 감염된 파일을 원복할 수 있는 백업 시스템의 필요성도 함께 대두되고 있다.Meanwhile, so-called server duplication, which stores the same data redundantly on different servers, has the problem that accidentally reflected data or virus-infected files can also be copied. Therefore, the need for a backup system that can restore data that has been accidentally reflected or files infected with viruses is also emerging.

대한민국 등록특허공보 제10-2084031호 (2020년05월29일 공고)Republic of Korea Patent Publication No. 10-2084031 (announced on May 29, 2020)

상술한 문제점을 해결하기 위한 본 발명의 목적은 서버 이중화를 통해 관리되는 데이터를 사용자단말기 내 마운트되는 네트워크 드라이브를 통해 접근하고, 서버 이중화를 통해 관리되는 데이터를 원복할 수 있는 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템을 제공하는 것이다.The purpose of the present invention to solve the above-mentioned problems is to access data managed through server duplication through a network drive mounted in the user terminal, and data management through server duplication to restore data managed through server duplication. , to provide an integrated data management system capable of providing shared storage and data backup services.

상술한 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템은 서버 이중화를 통해 서버 내 데이터를 관리하는 데이터 통합 관리 모듈, 복수 개의 사용자단말기로 네트워크 드라이브를 제공하며, 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 데이터 통합 관리 모듈이 관리하는 데이터에 접근하는 것을 가능하게 하는 네트워크 드라이브 모듈 및 상기 데이터 통합 관리 모듈이 관리하는 데이터를 기 설정된 스케줄에 따라 백업하는 백업 모듈을 포함한다.In order to achieve the above-mentioned purpose, a data integrated management system capable of data management, shared storage provision, and data backup service through server duplication according to an embodiment of the present invention is a data integration management system that manages data within the server through server duplication. module, a network drive module that provides a network drive to a plurality of user terminals and allows the user terminal to access data managed by the data integration management module through the network drive, and a network drive module managed by the data integration management module. Includes a backup module that backs up data according to a preset schedule.

이때 상기 데이터 통합 관리 모듈은, 복수 개의 서버를 포함하며, 상기 복수 개의 서버는 각각 로컬 저장소를 포함하고, 상기 데이터 통합 관리 모듈은, 상기 로컬 저장소를 그룹화하고, 동일 그룹의 로컬 저장소들은 동일한 데이터를 가지도록 관리하며, 상기 데이터 통합 관리 모듈은, 상기 복수 개의 서버 중 적어도 어느 하나의 서버에 장애가 발생하는 경우, 상기 적어도 어느 하나의 서버와 동일한 그룹의 다른 서버에 저장된 데이터를 상기 사용자단말기로 제공하여 사용자단말기의 데이터 사용 안정성을 보장한다.At this time, the data integration management module includes a plurality of servers, each of the plurality of servers includes a local storage, the data integration management module groups the local storage, and the local storage in the same group contains the same data. The data integration management module is configured to provide data stored on another server in the same group as the at least one server to the user terminal when a failure occurs in at least one of the plurality of servers. Ensures the stability of data use of the user terminal.

또한 상기 네트워크 드라이브 모듈은, 상기 사용자단말기로 네트워크 드라이브를 제공하는 드라이브 에이전트부 및 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 데이터 통합 관리 모듈이 포함하는 복수 개의 서버의 로컬 저장소에 접근하도록 하는 공유 스토리지부를 포함하며, 상기 드라이브 에이전트부는, 상기 사용자단말기가 장애가 발생한 서버에 저장된 데이터의 수신 요청 신호를 송신할 때, 상기 장애가 발생한 서버와 동일 그룹의 다른 서버에 저장된 데이터를 상기 사용자단말기로 제공하여, 사용자단말기의 데이터 사용 안정성을 보장한다.In addition, the network drive module includes a drive agent unit that provides a network drive to the user terminal and a shared storage unit that allows the user terminal to access local storage of a plurality of servers included in the data integration management module through the network drive. It includes, wherein the drive agent unit, when the user terminal transmits a signal requesting reception of data stored in the server in which the error occurred, provides data stored in another server in the same group as the server in which the error occurred to the user terminal, so that the user Ensures the stability of data use on the terminal.

한편, 상기 공유 스토리지부는, 상기 로컬 저장소 내 저장된 데이터를 수신하여 저장하고, 상기 드라이브 에이전트부는, 상기 공유 스토리지부에 저장된 데이터를 상기 사용자단말기의 운영체제의 데이터 시스템으로 전환하며, 상기 드라이브 에이전트부는, 전환된 데이터 시스템을 상기 사용자단말기의 단말기용 로컬 운영체제의 네트워크 드라이브로 마운트하여 제공하고, 상기 드라이브 에이전트부는, 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 공유 스토리지부에 접근하여 데이터를 생성, 수정 또는 삭제를 수행하면, 그 결과를 상기 로컬 저장소 내 데이터에 반영하여 복수 개의 사용자단말기가 상기 로컬 저장소 내 데이터를 공유할 수 있도록 한다.Meanwhile, the shared storage unit receives and stores data stored in the local storage, the drive agent unit converts the data stored in the shared storage unit into a data system of the operating system of the user terminal, and the drive agent unit converts the data stored in the shared storage unit into a data system of the operating system of the user terminal. The data system is provided by mounting it as a network drive of the local operating system for the user terminal, and the drive agent unit allows the user terminal to access the shared storage unit through the network drive to create, modify, or delete data. When performed, the results are reflected in the data in the local storage so that a plurality of user terminals can share the data in the local storage.

그리고 상기 데이터 통합 관리 모듈은, 상기 기 설정된 스케줄에 따라 상기 서버 내 데이터의 접근 권한을 부여하는 백업부를 더 포함하고, 상기 백업 모듈은, 상기 백업부를 통해 상기 기 설정된 스케줄에 따라 상기 서버 내 데이터 중 백업 대상 데이터를 지정하고, 지정된 백업 대상 데이터를 백업 데이터로 형성하는 백업 에이전트부 및 상기 백업 에이전트부가 형성한 백업 데이터를 수신하고 저장하는 백업 스토리지부를 포함한다.And the data integration management module further includes a backup unit that grants access to data in the server according to the preset schedule, and the backup module is configured to select data in the server according to the preset schedule through the backup unit. It includes a backup agent unit that specifies backup target data and forms the designated backup target data into backup data, and a backup storage unit that receives and stores the backup data formed by the backup agent unit.

본 발명인 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템에 따르면, 서버 이중화를 통해 관리되는 데이터를 사용자단말기 내 마운트되는 네트워크 드라이브를 통해 접근하고, 서버 이중화를 통해 관리되는 데이터를 원복할 수 있는 효과가 있다.According to the present inventor's integrated data management system capable of data management through server duplication, provision of shared storage, and data backup service, data managed through server duplication is accessed through a network drive mounted in the user terminal and managed through server duplication. It has the effect of restoring damaged data.

도 1은 본 발명에 따른 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템의 각 모듈을 보여주는 도면이다.
도 2는 본 발명에 따른 데이터 통합 관리 모듈의 각 구성을 보여주는 도면이다.
도 3은 본 발명에 따른 네트워크 드라이브 모듈의 각 구성을 보여주는 도면이다.
도 4는 본 발명에 따른 백업 모듈의 각 구성을 보여주는 도면이다.
도 5는 본 발명에 따른 백업 에이전트부의 각 구성을 보여주는 도면이다.
도 6은 본 발명에 따른 서버 부하도의 일 실시예를 보여주는 도면이다.
도 7은 본 발명에 따른 서버 부하도의 다른 일 실시예를 보여주는 도면이다.
도 8은 본 발명에 따른 서버 부하도의 또 다른 일 실시예를 보여주는 도면이다.
Figure 1 is a diagram showing each module of the data integrated management system capable of data management, shared storage provision, and data backup service through server duplication according to the present invention.
Figure 2 is a diagram showing each configuration of the data integration management module according to the present invention.
Figure 3 is a diagram showing each configuration of the network drive module according to the present invention.
Figure 4 is a diagram showing each configuration of the backup module according to the present invention.
Figure 5 is a diagram showing each configuration of the backup agent unit according to the present invention.
Figure 6 is a diagram showing an embodiment of a server load diagram according to the present invention.
Figure 7 is a diagram showing another embodiment of a server load diagram according to the present invention.
Figure 8 is a diagram showing another embodiment of a server load diagram according to the present invention.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.Hereinafter, some embodiments of the present invention will be described in detail through illustrative drawings. When adding reference signs to components in each drawing, it should be noted that the same components are given the same reference numerals as much as possible even if they are shown in different drawings.

그리고 본 발명의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다.Also, in describing embodiments of the present invention, if detailed descriptions of related known configurations or functions are judged to impede understanding of the embodiments of the present invention, the detailed descriptions will be omitted.

또한, 본 발명의 실시예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다.Additionally, when describing the components of an embodiment of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are only used to distinguish the component from other components, and the nature, sequence, or order of the component is not limited by the term.

본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 “포함한다” 및/또는 “포함하는” 은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.In this specification, singular forms also include plural forms unless specifically stated in the phrase. As used in the specification, “comprises” and/or “including” does not exclude the presence or addition of one or more other components in addition to the mentioned components.

이하, 첨부된 도면을 참조하여 본 발명을 보다 상세하게 설명하고자 한다.Hereinafter, the present invention will be described in more detail with reference to the attached drawings.

도 1은 본 발명에 따른 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템(1000)의 각 모듈을 보여주는 도면이다.Figure 1 is a diagram showing each module of the data integrated management system 1000 capable of data management, shared storage provision, and data backup service through server duplication according to the present invention.

본 발명에 따른 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템(1000)(이하, ‘시스템’이라 함)은, 도 1을 참조하면, 사용자단말기(220), 네트워크 드라이브 모듈(200), 데이터 통합 관리 모듈(100) 및 백업 모듈(300)을 포함한다. 각 모듈(100, 200, 300)들은 서로 유무선 통신망을 통해 연결된다. 일 실시예로서, 사용자단말기(220)는 네트워크 드라이브 모듈(200)과 연결되고, 네트워크 드라이브 모듈(200)은 데이터 통합 관리 모듈(100)과 연결되며, 데이터 통합 관리 모듈(100)은 백업 모듈(300)과 연결될 수 있다.Referring to FIG. 1, the data integrated management system 1000 (hereinafter referred to as 'system') capable of data management through server duplication, provision of shared storage, and data backup service according to the present invention includes a user terminal 220, It includes a network drive module 200, a data integration management module 100, and a backup module 300. Each module (100, 200, 300) is connected to each other through a wired or wireless communication network. As an embodiment, the user terminal 220 is connected to the network drive module 200, the network drive module 200 is connected to the data integration management module 100, and the data integration management module 100 is a backup module ( 300).

도 2는 본 발명에 따른 데이터 통합 관리 모듈(100)의 각 구성을 보여주는 도면이다.Figure 2 is a diagram showing each configuration of the data integration management module 100 according to the present invention.

본 발명에 따른 데이터 통합 관리 모듈(100)은, 가상화 기술을 바탕으로 고가용성(HA, High Availability)이 보장된 서버 이중화를 통해 데이터를 관리한다. 데이터 통합 관리 모듈(100)은, 도 2를 참조하면, 복수 개의 서버(110, 120, 130, 140) 및 각 서버(110, 120, 130, 140)가 포함하는 로컬 저장소(111, 121, 131, 141)를 포함한다. 데이터 통합 관리 모듈(100)이 포함하는 각 서버(110, 120, 130, 140)들은 서로 연결되어 물리 네트워크를 형성한다. 데이터 통합 관리 모듈(100)은 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)들을 그룹화(101, 102)하여 관리하며, 동일 그룹의 로컬 저장소(111, 121, 131, 141)들은 동일한 데이터를 가진다. 즉, 데이터 통합 관리 모듈(100)은, 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)들을 가상 네트워크를 통해 그룹화하여 통합 관리한다. 데이터 통합 관리 모듈(100)은 각 그룹(101, 102)의 로컬 저장소(111, 121, 131, 141)에 서로 동일한 데이터를 중복저장하여 서버를 이중화한다. 데이터 통합 관리 모듈(100)은 적어도 하나의 서버에 장애가 발생하는 경우 즉각적으로 다른 서버에 저장된 데이터를 사용자단말기(220)로 제공한다. The data integrated management module 100 according to the present invention manages data through server duplication with guaranteed high availability (HA) based on virtualization technology. Referring to FIG. 2, the data integration management module 100 includes a plurality of servers 110, 120, 130, and 140 and local storages 111, 121, and 131 included in each server 110, 120, 130, and 140. , 141). Each server (110, 120, 130, and 140) included in the data integration management module 100 is connected to each other to form a physical network. The data integration management module 100 manages the local storages 111, 121, 131, and 141 of each server 110, 120, 130, and 140 by grouping them into groups 101 and 102, and manages the local storages 111 and 102 of the same group. 121, 131, 141) have the same data. That is, the data integration management module 100 groups the local storages 111, 121, 131, and 141 of each server 110, 120, 130, and 140 through a virtual network and manages them in an integrated manner. The data integration management module 100 duplicates the server by storing identical data in the local storages 111, 121, 131, and 141 of each group 101 and 102. The data integration management module 100 immediately provides data stored in another server to the user terminal 220 when a failure occurs in at least one server.

데이터 통합 관리 모듈(100)은, 예를 들어, 제1 서버(110)의 제1 로컬 저장소(111)와 제2 서버(120)의 제2 로컬 저장소(121)가 제1 서버그룹(101)일 경우, 제1 로컬 저장소(111)와 제2 로컬 저장소(121)의 각 데이터를 서로 교차하여 중복저장한다. 즉, 데이터 통합 관리 모듈(100)은, 제1 로컬 저장소(111)에 a 데이터가 저장되어 있고, 제2 로컬 저장소(121)에 b 데이터가 저장되어 있을 경우, 제1 로컬 저장소(111)의 a 데이터를 제2 로컬 저장소(121)에 복사하여 저장하고, 제2 로컬 저장소(121)의 b 데이터를 제1 로컬 저장소(111)에 복사하여 저장한다. 따라서 제1 서버그룹(101)의 제1 로컬 저장소(111)와 제2 로컬 저장소(121)는 서로 동일한 데이터를 중복저장한다. 데이터 통합 관리 모듈(100)은 어느 한 서버의 점검 또는 장애 등이 발생한 경우, 동일한 데이터를 중복저장한 제1 서버그룹(101)의 각 로컬 저장소(111, 121) 중 어느 한 로컬 저장소(111, 121), 즉 동일 그룹의 다른 서버의 로컬 저장소에 중복저장된 데이터를 사용자단말기(220)로 제공할 수 있어 데이터 사용의 안정성이 보장될 수 있다. 데이터 통합 관리 모듈(100)의 더 자세한 설명은 후술하도록 한다.For example, the data integration management module 100 may configure the first local storage 111 of the first server 110 and the second local storage 121 of the second server 120 into the first server group 101. In one case, each data in the first local storage 111 and the second local storage 121 is stored in an alternating manner. That is, when data a is stored in the first local storage 111 and data b is stored in the second local storage 121, the data integration management module 100 stores the data a in the first local storage 111. Data a is copied and stored in the second local storage 121, and data b from the second local storage 121 is copied and stored in the first local storage 111. Accordingly, the first local storage 111 and the second local storage 121 of the first server group 101 store the same data in duplicate. When an inspection or failure of a server occurs, the data integration management module 100 stores the same data in any one of the local storages 111 and 121 of the first server group 101. 121), that is, data stored redundantly in the local storage of another server of the same group can be provided to the user terminal 220, so the stability of data use can be guaranteed. A more detailed description of the data integration management module 100 will be provided later.

도 3은 본 발명에 따른 네트워크 드라이브 모듈(200)의 각 구성을 보여주는 도면이다.Figure 3 is a diagram showing each configuration of the network drive module 200 according to the present invention.

본 발명에 따른 네트워크 드라이브 모듈(200)은, 도 3을 참조하면, 사용자단말기(220)로 네트워크 드라이브를 제공하는 드라이브 에이전트부(211) 및 사용자단말기(220)가 네트워크 드라이브를 통해 데이터 통합 관리 모듈(100)이 포함하는 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)에 접근하는 것을 가능케 하는 공유 스토리지부(213)를 포함한다. 한편, 이때 공유 스토리지부(213)는, 전술한 데이터 통합 관리 모듈(100)이 포함하는 각 서버(110, 120, 130, 140)의 각 로컬 저장소(111, 121, 131, 141)일 수 있고, 또는 각 로컬 저장소(111, 121, 131, 141)의 데이터가 복사된 별도의 저장소일 수 있다. 공유 스토리지부(213)에 저장된 데이터가 변경되면 각 서버(110, 120, 130, 140)의 각 로컬 저장소(111, 121, 131, 141) 내 데이터도 변경된다. Referring to FIG. 3, the network drive module 200 according to the present invention is a drive agent unit 211 that provides a network drive to the user terminal 220 and a data integration management module through which the user terminal 220 provides a network drive. It includes a shared storage unit 213 that allows access to the local storage (111, 121, 131, 141) of each server (110, 120, 130, 140) included in (100). Meanwhile, at this time, the shared storage unit 213 may be each local storage 111, 121, 131, and 141 of each server 110, 120, 130, and 140 included in the data integration management module 100, and , or it may be a separate storage where the data of each local storage (111, 121, 131, 141) is copied. When the data stored in the shared storage unit 213 is changed, the data in each local storage (111, 121, 131, and 141) of each server (110, 120, 130, and 140) is also changed.

즉, 사용자단말기(220)가 드라이브 에이전트부(211)가 제공하는 네트워크 드라이브를 통해 데이터 통합 관리 모듈(100)이 포함하는 각 로컬 저장소(111, 121, 131, 141)에 접근하여 데이터를 생성, 수정, 삭제 등을 수행하면, 그 결과들은 실시간으로 공유 스토리지부(213) 또는 데이터 통합 관리 모듈(100)의 각 로컬 저장소(111, 121, 131, 141)의 데이터에 반영된다.That is, the user terminal 220 accesses each local storage 111, 121, 131, and 141 included in the data integration management module 100 through the network drive provided by the drive agent unit 211 to generate data. When modification, deletion, etc. are performed, the results are reflected in real time in the data of each local storage (111, 121, 131, 141) of the shared storage unit (213) or the data integration management module (100).

따라서 복수 개의 사용자단말기(220)는 네트워크 드라이브를 통해 데이터 통합 관리 모듈(100)의 각 로컬 저장소의 데이터를 공유할 수 있다. 네트워크 드라이브 모듈(200)의 더 자세한 설명은 후술하도록 한다.Accordingly, a plurality of user terminals 220 can share data in each local storage of the data integration management module 100 through a network drive. A more detailed description of the network drive module 200 will be provided later.

도 4는 본 발명에 따른 백업 모듈(300)의 각 구성을 보여주는 도면이다.Figure 4 is a diagram showing each configuration of the backup module 300 according to the present invention.

본 발명에 따른 백업 모듈(300)은, 도 4를 참조하면, 데이터 통합 관리 모듈(100)이 관리하는 서버(110, 120, 130, 140) 내 로컬 저장소(111, 121, 131, 141)의 데이터를 기 설정된 스케줄에 따라 백업한다. 데이터 통합 관리 모듈(100)이 포함하는 서버(110, 120, 130, 140)들은 각각 백업부(113, 123, 133, 143)를 더 포함한다. 백업부(113, 123, 133, 143)는 로컬 저장소(111, 121, 131, 141) 내 데이터의 접근권한을 기 설정된 백업 스케줄에 따라 백업 에이전트부(311)에 부여한다. 백업 모듈(300)은 백업 에이전트부(311)를 포함하며, 백업 에이전트부(311)는, 기 설정된 스케줄에 따라 로컬 저장소(111, 121, 131, 141)의 데이터를 기 설정된 스케줄에 따라 백업부(113, 123, 133, 143)에 접근하여 로컬 저장소(111, 121, 131, 141)의 데이터를 백업 스토리지부(313)에 백업한다.Referring to FIG. 4, the backup module 300 according to the present invention is the local storage (111, 121, 131, 141) in the server (110, 120, 130, 140) managed by the data integration management module 100. Data is backed up according to a preset schedule. The servers 110, 120, 130, and 140 included in the data integration management module 100 further include backup units 113, 123, 133, and 143, respectively. The backup unit 113, 123, 133, and 143 grants access to data in the local storage 111, 121, 131, and 141 to the backup agent unit 311 according to a preset backup schedule. The backup module 300 includes a backup agent unit 311, and the backup agent unit 311 backs up data in the local storage (111, 121, 131, 141) according to a preset schedule. (113, 123, 133, 143) is accessed to back up the data in the local storage (111, 121, 131, 141) to the backup storage unit (313).

한편, 서버 이중화에서는 실시간으로 각 로컬 저장소(111, 121, 131, 141)의 데이터가 서로 중복저장됨에 따라 실수로 반영된 데이터나 바이러스에 감염된 파일도 복제될 수 있다는 문제점을 가지고 있다. 백업 모듈(300)은 기 설정된 스케줄에 따라, 즉 시간차를 두고 데이터를 백업함에 따라 실수로 반영된 데이터나 바이러스에 감염된 파일을 원복할 수 있다. 백업 모듈(300)의 더 자세한 설명은 후술하도록 한다.On the other hand, server duplication has a problem in that data in each local storage (111, 121, 131, and 141) is stored redundantly in real time, so data accidentally reflected or files infected with a virus may be copied. The backup module 300 can restore accidentally reflected data or virus-infected files by backing up data according to a preset schedule, that is, at intervals. A more detailed description of the backup module 300 will be provided later.

이하에서, 본 발명에 따른 데이터 통합 관리 모듈(100), 네트워크 드라이브 모듈(200) 및 백업 모듈(300)에 대해 더욱 상세히 설명하도록 한다.Hereinafter, the data integration management module 100, network drive module 200, and backup module 300 according to the present invention will be described in more detail.

본 발명에 따른 데이터 통합 관리 모듈(100)은 복수 개의 서버(110, 120, 130, 140) 및 물리스위치(미도시)로 구성된다. 복수 개의 서버(110, 120, 130, 140)는 물리 스위치(미도시)를 통해 물리 네트워크를 형성한다. 데이터 통합 관리 모듈(100)은 적어도 둘 이상의 서버로 구현될 수 있다.The data integration management module 100 according to the present invention is composed of a plurality of servers 110, 120, 130, and 140 and a physical switch (not shown). A plurality of servers 110, 120, 130, and 140 form a physical network through a physical switch (not shown). The data integration management module 100 may be implemented with at least two or more servers.

각 서버(100, 110, 120, 130)는 중앙처리장치, 메모리, 인터페이스장치 등의 하드웨어와 운영체제(Operating system), 슈퍼바이저(supervisor) 등의 소프트웨어를 포함할 수 있다. 서버의 하드웨어 및 소프트웨어의 일반적인 구성은 널리 알려져 있으므로, 이하에서는 본 실시 예의 데이터 통합 관리 모듈(100)을 위한 서버의 구성을 위주로 설명한다.Each server (100, 110, 120, 130) may include hardware such as a central processing unit, memory, and interface device, and software such as an operating system and supervisor. Since the general configuration of server hardware and software is widely known, the following will mainly describe the configuration of the server for the data integration management module 100 of this embodiment.

각 서버(110, 120, 130, 140)는 적어도 하나 이상의 가상머신을 포함하거나 포함하지 않을 수 있다. 예를 들어, 제1 서버 내지 제3 서버(110, 120, 130)는 각각 적어도 하나 이상의 가상머신을 포함하고, 제4 서버(140)는 가상머신을 포함하지 않을 수 있다.Each server 110, 120, 130, and 140 may or may not include at least one virtual machine. For example, the first to third servers 110, 120, and 130 may each include at least one virtual machine, and the fourth server 140 may not include a virtual machine.

일 실시예로서, 복수 개의 서버(110, 120, 130, 140)는, 각 서버(110, 120, 130, 140)가 각각 포함하는 로컬 저장소(111, 121, 131, 141)를 통합 관리하는 가상머신을 포함한다. 이하에서는 복수 개의 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)를 통합 관리하는 가상머신을 '관리가상머신'이라고 하고, 이 외의 일반적인 가상머신을 '일반가상머신'이라고 한다.As an embodiment, a plurality of servers (110, 120, 130, and 140) are virtual servers that integrate and manage the local storage (111, 121, 131, and 141) included in each server (110, 120, 130, and 140). Includes machines. Hereinafter, a virtual machine that integrates and manages local storage (111, 121, 131, 141) of multiple servers (110, 120, 130, 140) is referred to as a 'management virtual machine', and other general virtual machines are referred to as 'general virtual machines'. It is called ‘machine’.

관리가상머신은 복수 개의 서버(110, 120, 130, 140) 중 적어도 어느 하나에 위치하며, 필요에 따라 서버 사이를 마이그레이션할 수 있다.The management virtual machine is located on at least one of the plurality of servers 110, 120, 130, and 140, and can be migrated between servers as needed.

각 서버(110, 120, 130, 140)는 적어도 하나 이상의 일반가상머신(미도시), 관리가상머신(미도시), 로컬 저장소(111, 121, 131, 141), 물리포트(미도시) 및 백업부(113, 123, 133, 143)를 포함한다. 관리가상머신은 데이터 통합 관리 모듈(100)을 구성하는 복수의 서버 중 어느 하나에 위치한다.Each server (110, 120, 130, 140) has at least one general virtual machine (not shown), a management virtual machine (not shown), local storage (111, 121, 131, 141), a physical port (not shown), and It includes a backup unit (113, 123, 133, 143). The management virtual machine is located in one of a plurality of servers constituting the data integration management module 100.

로컬 저장소(111, 121, 131, 141)는 서버(110, 120, 130, 140) 내에 위치하는 HDD(Hard Disk Drive), SSD(Solid State Drive) 등의 저장매체이다. 로컬 저장소(111, 121, 131, 141)는 적어도 하나 이상의 HDD 또는 적어도 하나 이상의 SSD를 포함할 수 있다.Local storage (111, 121, 131, 141) is a storage medium such as HDD (Hard Disk Drive) or SSD (Solid State Drive) located within the server (110, 120, 130, 140). Local storage (111, 121, 131, 141) may include at least one HDD or at least one SSD.

일반가상머신 및 관리가상머신의 데이터는 로컬 저장소(111, 121, 131, 141)에 저장된다.Data of the general virtual machine and management virtual machine are stored in local storage (111, 121, 131, 141).

일반가상머신의 데이터가 로컬 저장소(111, 121, 131, 141)에 저장되므로, 서버(110, 120, 130, 140)의 점검이나 장애 등이 발생하면 서버(110, 120, 130, 140) 내 가상머신의 동작이 일시 중지되는 문제점이 존재한다. 이를 해결하기 위하여, 본 실시 예는 가상머신의 마이그레이션을 신속하게 수행하여 끊김없는 가상머신 서비스를 제공할 수 있도록 적어도 둘 이상의 서버를 서버그룹(101, 102)으로 그룹화한 후 서버그룹(101, 102) 내 데이터를 중복저장한다. Since the data of the general virtual machine is stored in the local storage (111, 121, 131, 141), if an inspection or failure of the server (110, 120, 130, 140) occurs, the data within the server (110, 120, 130, 140) There is a problem where the operation of the virtual machine is paused. To solve this problem, in this embodiment, at least two or more servers are grouped into server groups (101, 102) to quickly perform migration of virtual machines to provide uninterrupted virtual machine services, and then grouped into server groups (101, 102). ) My data is stored redundantly.

서버(110, 120, 130, 140) 내 복수 개의 가상머신이 존재하는 경우 각 가상머신의 데이터 읽기/쓰기에 병목현상이 발생하거나, 외부 서버의 가상머신과의 데이터 송수신에 병목현상이 발생할 수 있다. 또는 관리가상머신이 복수 서버(110, 120, 130, 140)의 로컬저장소(111, 121, 131, 141)를 관리하기 위한 제어명령이나 데이터를 병목현상없이 신속하게 처리할 필요가 있다. 신속한 데이터 송수신을 위해 본 실시 예는 복수 개의 물리포트를 포함한다.If there are multiple virtual machines in the server (110, 120, 130, 140), a bottleneck may occur in reading/writing data of each virtual machine, or a bottleneck may occur in data transmission and reception with the virtual machine of the external server. . Alternatively, the management virtual machine needs to quickly process control commands or data for managing the local storage (111, 121, 131, 141) of multiple servers (110, 120, 130, 140) without bottlenecks. For rapid data transmission and reception, this embodiment includes a plurality of physical ports.

서버(110, 120, 130, 140)의 물리포트는 가상스위치(미도시)를 통해 관리가상머신과 연결된다. 예를 들어, 관리가상머신은 물리포트를 통해 복수 서버(110, 120, 130, 140)의 로컬저장소(111, 121, 131, 141)를 관리하기 위한 제어명령이나 데이터 등을 송수신할 수 있다.The physical ports of the servers 110, 120, 130, and 140 are connected to the management virtual machine through a virtual switch (not shown). For example, the management virtual machine can transmit and receive control commands or data for managing the local storage (111, 121, 131, 141) of multiple servers (110, 120, 130, 140) through a physical port.

물리포트는 가상스위치와 연결되어 가상머신의 마이그레이션을 위한 데이터 송수신이 가능하다. 예를 들어, 제1 서버(110)에 위치한 제1 가상머신이 제2 서버(120)로 마이그레이션하는 경우, 제1 서버(110)의 물리포트와 제2 서버(120)의 물리포트를 통해 가상머신 마이그레이션을 위한 데이터를 송수신할 수 있다.The physical port is connected to the virtual switch to enable data transmission and reception for virtual machine migration. For example, when the first virtual machine located on the first server 110 migrates to the second server 120, the virtual machine moves through the physical port of the first server 110 and the physical port of the second server 120. Data for machine migration can be transmitted and received.

물리포트는 가상스위치와 연결되어 로컬 저장소(111, 121, 131, 141)에 대한 데이터 송수신이 가능하다. 예를 들어, 서버(110, 120, 130, 140) 내 일반가상머신의 데이터는 물리포트를 통해 로컬 저장소(111, 121, 131, 141)에 전달되어 저장된다.The physical port is connected to the virtual switch to enable data transmission and reception to the local storage (111, 121, 131, 141). For example, data of a general virtual machine in the server (110, 120, 130, 140) is transmitted and stored in the local storage (111, 121, 131, 141) through a physical port.

물리포트는 가상스위치를 통해 적어도 하나 이상의 일반가상머신과 연결된다.A physical port is connected to at least one general virtual machine through a virtual switch.

백업부(113, 123, 133, 143)는, 후술하게 될 백업 서버(310)의 백업 에이전트부(311)와 연결되며 백업 에이전트부(311)의 요청에 따라 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)에 저장된 데이터를 일정 주기로 백업 저장할 수 있도록 백업 에이전트부(311)로 로컬 저장소(111, 121, 131, 141) 내 데이터의 접근 권한을 부여한다.. 백업부(113, 123, 133, 143)는 매번 로컬저장소(111, 121, 131, 141)의 전체 데이터를 백업하거나, 이전 백업시점부터 현시점까지 변경된 데이터만을 추출하여 백업할 수 있다. 백업부(113, 123, 133, 143) 및 백업 서버(310)에 관한 상세한 설명은 후술하도록 한다.The backup units 113, 123, 133, and 143 are connected to the backup agent unit 311 of the backup server 310, which will be described later, and are connected to the servers 110, 120, 130, and 140 at the request of the backup agent unit 311. ) of the local storage (111, 121, 131, 141) is granted access to the data in the local storage (111, 121, 131, 141) to the backup agent unit 311 so that the data stored in the local storage (111, 121, 131, 141) can be backed up and stored at regular intervals. The backup unit (113, 123, 133, 143) can back up all data in the local storage (111, 121, 131, 141) every time, or can extract and back up only the data that has changed from the previous backup to the current time. A detailed description of the backup units 113, 123, 133, and 143 and the backup server 310 will be provided later.

본 실시 예에서, 일반가상머신 및 관리가상머신은 가상스위치를 통해 가상 네트워크를 형성한다. 예를 들어, 일반가상머신 및 관리가상머신에는 가상 네트워크에서 사용되는 사설 IP(Internet Protocol) 주소가 할당되며, 각 가상머신은 사설 IP 주소를 이용하여 데이터를 송수신할 수 있다.In this embodiment, the general virtual machine and the management virtual machine form a virtual network through a virtual switch. For example, general virtual machines and management virtual machines are assigned private IP (Internet Protocol) addresses used in virtual networks, and each virtual machine can transmit and receive data using the private IP address.

예를 들어, 데이터 통합 관리 모듈(100)이 제1 서버(110) 및 제2 서버(120)의 두 서버로 구성된 경우에, 제1 서버(110) 및 제2 서버(120)에 존재하는 복수 개의 일반가상머신과 관리가상머신은 적어도 하나 이상의 가상스위치를 통해 가상네트워크를 형성한다.For example, when the data integration management module 100 is composed of two servers, the first server 110 and the second server 120, the plurality of servers present in the first server 110 and the second server 120 The regular virtual machines and management virtual machines form a virtual network through at least one virtual switch.

데이터 통합 관리 모듈(100)은 적어도 하나 이상의 서버그룹(101 또는 102)으로 구성되고, 각 서버그룹(101 또는 102)은 적어도 둘 이상의 서버(110, 120, 130, 140)로 구성될 수 있다. 일 실시예로서, 데이터 통합 관리 모듈(100)은 제1 서버(110) 및 제2 서버(120)를 포함하는 제1 서버그룹(101)과, 제3 서버(130) 및 제4 서버(140)를 포함하는 제2 서버그룹(102)으로 구성된다.The data integration management module 100 is composed of at least one server group 101 or 102, and each server group 101 or 102 may be composed of at least two servers 110, 120, 130, and 140. As an embodiment, the data integration management module 100 includes a first server group 101 including a first server 110 and a second server 120, a third server 130, and a fourth server 140. ) and consists of a second server group 102 including.

다른 실시 예로서, 서버그룹별 포함되는 서버의 개수는 서로 다를 수 있다. 예를 들어, 제1 서버그룹은 2개의 서버로 구성되고, 제2 서버그룹은 3개의 서버로 구성될 수 있다.As another example, the number of servers included in each server group may be different. For example, the first server group may be composed of two servers, and the second server group may be composed of three servers.

관리가상머신은 복수 개의 서버 로컬 저장소(111, 121, 131, 141)를 서버그룹의 그룹핑 정보에 따라 통합 관리한다. 예를 들어, 관리가상머신은 제1 내지 제4 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)의 자원정보를 파악한 후 이를 하나의 통합저장소(111, 121, 131, 141)로 관리할 수 있다.The management virtual machine integrates and manages multiple server local storages (111, 121, 131, and 141) according to the grouping information of the server group. For example, the management virtual machine determines the resource information of the local storage (111, 121, 131, 141) of the first to fourth servers (110, 120, 130, 140) and then stores it in one integrated storage (111, 121). , 131, 141).

일 실시예로서, 관리가상머신은 일반가상머신의 데이터를 서버 그룹(101, 102) 내 로컬 저장소(111, 121, 131, 141)에 중복 저장한다. 예를 들어, 제1 서버그룹(101)의 제1 서버(110)에 위치한 제1 가상머신의 데이터쓰기요청이 있으면, 관리가상머신은 제1 가상머신의 데이터쓰기요청에 해당하는 데이터를 제1 가상머신이 위치한 제1 서버(110)의 제1 로컬 저장소(111)에 저장할 뿐만 아니라 제1 서버(110)와 동일한 서버그룹(101)에 존재하는 제2 서버(120)의 제2 로컬 저장소(121)에 중복 저장한다.As an embodiment, the management virtual machine stores the data of the general virtual machine redundantly in the local storage (111, 121, 131, 141) within the server group (101, 102). For example, if there is a data write request from the first virtual machine located in the first server 110 of the first server group 101, the management virtual machine sends the data corresponding to the data write request of the first virtual machine to the first server group 101. It is not only stored in the first local storage 111 of the first server 110 where the virtual machine is located, but also in the second local storage of the second server 120 that exists in the same server group 101 as the first server 110 ( 121).

다른 실시 예로서, 관리가상머신은 일반가상머신 및 관리가상머신의 메타데이터를 서버 그룹(101, 102) 내 중복저장할 수 있다. 예를 들어, 제1 서버(110)의 제1 가상머신에 대한 메타데이터는 제1 서버(110)의 제1 로컬 저장소(111) 및 제2 서버(120)의 제2 로컬 저장소(121)에 중복 저장된다. 일 예로, 각 서버(110, 120, 130, 140)에 가상머신이 생성될 때, 각 서버(110, 120, 130, 140)는 서버 그룹핑 정보에 따라 동일 서버 그룹(101, 102) 내 각 로컬 저장소(111, 121, 131, 141)에 가상머신 메타정보를 중복 저장할 수 있다.As another example, the management virtual machine may store metadata of the general virtual machine and the management virtual machine redundantly within the server groups 101 and 102. For example, metadata for the first virtual machine of the first server 110 is stored in the first local storage 111 of the first server 110 and the second local storage 121 of the second server 120. It is stored redundantly. As an example, when a virtual machine is created on each server (110, 120, 130, 140), each server (110, 120, 130, 140) is connected to each local within the same server group (101, 102) according to server grouping information. Virtual machine meta information can be stored redundantly in storage (111, 121, 131, 141).

서버 그룹(101, 102) 내 각 가상머신의 일반데이터 및 메타데이터 등이 중복저장되므로, 서버 그룹(101, 102) 내 가상머신 마이그레이션은 신속하게 수행될 수 있다. Since the general data and metadata of each virtual machine in the server groups 101 and 102 are stored redundantly, migration of virtual machines within the server groups 101 and 102 can be performed quickly.

일 실시예로서, 복수 개의 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)를 통합한 통합저장소(111, 121, 131, 141)에는 일반가상머신 및 관리가상머신의 일반데이터와 메타데이터가 저장된다. 일반데이터는 가상머신 서비스에서 발생하는 여러 데이터를 의미하고, 메타데이터는 가상머신 식별자, 가상머신 IP 주소, 운영체제 등 가상머신을 정의하는 각종 데이터를 의미한다. 일반데이터 및 메타데이터는 서버 그룹(101, 102)별로 적어도 둘 이상의 서버 로컬 저장소(111, 121, 131, 141)에 중복 저장된다.As an embodiment, the integrated storage (111, 121, 131, 141), which integrates the local storage (111, 121, 131, 141) of each of the plurality of servers (110, 120, 130, 140), includes general virtual machines and management General data and metadata of the virtual machine are stored. General data refers to various data generated from virtual machine services, and metadata refers to various data that defines a virtual machine, such as virtual machine identifier, virtual machine IP address, and operating system. General data and metadata are redundantly stored in at least two server local storages (111, 121, 131, and 141) for each server group (101, 102).

일 실시예로서 데이터 통합 관리 모듈(100)은 하나의 서버그룹(101)을 포함하고, 해당 서버그룹(101)은 제1 서버(110) 및 제2 서버(120)를 포함한다. 제1 서버(110)에는 관리가상머신과 제1 및 제2 일반가상머신이 존재하고, 제2 서버(120)에는 제3 및 제4 일반가상머신이 존재한다.As an embodiment, the data integration management module 100 includes one server group 101, and the server group 101 includes a first server 110 and a second server 120. The first server 110 has a management virtual machine and first and second general virtual machines, and the second server 120 has third and fourth general virtual machines.

서버의 점검 또는 장애가 발생한 경우에 가상머신 마이그레이션이 발생할 수 있다. 예를 들어, 관리가상머신은 주기적으로 핑(PING) 신호를 각 서버에 전송하여 어느 서버에 장애가 발생하는지 확인할 수 있다.Virtual machine migration may occur in the event of server maintenance or failure. For example, the management virtual machine can periodically send a ping signal to each server to check which server is experiencing a failure.

일 실시예로서, 제1 서버(110)에 대한 점검 요청이 있거나 장애가 발생한 경우, 먼저 관리가상머신은 제1 서버(110)에서 제2 서버(120)로 마이그레이션된다. 그리고 제1 서버(110)의 제1 및 제2 일반가상머신이 제1 서버(110)에서 제2 서버(120)로 마이그레이션된다. 데이터는 제1 서버(110)와 제2 서버(120)의 로컬저장소(111, 121)에 중복저장되므로 별도의 데이터 송수신 없이 마이그레이션이 신속하게 완료될 수 있어, 가상머신 서비스의 끊김없는 제공이 가능하다.In one embodiment, when there is an inspection request for the first server 110 or a failure occurs, the management virtual machine is first migrated from the first server 110 to the second server 120. And the first and second general virtual machines of the first server 110 are migrated from the first server 110 to the second server 120. Since data is stored redundantly in the local storages 111 and 121 of the first server 110 and the second server 120, migration can be completed quickly without separate data transmission and reception, enabling uninterrupted provision of virtual machine services. do.

제1 서버(110)의 점검이 완료되거나 장애가 해소되면, 일반가상머신은 다시 제1 서버(110)로 마이그레이션될 수 있다. 이때 제1 서버(110)에는 일반가상머신의 데이터가 그대로 존재하므로, 제2 서버(120)에서 일반가상머신이 새롭게 저장한 데이터만 제1 서버(110)로 전송될 수 있다.When the inspection of the first server 110 is completed or the problem is resolved, the general virtual machine can be migrated back to the first server 110. At this time, since the data of the general virtual machine remains in the first server 110, only data newly stored by the general virtual machine in the second server 120 can be transmitted to the first server 110.

일 실시예로서, 제1 서버그룹(101)은 제1 서버(110) 및 제2 서버(120)로 구성되고, 제2 서버그룹(102)은 제3 서버(130) 및 제4 서버(140)로 구성되며, 제1 서버그룹(101)의 점검 또는 장애가 발생하면, 제1 서버그룹(101) 내 존재하는 관리가상머신과 일반가상머신은 제2 서버그룹(102)의 각 서버(130,140)에 마이그레이션되고, 또한 제1 서버그룹(101)의 로컬저장소(111, 121)에 저장된 데이터는 제2 서버그룹(102)의 로컬저장소(131, 141)에 저장된다.As an embodiment, the first server group 101 consists of the first server 110 and the second server 120, and the second server group 102 includes the third server 130 and the fourth server 140. ), and when an inspection or failure of the first server group 101 occurs, the management virtual machine and general virtual machine existing in the first server group 101 are connected to each server 130, 140 of the second server group 102. Data migrated to and stored in the local storages 111 and 121 of the first server group 101 are stored in the local storages 131 and 141 of the second server group 102.

제1 서버그룹(101)의 점검이 완료되거나 장애가 해소되면, 일반가상머신이 다시 제1 서버그룹(101)으로 마이그레이션될 수 있다. 이때 제1 서버그룹(101)에는 일반가상머신의 데이터가 그대로 존재하므로, 제2 서버그룹(102)에서 일반가상머신이 새롭게 저장한 데이터만 제1 서버그룹(101)으로 전송될 수 있다.When the inspection of the first server group 101 is completed or the problem is resolved, the general virtual machine can be migrated back to the first server group 101. At this time, since the data of the general virtual machine remains in the first server group 101, only data newly stored by the general virtual machine in the second server group 102 can be transmitted to the first server group 101.

다음으로, 본 발명에 따른 네트워크 드라이브 모듈(200)에 대해 설명한다.Next, the network drive module 200 according to the present invention will be described.

본 발명에 따른 네트워크 드라이브 모듈(200)은, 네트워크 드라이브 서버(210)를 포함하며, 네트워크 드라이브 서버(210)는, 전술한 바와 같이 드라이브 에이전트부(211) 및 공유 스토리지부(213)를 포함한다.The network drive module 200 according to the present invention includes a network drive server 210, and the network drive server 210 includes a drive agent unit 211 and a shared storage unit 213 as described above. .

한편, 네트워크 드라이브 서버(210)는, 복수 개의 사용자단말기(220)와 유무선 통신망을 통해 연결될 수 있다. 또한 네트워크 드라이브 서버(210)는, 데이터 통합 관리 모듈(100)의 각 서버(110, 120, 130, 140)와 연결될 수 있다.Meanwhile, the network drive server 210 may be connected to a plurality of user terminals 220 through a wired or wireless communication network. Additionally, the network drive server 210 may be connected to each server 110, 120, 130, and 140 of the data integration management module 100.

사용자는 사용자단말기(220)를 이용하여 네트워크 드라이브 서버(210)에 연결을 요청하고, 사용자에 따른 네트워크 드라이브 서버(210)가 포함하는 공유 스토리지부(213)의 각 스토리지 또는 공유 스토리지부(213)와 연결된 데이터 통합 관리 모듈(100)이 포함하는 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141) 내 데이터를 네트워크 드라이브로 제공받아 이용할 수 있다.The user requests a connection to the network drive server 210 using the user terminal 220, and each storage or shared storage unit 213 of the shared storage unit 213 included in the network drive server 210 according to the user The data in the local storage (111, 121, 131, 141) of each server (110, 120, 130, 140) included in the data integration management module (100) connected to can be provided as a network drive and used.

네트워크 드라이브 서버(210)는 드라이브 에이전트부(211) 및 공유 스토리지부(213)를 포함한다.The network drive server 210 includes a drive agent unit 211 and a shared storage unit 213.

드라이브 에이전트부(211)는 네트워크 드라이브 서버(210)와 복수개의 사용자단말기(220)간의 데이터를 송수신한다. 공유 스토리지부(213)는 사용자단말기(220)의 사용자에 따라 네트워크 드라이브로 제공하는 저장공간을 포함하며, 이때의 저장공간은 데이터 통합 관리 모듈(100)이 포함하는 각 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141)일 수 있다. 이하에서는, 로컬 저장소(111, 121, 131, 141) 내 저장된 데이터가 공유 스토리지부(213)에 저장된 것으로 가정하여 설명하지만, 공유 스토리지부(213) 자체가 전술한 데이터 통합 관리 모듈(100) 내 각 로컬 저장소(111, 121, 131, 141)를 의미하는 것으로 해석할 수도 있다.The drive agent unit 211 transmits and receives data between the network drive server 210 and a plurality of user terminals 220. The shared storage unit 213 includes a storage space provided as a network drive according to the user of the user terminal 220, and the storage space at this time is stored in each server 110, 120, and 130 included in the data integration management module 100. , 140) may be a local storage (111, 121, 131, 141). Hereinafter, the description will be made assuming that the data stored in the local storage (111, 121, 131, 141) is stored in the shared storage unit 213, but the shared storage unit 213 itself is stored in the data integration management module 100 described above. It can also be interpreted to mean each local storage (111, 121, 131, 141).

본 발명에 따른 사용자단말기(220)는 사용자가 이용하는 PC, 노트북, 넷북, 태블릿PC, PDA, 모바일, 스마트폰 등 통상의 컴퓨팅 단말기이다. 사용자단말기(220)는 데이터를 저장하기 위한 단말기용 로컬 저장매체(미도시)를 구비하며, 사용자단말기(220)에는 단말기용 로컬 운영체제(OS, 미도시)가 설치되어 운영된다.The user terminal 220 according to the present invention is a typical computing terminal used by a user, such as a PC, laptop, netbook, tablet PC, PDA, mobile, or smartphone. The user terminal 220 is equipped with a local storage medium (not shown) for storing data, and a local operating system (OS, not shown) for the terminal is installed and operated in the user terminal 220.

단말기용 로컬 운영체제(OS)는 단말기용 로컬 저장매체 등에 저장된 데이터 등 데이터를 탐색하기 위한 데이터 탐색기를 제공한다. 데이터 탐색기는 윈도우(창) 형태의 GUI(그래픽 유저 인터페이스) 방식의 탐색기로서, 디렉토리 구조를 폴더 방식의 계층구조로 표시한다. 또한 단말기용 로컬 운영체제(OS)는 저장매체를 드라이브로 마운트하여, 디렉토리 구조로 데이터를 탐색하게 한다.The local operating system (OS) for the terminal provides a data explorer to explore data such as data stored in the local storage medium for the terminal. Data Explorer is a window-type GUI (graphical user interface) type explorer that displays the directory structure in a folder-type hierarchy. Additionally, the local operating system (OS) for the terminal mounts the storage medium as a drive and allows data to be searched using a directory structure.

즉, 단말기용 로컬 저장매체 외에도 외부 저장매체나 네트워크 상의 저장공간 등을 드라이브로 마운트할 수 있다. 일반적으로 네트워크 상에 연결된 다른 컴퓨터 단말의 저장매체를 드라이브로 연결할 때, 이를 네트워크 드라이브라 부른다.In other words, in addition to the local storage medium for the terminal, external storage media or storage space on the network can be mounted as a drive. In general, when a storage medium of another computer terminal connected on a network is connected as a drive, it is called a network drive.

본 발명에 따른 네트워크 드라이브 서버(210)는, 공유 스토리지부(213)에 저장되거나 공유 스토리지부(213)와 연결된 로컬 저장소(111, 121, 131, 141) 내 데이터, 파일 등 콘텐츠(이하, ‘데이터’라 함)를 사용자단말기(220)로 제공한다. The network drive server 210 according to the present invention stores content (hereinafter referred to as ' (referred to as 'data') is provided to the user terminal 220.

네트워크 드라이브 서버(210)는, 다수의 사용자가 하나의 데이터를 공유하여 공동작업을 수행할 수 있게 한다. 즉, 한 사용자가 데이터를 사용하기 위해 해당 데이터에 대하여 체크아웃(check-out)을 하면 해당 데이터를 잠금(Lock) 상태로 설정하여 다른 사용자가 데이터를 수정하지 못하도록 설정한다. 또한, 사용자가 데이터의 사용을 마치면 체크인(check-in)을 하면 해당 데이터의 잠금(Lock) 상태를 해제하여 다른 사용자가 데이터를 사용하여 수정할 수 있게 설정한다.The network drive server 210 allows multiple users to perform collaborative work by sharing one data. In other words, when one user checks out the data to use it, the data is set to locked to prevent other users from modifying the data. Additionally, when a user checks in after finishing using the data, the data is unlocked so that other users can use and modify the data.

네트워크 드라이브 서버(210)는, 공유 스토리지부(213)에 데이터들을 저장하고 관리한다. 공유 스토리지부(213)는, 공지의 데이터베이스, 스토리지 및/또는 리포지터리(Repository) 등을 포함한다.The network drive server 210 stores and manages data in the shared storage unit 213. The shared storage unit 213 includes a known database, storage, and/or repository.

한편, 공유 스토리지부(213)에 저장되거나 연결된 데이터들은 네트워크 드라이브 서버(210)를 통해서 관리되고 접근되거나 네트워크 드라이브 서버(210)를 통해서 데이터 통합 관리 모듈(100) 내 각 로컬 저장소(111, 121, 131, 141)에 접근함에 따라, 이하에서 공유 스토리지부(213)의 언급없이 네트워크 드라이브 서버(210)에서 데이터를 저장하고 관리하는 것으로 설명한다.Meanwhile, data stored or connected to the shared storage unit 213 is managed and accessed through the network drive server 210, or is stored in each local storage unit 111, 121, and As 131 and 141) are approached, data will be stored and managed in the network drive server 210 without mention of the shared storage unit 213.

본 발명에 따른 네트워크 드라이브 서버(210)는, 사용자단말기(220)가 네트워크 드라이브 서버(210)에서 관리하는 데이터들에 접근할 수 있도록 하는 드라이브 에이전트부(211)를 더 포함한다.The network drive server 210 according to the present invention further includes a drive agent unit 211 that allows the user terminal 220 to access data managed by the network drive server 210.

특히 드라이브 에이전트부(211)는, 공유 스토리지부(213)를 사용자단말기(220)에서 네트워크 드라이브 형태로 접근할 수 있게 한다. 이를 위해, 드라이브 에이전트부(211)는 공유 스토리지부(213)에 저장된 데이터들을 사용자단말기(220)의 운영체제(또는 단말기용 로컬 운영체제)의 데이터 시스템(1000)으로 전환한다. 드라이브 에이전트부(211)는 전환된 데이터 시스템(1000)을 단말기용 로컬 운영체제의 네트워크 드라이브로 마운트하여 제공한다. 즉, 드라이브 에이전트부(211)는 사용자단말기(220)로 단말기용 로컬 운영체제의 네트워크 드라이브를 통해 데이터를 공유할 수 있는 데이터공유 서버 기능을 제공한다.In particular, the drive agent unit 211 allows the shared storage unit 213 to be accessed in the form of a network drive from the user terminal 220. To this end, the drive agent unit 211 converts the data stored in the shared storage unit 213 to the data system 1000 of the operating system of the user terminal 220 (or local operating system for the terminal). The drive agent unit 211 mounts the converted data system 1000 as a network drive of the local operating system for the terminal and provides it. That is, the drive agent unit 211 provides a data sharing server function that can share data with the user terminal 220 through a network drive of the local operating system for the terminal.

네트워크 드라이브 서버(210)는 공유 스토리지부(213)에 저장된 데이터들을 사용자단말기(220)가 구비한 단말기용 로컬 운영체제의 데이터 시스템(1000) 구조에 대응되도록 변환한다. 상세하게는, 드라이브 에이전트부(211)는 공유 스토리지부(213)에 저장된 데이터의 목록을 공유 스토리지부(213)에 요청하고, 그 데이터의 목록을 수신한다. 수신된 데이터 목록에는 각 데이터의 고유 식별자(또는 데이터ID)가 부여되고, 특정 데이터가 선택되면 그 특정 데이터의 고유 식별자를 통해 특정 데이터의 내용을 공유 스토리지부(213)에 요청하여 수신할 수 있다.The network drive server 210 converts the data stored in the shared storage unit 213 to correspond to the structure of the data system 1000 of the local operating system for the terminal provided by the user terminal 220. In detail, the drive agent unit 211 requests the shared storage unit 213 for a list of data stored in the shared storage unit 213 and receives the list of data. The received data list is assigned a unique identifier (or data ID) for each data, and when specific data is selected, the contents of the specific data can be requested and received from the shared storage unit 213 through the unique identifier of the specific data. .

사용자단말기(220)의 단말기용 로컬 운영체제는 네트워크 상에 연결된 공유 스토리지부(213)에 저장된 데이터를 공유하기 위하여, 데이터 공유 프로토콜을 이용한다. 이때 데이터 공유 프로토콜은 다른 컴퓨터 단말에 저장된 데이터를, 자신의 컴퓨터 단말의 데이터 탐색기와 동일한 인터페이스로 다루기 위한 프로토콜이다. 즉, 데이터 공유 프로토콜을 통해 사용자단말기(220)가 공유 스토리지부(213)를 드라이브로 마운트하면, 마치 단말기용 로컬 저장매체를 마운트한 것과 동일한 인터페이스로 데이터들을 관리할 수 있다. 일 실시예로서, 단말기용 로컬 운영체제가 마이크로소프트사의 윈도우인 경우, 데이터 공유 프로토콜은 삼바(SMB) 프로토콜이다.The local operating system for the user terminal 220 uses a data sharing protocol to share data stored in the shared storage unit 213 connected to the network. At this time, the data sharing protocol is a protocol for handling data stored in another computer terminal through the same interface as the data explorer of one's computer terminal. That is, when the user terminal 220 mounts the shared storage unit 213 as a drive through the data sharing protocol, data can be managed through the same interface as if a local storage medium for the terminal were mounted. As an example, when the local operating system for the terminal is Microsoft's Windows, the data sharing protocol is the Samba (SMB) protocol.

드라이브 에이전트부(211)는 데이터 공유 프로토콜에 따른 데이터공유 서버 기능을 제공하여, 사용자단말기(220)에서 드라이브 에이전트부(211)로 공유 스토리지부(213)의 마운트를 요청하고, 드라이브 에이전트부(211)는 데이터 목록에 대응되는 데이터 시스템(1000) 구조로 네트워크 드라이브를 마운트한다.The drive agent unit 211 provides a data sharing server function according to the data sharing protocol, requests mount of the shared storage unit 213 from the user terminal 220 to the drive agent unit 211, and drives the drive agent unit 211. ) mounts the network drive in the data system 1000 structure corresponding to the data list.

사용자단말기(220)는 단말기용 로컬 운영체제의 데이터 탐색기의 쉘(Shell)을 확장하는 인터페이스부(221)를 포함한다. 인터페이스부(221)는 단말기용 로컬 운영체제의 데이터 시스템(1000) 기능 외에, 네트워크 드라이브 서버(210)의 고유 기능을 처리한다. 즉, 앞서 설명한 네트워크 드라이브 서버(210)의 데이터 공동작업 수행 기능을 처리한다.The user terminal 220 includes an interface unit 221 that extends the shell of the data explorer of the local operating system for the terminal. The interface unit 221 processes the unique functions of the network drive server 210 in addition to the data system 1000 functions of the local operating system for the terminal. In other words, it processes the data collaboration performance function of the network drive server 210 described above.

단말기용 로컬 운영체제의 데이터 탐색기의 쉘(Shell)은 사용자의 명령을 처리하기 위한 인터페이스 프로그램을 말한다. 예를 들어, 쉘(Shell)에 의해, 데이터 탐색기에 특정 폴더를 더블 클릭하면 해당 폴더로 이동하거나, 특정 데이터나 폴더를 선택하면 선택된 데이터 등과 관련된 컨텍스트 메뉴 등을 표시한다.The shell of the data explorer of the local operating system for the terminal is an interface program for processing user commands. For example, when you double-click a specific folder in the data explorer using the shell, you move to that folder, or when you select specific data or folder, a context menu related to the selected data is displayed.

인터페이스부(221)는 데이터 탐색기의 쉘(Shell)을 확장하여, 데이터의 공유에 관한 정보(이하 공유정보)를 드라이브 에이전트부(211)로부터 수신하여 컨텍스트 메뉴로서 표시한다. 또한, 인터페이스부(221)에 의한 확장 쉘은 데이터가 다른 사용자에 의해 편집 중인 상태이면 잠금 상태를 컨텍스트 메뉴로서 표시하거나, 데이터의 버전 정보 등을 간략하게 모두 표시하는 등의 작업을 수행한다.The interface unit 221 extends the shell of the data explorer and receives information about data sharing (hereinafter referred to as sharing information) from the drive agent unit 211 and displays it as a context menu. Additionally, the extended shell provided by the interface unit 221 performs tasks such as displaying the lock status as a context menu when data is being edited by another user, or briefly displaying all version information of the data.

또한, 확장 쉘은 네트워크 드라이브 서버(210)의 고유 기능을 컨텍스트 메뉴로 표시하고, 컨텍스트 메뉴에서 해당 메뉴가 선택되면 그 명령 사항을 드라이브 에이전트부(211)에 전송한다. 드라이브 에이전트부(211)는 명령사항을 해석하고, 그 명령에 따라 필요한 자료를 사용자단말기(220)에 전송한다.Additionally, the extended shell displays the unique functions of the network drive server 210 as a context menu, and when the menu is selected from the context menu, the command is transmitted to the drive agent unit 211. The drive agent unit 211 interprets the command and transmits necessary data to the user terminal 220 according to the command.

한편, 확장 쉘에서 공유정보가 드라이브 에이전트부(211)로부터 수신될 때, 공유정보는 데이터공유 프로토콜에 의해 송수신한다. 단말기용 로컬 운영체제가 마이크로소프트사의 윈도우인 경우, 공유정보는 대체 데이터 스트림(ADS, Alternate data stream)의 일종인 NTFS 스트림에 의해 전송된다.Meanwhile, when shared information is received from the drive agent unit 211 in the extended shell, the shared information is transmitted and received by the data sharing protocol. If the local operating system for the terminal is Microsoft's Windows, shared information is transmitted by an NTFS stream, a type of alternate data stream (ADS).

드라이브 에이전트부(211)는 데이터 공유 프로토콜을 통해 사용자단말기(220)와 데이터공유 세션을 설정하고, 데이터를 로컬 데이터 시스템(1000) 형태의 데이터로 공유시킨다. 즉, 드라이브 에이전트부(211)는 네트워크 드라이브 서버(210)의 공유 스토리지부(213) 내 데이터들을 로컬 데이터 시스템(1000) 형태로 공유시킨다.The drive agent unit 211 establishes a data sharing session with the user terminal 220 through a data sharing protocol and shares data in the form of a local data system 1000. That is, the drive agent unit 211 shares data in the shared storage unit 213 of the network drive server 210 in the form of a local data system 1000.

앞서 설명한 바와 같이, 데이터 공유 프로토콜은 다른 컴퓨터 단말에 저장된 데이터를, 자신의 컴퓨터 단말의 데이터 탐색기와 동일한 인터페이스로 다루기 위한 프로토콜로서, 네트워크에 연결된 저장매체를 드라이브로 마운트하면 마치 단말기용 로컬 저장매체를 마운트한 것과 동일한 인터페이스로 데이터들을 관리할 수 있다. 단말기용 로컬 운영체제가 마이크로소프트사의 윈도우인 경우, 데이터 공유 프로토콜은 삼바(SMB) 프로토콜이다.As explained earlier, the data sharing protocol is a protocol for handling data stored in other computer terminals through the same interface as the data explorer of one's own computer terminal. When a storage medium connected to the network is mounted as a drive, it is as if it were a local storage medium for the terminal. You can manage data using the same interface as the mounted one. If the local operating system for the terminal is Microsoft's Windows, the data sharing protocol is the Samba (SMB) protocol.

드라이브 에이전트부(211)는 데이터 공유 프로토콜에 따라 데이터 공유 서버로서의 기능을 수행한다. 윈도우의 경우, 드라이브 에이전트부(211)는 삼바(SMB) 서버의 기능을 수행하여, 네트워크 드라이브 서버(210)의 데이터들을 네트워크 드라이브 형태로 마운트하여 네트워크 상의 공유 데이터로서 공유시킨다. 즉, 드라이브 에이전트부(211)는 데이터공유 세션을 네트워크 드라이브로 연결한다. The drive agent unit 211 functions as a data sharing server according to the data sharing protocol. In the case of Windows, the drive agent unit 211 performs the function of a SMB server, mounts the data of the network drive server 210 in the form of a network drive and shares it as shared data on the network. That is, the drive agent unit 211 connects the data sharing session to the network drive.

드라이브 에이전트부(211)는 데이터의 공유에 관한 정보(이하 공유정보)를 인터페이스부(221)로 송신하고, 인터페이스부(221)로부터 데이터의 공유에 관한 명령(이하 공유명령)을 수신한다.The drive agent unit 211 transmits information regarding data sharing (hereinafter referred to as sharing information) to the interface unit 221 and receives a command regarding data sharing (hereinafter referred to as sharing command) from the interface unit 221.

인터페이스부(221)는 데이터의 공유정보를 데이터의 컨텍스트 메뉴로서 표시한다. 이때, 공유정보는 공유명령을 포함하고, 인터페이스부(221)는 컨텍스트 메뉴에 의해 선택된 공유명령을 드라이브 에이전트부(211)로 전송한다.The interface unit 221 displays data sharing information as a data context menu. At this time, the sharing information includes a sharing command, and the interface unit 221 transmits the sharing command selected by the context menu to the drive agent unit 211.

다음으로, 데이터 관리의 고유기능 중 데이터의 공유 기능을 설명한다. 데이터를 공유하기 위한 기능은 체크인/체크아웃 및 데이터 잠금 등의 기능들을 말한다.Next, we explain the data sharing function among the unique functions of data management. Functions for sharing data include functions such as check-in/check-out and data locking.

데이터는 수정되면 네트워크 드라이브 서버(210)에 의해 버전 별로 저장된다. 인터페이스부(221)는 데이터에 대하여 버전별 정보를 공유정보로서 표시한다.When data is modified, it is stored by version by the network drive server 210. The interface unit 221 displays version-specific information about data as shared information.

인터페이스부(221)에서 데이터의 데이터들 중 특정 버전이 선택되어 수신을 요청하면, 드라이브 에이전트부(211)는 네트워크 드라이브 서버(210)에 저장된 특정 버전의 데이터데이터를 불러와서 사용자단말기(220)로 전송한다.When a specific version of the data is selected in the interface unit 221 and requests to be received, the drive agent unit 211 loads the specific version of the data stored in the network drive server 210 and sends it to the user terminal 220. send.

데이터는 여러 사용자에 의해 공유되어, 각 사용자에 의해 수정될 수 있다. 이때, 동시에 여러 사용자가 데이터를 수정하여 저장하면 최종적으로 저장한 사용자의 데이터만 저장되고, 그 외 사용자의 데이터는 저장되지 않을 수 있다. 따라서 특정 시간에 단 한 사용자만 데이터를 수정할 수 있게 하여야 한다. 이를 위한 것이 체크인/체크아웃이다.Data can be shared by multiple users and modified by each user. At this time, if multiple users modify and save data at the same time, only the data of the user who finally saved may be saved, and the data of other users may not be saved. Therefore, only one user should be able to modify data at a specific time. For this purpose, check-in/check-out is provided.

드라이브 에이전트부(211)는, 인터페이스부(221)를 통해 데이터의 공유정보 중 체크아웃 공유명령이 선택되면 데이터를 수정할 수 없는 잠금(Lock) 상태로 설정하고, 체크인 공유명령이 선택되면 잠금(Lock) 상태를 해제한다. 즉, 데이터를 잠금 상태로 설정하면, 그 이후의 사용자는 데이터에 접근할 수 없고, 한 사용자가 특정 데이터에 체크아웃 명령을 내리면, 데이터는 잠금 상태가 된다. 따라서 다른 사용자는 특정 데이터를 열람할 수 없다. 사용자는 데이터의 수정이 완료되면 해당 데이터를 저장한다. The drive agent unit 211 sets the data to a locked state where it cannot be modified when the checkout sharing command is selected among the data sharing information through the interface unit 221, and locks the data when the checkin sharing command is selected. ) Release the state. In other words, when data is set to a locked state, subsequent users cannot access the data, and when a user issues a checkout command for specific data, the data is locked. Therefore, other users cannot view specific data. When the user completes modifying the data, he or she saves the data.

한편, 전술한 바와 같이, 사용자가 원하는 데이터가 포함된 데이터 통합 관리 모듈(100)이 포함하는 어느 서버(110, 120, 130, 140)에 점검 또는 장애 등이 발생한 경우, 즉, 예를 들어, 사용자가 원하는 데이터 a가 제1 서버(110)의 제1 로컬 저장소(111)에 위치하고, 사용자단말기(220)의 인터페이스부(221)가 드라이브 에이전트부(211)로 제1 서버(110)에 위치한 데이터를 수신하길 원하여, 데이터 수신 요청 신호를 송신할 때, 제1 서버(110)에 점검 또는 장애 등이 발생한 경우, 드라이브 에이전트부(211)는 공유 스토리지부(213)에 연결된 제1 서버(110)가 아닌 제1 서버(110)와 동일한 서버그룹(101)인 제2 서버(120)의 제2 로컬 저장소(121) 내 포함된 데이터 a를 사용자단말기(220)로 제공할 수 있다. 따라서 본 발명에 따른 시스템(1000)은, 데이터 사용의 안정성을 보장할 수 있다.Meanwhile, as described above, when an inspection or failure occurs in any of the servers 110, 120, 130, 140 included in the data integration management module 100 containing data desired by the user, that is, for example, The data a desired by the user is located in the first local storage 111 of the first server 110, and the interface unit 221 of the user terminal 220 is located in the first server 110 as a drive agent unit 211. When you want to receive data and transmit a data reception request signal, if an inspection or failure occurs in the first server 110, the drive agent unit 211 is connected to the shared storage unit 213. Data a contained in the second local storage 121 of the second server 120, which is in the same server group 101 as the first server 110, rather than 110, may be provided to the user terminal 220. Therefore, the system 1000 according to the present invention can guarantee the stability of data use.

다음으로, 본 발명에 따른 백업 모듈(300)에 대해 설명한다.Next, the backup module 300 according to the present invention will be described.

본 발명에 따른 백업 모듈(300)은, 백업 서버(310)를 포함하며, 백업 서버(310)는, 전술한 바와 같이, 백업 에이전트부(311) 및 백업 스토리지부(313)를 포함한다.The backup module 300 according to the present invention includes a backup server 310, and the backup server 310 includes a backup agent unit 311 and a backup storage unit 313, as described above.

백업 에이전트부(311)는, 백업 프로그램을 포함하며, 백업 프로그램 실행 시에 기 설정된 스케줄에 따라 서버(110, 120, 130, 140)의 로컬 저장소(111, 121, 131, 141) 내 백업 대상 데이터를 지정하고, 지정된 백업 대상 데이터를 기초로 백업 데이터로 형성한다. 백업 에이전트부(311)는 형성된 백업 데이터를 백업 스토리지부(313)로 송신한다. 한편, 백업 프로그램은 사용자단말기(220)로 제공되어 실행되거나 또는 데이터 통합 관리 모듈(100)의 백업부(113, 123, 133, 143) 의해 자동적으로 실행될 수 있다. 백업 프로그램이 사용자단말기(220)로 제공됨에 따라 사용자단말기(220)는 백업 프로그램을 통해 백업 스케줄을 지정할 수 있다. 또한 백업 프로그램이 백업부(113, 123, 133, 143)에 의해 실행되는 경우, 백업 스케줄은 백업부(113, 123, 133, 143)에 의해 자동적으로 지정될 수 있다. 백업부(113, 123, 133, 143)의 백업 스케줄 지정은 후술하도록 한다.The backup agent unit 311 includes a backup program, and when the backup program is executed, the backup target data in the local storage (111, 121, 131, 141) of the server (110, 120, 130, 140) is stored according to a preset schedule. Specify and form backup data based on the specified backup target data. The backup agent unit 311 transmits the formed backup data to the backup storage unit 313. Meanwhile, the backup program may be provided and executed by the user terminal 220 or may be automatically executed by the backup unit 113, 123, 133, and 143 of the data integration management module 100. As the backup program is provided to the user terminal 220, the user terminal 220 can specify a backup schedule through the backup program. Additionally, when the backup program is executed by the backup unit (113, 123, 133, 143), the backup schedule can be automatically specified by the backup unit (113, 123, 133, 143). The backup schedule designation of the backup units 113, 123, 133, and 143 will be described later.

백업 대상 데이터는, 사용자단말기(220) 또는 서버(110, 120, 130, 140)에 의해 생성, 삭제 및 수정되는 데이터(예를 들어, 문서 데이터 파일, 이미지 데이터 파일, 영상 데이터 파일, 음향 데이터 파일 및 시스템 데이터 파일 등)로서 사용자단말기(220) 또는 서버(110, 120, 130, 140) 내에서 처리될 수 있는 데이터 파일이 될 수 있다.Data to be backed up is data created, deleted, and modified by the user terminal 220 or the servers 110, 120, 130, and 140 (e.g., document data files, image data files, video data files, and audio data files) and system data files, etc.) may be data files that can be processed within the user terminal 220 or the servers 110, 120, 130, and 140.

백업 스토리지부(313)는, 백업 에이전트부(311)를 통해 서버(110, 120, 130, 140)로부터 백업 데이터를 수신하여 저장한다.The backup storage unit 313 receives backup data from the servers 110, 120, 130, and 140 through the backup agent unit 311 and stores it.

백업 스토리지부(313)는, 백업 데이터를 저장함에 있어, 해당 백업 데이터의 복사본을 형성시켜 원본과는 별도로 저장하도록 함으로써, 원본 백업 데이터가 손상을 받는 등에 의해 사용할 수 없는 경우를 대비한다.When storing backup data, the backup storage unit 313 creates a copy of the backup data and stores it separately from the original to prepare for the case where the original backup data is damaged or cannot be used.

백업 서버(310)는, 정해진 스케줄에 따라 백업을 실행하고, 누적된 백업 데이터 중 설정용량 초과 여부를 감지하여 백업데이터의 생성일자를 비교하여 먼저 생성된 데이터의 초과된 용량부분만큼을 삭제하여 여분의 디스크공간을 지속적으로 확보하도록 설계함으로써, 시스템(1000) 가동 후 자동으로 백업을 실시하여 누적된 데이터로 인해 디스크 공간 부족 시 설정된 용량 초과여부를 스스로 판단하여 디스크공간을 확보한다. The backup server 310 executes backup according to a set schedule, detects whether the set capacity among the accumulated backup data is exceeded, compares the creation date of the backup data, and deletes the excess capacity portion of the data created first to spare. By designing it to continuously secure disk space, it automatically performs backups after operating the system (1000) and secures disk space by automatically determining whether the set capacity has been exceeded when disk space is insufficient due to accumulated data.

백업 서버(310)는, 다수의 백업 데이터를 생성하고 이를 개별 저장하여 해당 백업 데이터가 손상된 경우에도 누적된 백업 데이터로부터 선별적하여 본래의 데이터를 복구할 수 있도록 한다.The backup server 310 generates a plurality of backup data and stores them individually so that the original data can be selectively recovered from the accumulated backup data even if the corresponding backup data is damaged.

도 5는 본 발명에 따른 백업 에이전트부(311)의 각 구성을 보여주는 도면이다.Figure 5 is a diagram showing each configuration of the backup agent unit 311 according to the present invention.

백업 에이전트부(311)는, 도 5를 참조하면, 백업 메모리부(3111), 백업 입력부(3113), 백업 제어부(3115) 및 백업 디스플레이부(3117)를 포함한다.Referring to FIG. 5 , the backup agent unit 311 includes a backup memory unit 3111, a backup input unit 3113, a backup control unit 3115, and a backup display unit 3117.

백업 메모리부(3111)에는, 사용자단말기(220) 또는 백업부(113, 123, 133, 143)로 제공되는 백업 프로그램이 저장되며, 사용자단말기(220)로부터 수신하거나 백업부(113, 123, 133, 143)가 자동적으로 설정한 백업스케줄, 다수 개의 백업데이터 폴더, 백업 사전작업 프로세서, 백업 사후작업프로세서, 백업 완료 후 종료여부 등의 설정사항들이 저장된다.In the backup memory unit 3111, the backup program provided to the user terminal 220 or the backup units 113, 123, 133, and 143 is stored, and is stored in the backup program received from the user terminal 220 or the backup unit 113, 123, 133. , 143) automatically sets the backup schedule, multiple backup data folders, backup pre-processor, backup post-task processor, and whether to terminate the backup after completion, etc. are stored.

백업 입력부(3113)는, 사용자단말기(220) 또는 백업부(113, 123, 133, 143)로부터 백업 프로그램 실행 명령, 백업시간, 백업 프로그램을 구동시키기 전 종료시켜 줄 프로세스 또는 서비스, 백업 프로그램의 구동 종료 후 실행시켜 줄 프로세스 또는 서비스, 백업 데이터를 저장하기 위한 기 지정된 개수의 폴더 및 백업 후 백업 에이전트부(311)의 자동 종료 여부를 수신한다.The backup input unit 3113 receives a backup program execution command, backup time, process or service to be terminated before running the backup program, and operation of the backup program from the user terminal 220 or the backup unit 113, 123, 133, and 143. It receives a process or service to be executed after termination, a predetermined number of folders for storing backup data, and whether or not the backup agent unit 311 will be automatically terminated after backup.

백업 제어부(3115)는, 백업 입력부(3113)가 사용자단말기(220) 또는 백업부(113, 123, 133, 143)로부터 수신한 백업 프로그램 실행 명령 및 백업 스케줄을 판독하고 판독한 스케줄에 따라 서버(110, 120, 130, 140) 내 백업 대상 데이터를 지정하고, 지정된 백업 대상 데이터를 백업 데이터로 형성시켜 형성된 백업 데이터를 백업 스토리지부(313)로 전달한다.The backup control unit 3115 reads the backup program execution command and backup schedule received by the backup input unit 3113 from the user terminal 220 or the backup unit 113, 123, 133, and 143, and operates the server ( 110, 120, 130, 140), the backup target data is designated, the designated backup target data is formed as backup data, and the formed backup data is transmitted to the backup storage unit 313.

일 실시예로서, 백업 제어부(3115)는, 지정된 백업 대상 데이터를 백업 데이터로 형성함에 있어, 백업 대상 데이터의 원본 그대로 백업 데이터로 형성할 수 있을 뿐만 아니라, 백업 대상 데이터를 압축하여 백업 데이터로 형성시켜 백업 데이터의 용량을 줄여서 백업 스토리지부(313)로 전달함으로써, 백업 스토리지부(313)의 저장 공간을 보다 효율적으로 활용하도록 할 수 있다. 백업 제어부(3115)는, 백업 데이터를 영구 저장하기 위한 영구 메모리 공간과 영구 저장 외의 백업 데이터를 저장하기 위한 일반 메모리 공간을 백업 스토리지부(313)에 할당하고, 형성된 백업 데이터의 영구 저장 여부를 확인하며, 형성된 백업 데이터를 영구 저장해야 하는 경우에 영구 메모리 공간에 저장한다.As an embodiment, when forming designated backup target data into backup data, the backup control unit 3115 not only forms the original backup target data into backup data, but also compresses the backup target data to form backup data. By reducing the capacity of the backup data and delivering it to the backup storage unit 313, the storage space of the backup storage unit 313 can be utilized more efficiently. The backup control unit 3115 allocates a permanent memory space for permanently storing backup data and a general memory space for storing backup data other than permanent storage to the backup storage unit 313, and checks whether the formed backup data is permanently stored. And, if the created backup data needs to be stored permanently, it is stored in a permanent memory space.

일 실시예로서, 백업 제어부(3115)는, 백업 스토리지부(313)에 누적 저장된 백업 데이터 중 설정된 용량을 초과하여, 초과된 부분을 삭제할 시, 일반 메모리 공간에 저장된 백업 데이터만 삭제하고 영구 메모리 공간에 별도로 저장된 백업 데이터는 삭제하지 아니함으로써, 사용자가 계속해서 보유하여야만 하는 데이터가 삭제되는 것을 방지할 수 있다.As an embodiment, the backup control unit 3115 exceeds the set capacity of the backup data accumulated in the backup storage unit 313, and when deleting the excess portion, only the backup data stored in the general memory space is deleted and the backup data stored in the permanent memory space is deleted. By not deleting backup data separately stored in , it is possible to prevent data that must be retained by the user from being deleted.

백업 디스플레이부(3117)는, 백업 제어부(3115)에서 구동시킨 백업 프로그램의 동작 상태를 사용자단말기(220)의 디스플레이장치에 표시한다.The backup display unit 3117 displays the operating status of the backup program driven by the backup control unit 3115 on the display device of the user terminal 220.

일 실시예로서, 백업 디스플레이부(3117)는, 사용자단말기(220) 상의 작업표시줄(예를 들어, Windows PC의 경우에는 화면 하단의 작업표시줄 등)에 백업 프로그램의 동작 상태를 표시할 수 있다.As an embodiment, the backup display unit 3117 may display the operating status of the backup program on the taskbar on the user terminal 220 (for example, in the case of a Windows PC, the taskbar at the bottom of the screen, etc.). there is.

일 실시예로서, 백업 디스플레이부(3117)는, 백업 프로그램의 설정값(예를 들어, 백업시간 또는 백업 프로그램을 구동시키기 전 종료시켜 줄 프로세스 또는 서비스 등)을 입력하기 위한 설정창을 사용자단말기(220)의 디스플레이 장치에 표시할 수 있다.As an embodiment, the backup display unit 3117 displays a settings window for entering backup program settings (for example, backup time or a process or service to be terminated before running the backup program) on the user terminal 220. ) can be displayed on the display device.

일 실시예로서, 백업 디스플레이부(3117)는, 백업 프로그램의 구동이 시작된 후 또는 종료된 후 팝업창(즉, 특정 웹 사이트가 어떠한 내용을 표시하기 위해 갑자기 생성되는 새 창)에 의해 사용자에게 백업 프로그램의 구동 상태를 시각적인 수단에 의해 알려 줄 수 있을 뿐만 아니라, 이와 함께 사용자단말기(220)에 구비되는 소리 재생 수단(예를 들어, 외장 스피커 또는 내장 스피커 등)을 통해 청각적인 수단에 의해서도 백업 프로그램의 구동 상태를 사용자에게 알려 줄 수 있다.In one embodiment, the backup display unit 3117 displays the backup program to the user through a pop-up window (i.e., a new window that is suddenly created to display certain contents of a specific website) after the backup program starts or ends. Not only can the driving status of the backup program be informed by visual means, but also by auditory means through a sound reproduction means (for example, an external speaker or a built-in speaker, etc.) provided in the user terminal 220. The operating status can be notified to the user.

백업 제어부(3115)는, 백업 데이터를 백업 스토리지부(313)로 송신한다.The backup control unit 3115 transmits backup data to the backup storage unit 313.

백업 제어부(3115)는, 백업 스토리지부(313)에 기 저장되어 있는 백업 데이터를 삭제하기 위한 기준용량을 설정하여 백업 메모리부(3111)에 저장하며, 백업 스토리지부(313)에 저장된 백업 데이터의 용량을 판독하여, 백업 메모리부(3111)로부터 판독한 기준용량과 백업 스토리지부(313)에 저장된 백업 데이터의 용량을 비교한다. 백업 제어부(3115)는 비교 결과 백업 스토리지부(313)에 저장된 백업 데이터의 용량이 기준 용량을 초과할 시, 백업 스토리지부(313)에 저장된 백업 데이터 중 가장 먼저 생성된 백업데이터 중 설정용량을 초과한 부분만큼을 삭제할 수 있다.The backup control unit 3115 sets a standard capacity for deleting the backup data previously stored in the backup storage unit 313 and stores it in the backup memory unit 3111, and stores the backup data stored in the backup storage unit 313. The capacity is read, and the reference capacity read from the backup memory unit 3111 is compared with the capacity of the backup data stored in the backup storage unit 313. As a result of the comparison, the backup control unit 3115 determines that when the capacity of the backup data stored in the backup storage unit 313 exceeds the standard capacity, the backup data created first among the backup data stored in the backup storage unit 313 exceeds the set capacity. You can delete as much as one part.

일 실시예로서, 백업 제어부(3115)는, 백업 스토리지부(313)에 저장된 백업 데이터의 용량이 백업 스토리지부(313)의 가용 저장 용량의 일정 비율(예를 들어, 백업 스토리지부(313)의 가용 저장 용량의 80%)을 초과하게 되면 백업 스토리지부(313)에 저장된 백업 데이터 중 생성된 날짜를 비교하여 먼저 생성된 데이터 중 용량이 초과한 부분만큼을 삭제함으로써, 백업 스토리지부(313)가 새로이 들어오는 백업 데이터를 위한 가용 저장 공간을 형성할 수 있도록 할 수 있다.As an embodiment, the backup control unit 3115 determines that the capacity of the backup data stored in the backup storage unit 313 is set to a certain ratio of the available storage capacity of the backup storage unit 313 (for example, the amount of backup data stored in the backup storage unit 313 When the available storage capacity (80%) is exceeded, the creation date among the backup data stored in the backup storage unit 313 is compared and the portion of the data created first that exceeds the capacity is deleted, so that the backup storage unit 313 It can be used to create available storage space for newly incoming backup data.

일 실시예로서, 백업 제어부(3115)는, 백업 스토리지부(313)에 저장된 백업 데이터를 삭제할 시, 기 기정된 용량(예를 들어, 백업 스토리지부(313)의 가용 저장 용량의 10% 등)을 삭제하거나, 새롭게 들어오는 백업 데이터 용량 만큼의 용량을 삭제하는 방법에 의해, 백업 스토리지부(313)가 새로이 들어오는 백업 데이터를 위한 가용 저장 공간을 확보하도록 할 수 있다.As an embodiment, when deleting backup data stored in the backup storage unit 313, the backup control unit 3115 deletes a predetermined capacity (for example, 10% of the available storage capacity of the backup storage unit 313, etc.) The backup storage unit 313 can secure available storage space for newly incoming backup data by deleting or deleting an amount equal to the amount of newly incoming backup data.

일 실시예로서, 백업 제어부(3115)는, 백업 스토리지부(313)에 백업 데이터 이외의 데이터(예를 들어, 사용자의 필요에 의해서 저장해 놓은 영상 데이터 또는 이미지 데이터 등)가 저장되어 있는 경우, 백업 데이터 이외의 데이터와 백업 데이터를 합산된 용량을 기준으로 기준용량을 판독하도록 함으로써, 새롭게 들어오는 백업 데이터를 위한 가용 저장 공간이 부족하게 되는 경우를 방지할 수 있다.As an embodiment, the backup control unit 3115, when data other than backup data (for example, video data or image data saved according to the user's needs) is stored in the backup storage unit 313, the backup control unit 3115 performs a backup operation. By reading the standard capacity based on the combined capacity of data other than data and backup data, it is possible to prevent insufficient available storage space for newly incoming backup data.

백업 제어부(3115)는, 백업 입력부(3113)로부터 백업시간을 입력받고 백업시간 예약을 요청받는 경우에, 백업시간 예약 요청에 따라 입력된 백업시간을 백업 메모리부(3111)에 설정한다.When the backup time is input from the backup input unit 3113 and a backup time reservation request is received, the backup control unit 3115 sets the backup time input according to the backup time reservation request in the backup memory unit 3111.

일 실시예로서, 백업 제어부(3115)는, 백업시간을 설정함에 있어, 매일 같은 시간에 백업 프로그램이 구동되도록 할 수 있어 업무 편의성을 제공할 수 있다.As an example, when setting the backup time, the backup control unit 3115 can run the backup program at the same time every day, thereby providing business convenience.

백업 제어부(3115)는, 백업 데이터를 기 지정된 폴더에 저장하기 위한 지정 폴더명을 백업 입력부(3113)로부터 입력받고 지정 백업 설정을 요청받는 경우에, 지정 백업 설정 요청에 따라 입력된 지정 폴더명을 백업 메모리부(3111)에 설정한다.When receiving a designated folder name for storing backup data in a pre-designated folder from the backup input unit 3113 and a request for designated backup settings, the backup control unit 3115 returns the designated folder name entered according to the designated backup setting request. Set in the backup memory unit 3111.

백업 제어부(3115)는, 지정 백업을 함에 있어, 각각의 지정된 폴더별로 별도의 백업 데이터를 저장할 수 있고, 또한 각각의 폴더별로 다른 시간에 백업을 하도록 할 수 있다.When performing a designated backup, the backup control unit 3115 can store separate backup data for each designated folder and can also allow each folder to be backed up at a different time.

백업 제어부(3115)는, 지정된 데이터 폴더의 백업작업을 수행한 후 백업데이터가 저장되는 폴더명의 설정된 값에 날짜와 시간을 추가하여 저장함으로써, 매일 누적백업 시 동일한 폴더명이 되는 것을 방지하고, 사용자가 백업된 데이터를 복구할 시에, 백업이 생성된 날짜와 시간을 구별하여, 선별적으로 복구 할 수 있다.The backup control unit 3115 performs a backup operation of a designated data folder and then adds the date and time to the set value of the folder name where the backup data is stored and stores it, thereby preventing the folder name from being the same during daily cumulative backup and preventing the user from using the same folder name. When restoring backed up data, you can selectively restore it by distinguishing the date and time the backup was created.

백업 제어부(3115)는, 백업 데이터를 기 지정된 개수만큼 기 지정된 폴더에 각각 저장하기 위한 다수 개의 폴더명을 백업 입력부(3113)로부터 입력받고 다중 백업 설정을 요청받는 경우에, 다중 백업 설정 요청에 따라 입력된 다수 개의 폴더명을 백업 메모리부(3111)에 설정할 수 있다.When the backup control unit 3115 receives a plurality of folder names from the backup input unit 3113 for storing a pre-designated number of backup data in each pre-designated folder and receives a request for setting up multiple backups, the backup control unit 3115 responds to the request for setting up multiple backups. Multiple input folder names can be set in the backup memory unit 3111.

한편, 본 발명에 따른 백업부(113, 123, 133, 143)는, 백업 스케줄을 본 발명에 따른 시스템(1000)에 따른 각 서버의 부하를 분석하고, 시스템(1000)의 부하가 가장 적은 요일과 시간대를 백업 입력부(3113)에 입력하여 백업 스케줄을 지정할 수 있다.Meanwhile, the backup unit 113, 123, 133, and 143 according to the present invention analyzes the backup schedule and the load of each server according to the system 1000 according to the present invention, and selects the day of the week when the load of the system 1000 is lowest. The backup schedule can be specified by inputting the time zone and time zone into the backup input unit 3113.

이때 백업부(113, 123, 133, 143)의 서버 부하 분석은, 예를 들어, 네트워크 드라이브 모듈(200)을 통해 데이터 통합 관리 모듈(100)의 각 서버에 접속한 사용자단말기(220)의 개수 또는 사용자단말기(220)의 인터페이스부(221)가 드라이브 에이전트부(211)에 송신한 데이터 요청 메시지의 개수 등을 종합하여 분석할 수 있다. 이때 접속한 사용자단말기(220)의 개수 및 데이터 요청 메시지의 개수는 시스템(1000) 내 로그를 분석하여 도출될 수도 있다.At this time, the server load analysis of the backup unit (113, 123, 133, 143) is, for example, the number of user terminals 220 connected to each server of the data integration management module 100 through the network drive module 200. Alternatively, the number of data request messages sent by the interface unit 221 of the user terminal 220 to the drive agent unit 211 may be comprehensively analyzed. At this time, the number of connected user terminals 220 and the number of data request messages may be derived by analyzing logs within the system 1000.

백업부(113, 123, 133, 143)는 연속적으로 과거의 서버 부하의 정도를 분석하고, 분석한 결과를 백업 제어부(3115)로 송신한다.The backup units 113, 123, 133, and 143 continuously analyze the degree of past server load and transmit the analysis results to the backup control unit 3115.

도 6은 본 발명에 따른 서버 부하도의 일 실시예를 보여주는 도면이다.Figure 6 is a diagram showing an embodiment of a server load diagram according to the present invention.

백업 제어부(3115)는, 백업부(113, 123, 133, 143)로부터 수신한 서버 부하의 정도를, 도 6을 참조하면, 요일 별, 시간대 별로 나뉘어진 복수 개의 셀의 형태로 정리하여 서버 부하도를 생성한다. 이때의 셀은 복수 개의 사각형이 연속된 형태일 수 있다. 백업 제어부(3115)가 생성한 서버 부하도는 백업 디스플레이부(3117)에 의해 사용자단말기(220)에 표시되어 사용자에게 제공될 수 있다.Referring to FIG. 6, the backup control unit 3115 organizes the degree of server load received from the backup units 113, 123, 133, and 143 in the form of a plurality of cells divided by day of the week and time zone to determine the server load. create a diagram At this time, the cell may be in the form of a plurality of consecutive squares. The server load diagram generated by the backup control unit 3115 may be displayed on the user terminal 220 by the backup display unit 3117 and provided to the user.

백업 제어부(3115)는 복수 개의 셀에 서버 부하의 정도에 따라 서로 다르게 나타낼 수 있으며, 예를 들어, 서버 부하가 작을 때 셀을 진하게 채색하고, 서버 부하가 클 때 셀을 연하게 채색하여 백업 디스플레이부(3117)가 사용자단말기(220)에 표시하도록 할 수 있다. 한편, 서버 부하도의 각 요일과 시간에 따른 셀의 채색은, 복수 주의 요일과 시간에 대한 서버 부하의 정도의 평균값에 해당하는 서버 부하의 정도에 따른 채색 값을 가질 수 있다. 또는 일 실시예에 따른 서버 부하도는, 전술한 셀을 밑면으로 하는 사각기둥의 형태로 서버 부하의 정도를 나타낼 수도 있으며, 이때 서버 부하의 정도는 사각기둥의 높이가 될 수 있다. 백업 디스플레이부(3117)는 사각 기둥 형태의 셀을 가진 서버 부하도를 사용자단말기(220)에 표시할 수 있다.The backup control unit 3115 can display a plurality of cells differently depending on the degree of server load. For example, when the server load is low, the cells are colored darkly, and when the server load is large, the cells are colored lightly to display the backup. Unit 3117 can be displayed on the user terminal 220. Meanwhile, the coloring of cells according to each day and time of the server load diagram may have a coloring value according to the degree of server load corresponding to the average value of the degree of server load for days and times of multiple weeks. Alternatively, the server load diagram according to one embodiment may represent the degree of server load in the form of a square pillar with the aforementioned cell as the bottom, and in this case, the degree of server load may be the height of the square pillar. The backup display unit 3117 can display a server load diagram with square column-shaped cells on the user terminal 220.

한편, 도 6에서 각 셀의 가로길이는, 일 실시예로서, 1 시간을 의미하도록 도시하였으며, 도시의 편의상 오전 0시부터 오전 12시까지 자정부터 정오까지의 시간만을 도시하였으나, 서버 부하도 내 각 셀의 형태는 실시예에 따라 언제든지 변동가능하다. 한편, 백업부(113, 123, 133, 143)는 과거 서버 부하 정도의 분석뿐만 아니라 백업 시 소요되는 시간도 추적하여 분석할 수 있다.Meanwhile, in FIG. 6, the horizontal length of each cell is shown to mean 1 hour as an example. For convenience, only the time from midnight to noon from 0:00 AM to 12:00 AM is shown, but the server load is also The shape of each cell can be changed at any time depending on the embodiment. Meanwhile, the backup units 113, 123, 133, and 143 can track and analyze not only the past server load, but also the time required for backup.

백업 제어부(3115)는, 복수 개의 셀의 형태로 정리한 서버 부하도에서 요일별로 가장 부하가 작은 시간대에 따른 셀의 중심 간을 연결하는 직선을 생성하고, 생성한 직선의 길이를 연산할 수 있다.The backup control unit 3115 can generate a straight line connecting the centers of cells according to the time zone with the lowest load for each day of the week in the server load chart organized in the form of a plurality of cells, and calculate the length of the generated straight line. .

만일 본 시스템(1000)의 백업 시 소요되는 시간이 단일 셀의 시간 내, 일 실시예로서 도 6에 도시된 셀의 가로길이와 같이 한 시간 내 끝나는 경우, 백업 제어부(3115)는, 과거의 백업시간이 오래 걸리지 않은 것으로 판단한다. If the time required for backup of the system 1000 ends within the time of a single cell, as an example, within one hour as the horizontal length of the cell shown in FIG. 6, the backup control unit 3115 I guess it didn't take long.

만일 백업시간이 오래 걸리지 않는 것으로 판단하면, 백업 제어부(3115)는 부하가 적은 시간대에 해당하는 셀의 중심을 이은 직선의 길이 중 가장 짧은 길이를 가진 요일 및 시간대를 선택하고, 그 요일과 시간대를 백업 입력부(3113)에 입력하여 백업 스케줄을 자동으로 지정하여 백업을 실행할 수 있다. If it is determined that the backup time will not take a long time, the backup control unit 3115 selects the day and time zone with the shortest length among the lengths of the straight line connecting the center of the cell corresponding to the low load time zone, and selects the day and time zone. You can execute a backup by automatically specifying a backup schedule by entering it into the backup input unit 3113.

예를 들어, 도 6에 도시된 바와 같이, 화요일과 수요일의 오전 5시의 각 셀의 중심을 잇는 선분의 길이가 1이고, 목요일과 금요일의 오전 4시의 각 셀의 중심을 잇는 선분의 길이가 1인 경우, 화요일과 수요일에는 오전 5시에 백업을 수행하고, 목요일과 금요일에는 오전 4시에 백업을 수행하도록 백업 스케줄을 지정할 수 있다. For example, as shown in Figure 6, the length of the line segment connecting the center of each cell at 5 AM on Tuesday and Wednesday is 1, and the length of the line segment connecting the center of each cell at 4 AM on Thursday and Friday is 1. If is 1, you can specify a backup schedule to perform backups at 5 a.m. on Tuesdays and Wednesdays and at 4 a.m. on Thursdays and Fridays.

백업 제어부(3115)는, 이처럼 과거의 백업시간이 오래 걸리지 않을 경우, 연속하여 부하가 적은 시간대를 잇는 선분의 길이를 구하고, 그 길이가 가장 짧은 것을 선택한다. 거리가 짧은 시간대가 동일한 시간대가 연속된다면 그 시간대에서의 부하가 적다는 것의 정확도를 보증할 수 있기 때문이다.If the past backup time does not take a long time, the backup control unit 3115 finds the length of a line segment connecting consecutive low-load times and selects the one with the shortest length. This is because if the same time zone with a short distance is continuous, the accuracy can be guaranteed that the load in that time zone is low.

한편, 백업 입력부(3113)는 사용자단말기(220)로부터 백업 시간대를 입력받을 수 있으며, 사용자단말기(220)로부터 입력받은 백업 시간대는, 백업 제어부(3115)의 연산에 따라 동일한 길이의 선분이 도출되는 경우, 입력받은 백업 시간대와 가장 가까운 시간대를 백업 스케줄로 지정할 수 있다. 즉, 사용자단말기(220)로부터 입력받은 백업 시간대가 오전 2시일 경우, 도 6과 같이 선분의 길이가 1로 동일한 화요일 및 수요일의 오전 5시와, 목요일 및 금요일의 오전 4시 중 백업 제어부(3115)는 백업 시간대를 목요일 및 금요일의 오전 4시로 지정하여 백업 스케줄을 지정할 수 있다. 이처럼 사용자단말기(220)로부터 백업 시간대를 입력받아 동일한 선분의 길이를 가진 요일 및 시간대 중 하나를 선택한 경우, 다른 요일에서도 지정된 시간대, 즉 오전 4시에 백업을 진행하도록 백업 스케줄이 지정될 수 있다.Meanwhile, the backup input unit 3113 can receive a backup time zone from the user terminal 220, and the backup time zone input from the user terminal 220 is a line segment of the same length derived according to the calculation of the backup control unit 3115. In this case, you can designate the time zone closest to the entered backup time zone as the backup schedule. That is, if the backup time input from the user terminal 220 is 2:00 AM, the backup control unit (3115) operates between 5:00 AM on Tuesday and Wednesday and 4:00 AM on Thursday and Friday where the line segment length is 1, as shown in FIG. ) can specify a backup schedule by specifying the backup time as 4 a.m. on Thursday and Friday. In this way, when the backup time zone is input from the user terminal 220 and one of the days and time zones with the same line segment length is selected, the backup schedule can be set to perform backup at the designated time zone, that is, at 4 AM on other days of the week.

반면에, 전술한 바와 달리 본 시스템(1000)의 백업 시 소요되는 시간이 단일 셀의 시간 내, 일 실시예로서 도 6에 도시된 셀의 가로길이에 따른 한 시간 내 끝나지 않는 경우, 백업 제어부(3115)는, 과거의 백업시간이 오래 걸리는 것으로 판단한다. On the other hand, unlike the above, if the time required for backup of the present system 1000 does not end within the time of a single cell, as an example, within one hour according to the horizontal length of the cell shown in FIG. 6, the backup control unit ( 3115) determines that past backups take a long time.

도 7은 본 발명에 따른 서버 부하도의 다른 일 실시예를 보여주는 도면이다.Figure 7 is a diagram showing another embodiment of a server load diagram according to the present invention.

이처럼 과거의 백업시간이 오래 걸리는 것으로 판단하는 경우, 백업 제어부(3115)는, 도 7을 참조하면, 연속하여 부하가 적은 시간대의 셀의 중심을 연결한 선분의 거리를 구한다. 백업 제어부(3115)가 구한 선분의 길이가 길수록 백업에 따른 시스템(1000)의 부하가 적게 걸릴 수 있기 때문이다.In this case, when it is determined that the past backup time took a long time, the backup control unit 3115, referring to FIG. 7, calculates the distance of the line segment connecting the centers of the cells in the continuous low-load time zone. This is because the longer the length of the line segment obtained by the backup control unit 3115, the less load can be placed on the system 1000 due to backup.

백업 제어부(3115)는, 연속하여 부하가 적은 시간대의 셀을 선택할 때, 각 요일에서 가장 부하가 적은 시간대의 셀을 먼저 도출하고, 그 셀의 다음으로 부하가 적은 시간대의 셀을 도출한다. 이때 가장 부하가 적은 시간대의 셀과 그 셀의 다음으로 부하가 적은 시간대의 셀이 서로 인접한 경우, 백업 제어부(3115)는 서로 인접한 양 셀의 중심을 잇는다. 다시 백업 제어부(3115)는 그 다음으로 부하가 적은 시간대의 셀을 도출하고, 도출한 셀이 선분으로 중심을 이은 양 셀과 인접한 지 판단한다. 만일 도출한 셀이 선분으로 중심을 이은 양 셀과 인접한 경우 또 다시 중심을 잇고, 양 셀과 인접하지 않은 경우 백업 제어부(3115)는 해당 요일의 부하가 적은 시간대를 더 이상 도출하지 않는다. When the backup control unit 3115 continuously selects cells in the time zone with the lowest load, it first derives the cell in the time zone with the lowest load on each day of the week, and then derives the cell in the time zone with the lowest load after that cell. At this time, when a cell in the lowest load time zone and a cell in the next lowest load time zone are adjacent to each other, the backup control unit 3115 connects the centers of both adjacent cells. Again, the backup control unit 3115 derives a cell in the next low-load time period and determines whether the derived cell is adjacent to both cells whose centers are connected by a line segment. If the derived cell is adjacent to both cells whose centers are connected by a line segment, the centers are connected again, and if it is not adjacent to both cells, the backup control unit 3115 no longer derives the low-load time for the corresponding day of the week.

전술한 바와 같이 백업시간이 오래 걸릴 경우, 백업 제어부(3115)가 도출한 각 셀의 중심을 이은 모습은 도 7에 도시된 바와 같다. 이때 백업 제어부(3115)는, 과거의 백업시간이 얼마나 걸리는 지 도출하고, 도출한 백업시간과 각 셀의 중심을 이은 선분의 길이를 서로 비교한다. 만일 도출한 백업시간이 2 ~ 3 시간일 경우, 백업에 따른 시스템(1000)에 대한 부하를 최소화하기 위해 도 7의 수요일과 금요일에는 백업 스케줄에서 제외된다. 이는 도 7의 수요일과 금요일의 각 셀의 중심 간 이은 선분 길이가 2 이기 때문에 제외되도록 결정된다. 또한 도출한 백업시간의 2 ~ 3 시간을 모두 포함하는 월요일의 오전 2시 ~ 오전 6시, 화요일의 오전 2시 ~ 오전 5시, 목요일의 오전 3시 ~ 오전 6시, 토요일의 오전 9시 ~ 오전 12시, 일요일의 오전 5시 ~ 오전 11시 간 각각 백업이 이루어지도록 백업 제어부(3115)는 백업 스케줄을 지정한다.As described above, when the backup time takes a long time, the center of each cell derived by the backup control unit 3115 is connected as shown in FIG. 7. At this time, the backup control unit 3115 derives how long the past backup time took, and compares the derived backup time with the length of the line segment connecting the center of each cell. If the derived backup time is 2 to 3 hours, Wednesday and Friday of FIG. 7 are excluded from the backup schedule in order to minimize the load on the system 1000 due to backup. This is determined to be excluded because the length of the line segment between the centers of each cell on Wednesday and Friday in FIG. 7 is 2. In addition, 2 AM to 6 AM on Monday, 2 AM to 5 AM on Tuesday, 3 AM to 6 AM on Thursday, and 9 AM to Saturday, including all 2 to 3 hours of the derived backup time. The backup control unit 3115 specifies a backup schedule so that backups are performed at 12:00 AM and between 5:00 AM and 11:00 AM on Sundays, respectively.

한편, 전술한 바와 같이 백업 입력부(3113)는 사용자단말기(220)로부터 백업 시간대를 입력받을 수 있으며, 사용자단말기(220)로부터 입력받은 백업 시간대에 따라 백업이 시작되는 시간대가 정해질 수 있다. 예를 들어, 사용자단말기(220)로부터 입력받은 백업 시간대가 오전 2시인 경우, 월요일 및 화요일은 백업이 오전 2시부터 시작하고, 목요일에는 입력받은 시간대와 가장 가까운 오전 3시에 백업이 시작하며, 토요일에는 오전 9시, 일요일에는 오전 5시에 백업이 시작될 수 있다. 반면에, 사용자단말기(220)로부터 입력받은 백업 시간대가 오전 7시인 경우, 월요일에는 오전 7시에 가장 가까운 시간대에 백업이 끝날 수 있도록 오전 3시에 백업이 시작하고, 화요일에는 오전 2시에 백업이 시작하고, 목요일에는 오전 3시에 백업이 시작하고, 토요일에는 오전 9시, 일요일에는 오전 5시에 백업이 시작하도록 백업 스케줄이 지정될 수 있다.Meanwhile, as described above, the backup input unit 3113 can receive a backup time zone from the user terminal 220, and the time zone at which the backup starts can be determined according to the backup time zone input from the user terminal 220. For example, if the backup time input from the user terminal 220 is 2 a.m., backup starts at 2 a.m. on Monday and Tuesday, and on Thursday, backup starts at 3 a.m. closest to the input time zone, Backups can start at 9:00 AM on Saturdays and 5:00 AM on Sundays. On the other hand, if the backup time input from the user terminal 220 is 7 a.m., the backup starts at 3 a.m. on Monday so that the backup can be completed at the time closest to 7 a.m., and the backup starts at 2 a.m. on Tuesday. The backup schedule can be set to start at 3:00 AM on Thursday, 9:00 AM on Saturday, and 5:00 AM on Sunday.

도 8은 본 발명에 따른 서버 부하도의 또 다른 일 실시예를 보여주는 도면이다.Figure 8 is a diagram showing another embodiment of a server load diagram according to the present invention.

한편, 사용자단말기(220)로부터 입력받은 시간대에 따라 서버 부하도 내 셀의 가로길이가 변화할 수 있다. 즉, 사용자단말기(220)가 입력한 시간대에 따른 셀의 가로길이에 가중치를 줄 수 있는 것이다. 예를 들어, 사용자단말기(220)가 입력한 시간대가 오전 5시일 경우, 서버 부하도 내 오전 5시에 해당하는 가로 길이는 그 두 배에 해당하도록 가로 길이가 변형될 수 있다. 이처럼 가로 길이가 변형될 경우, 오전 5시에 해당하는 셀의 중심을 지나치는 선분의 길이도 1이 증가한 2만큼의 길이에 대한 가중치를 부여받는다. 예를 들어, 도 8에 도시된 바와 같이 오전 5시에 해당하는 셀의 가로길이가 두 배가 됨에 따라 오전 5시의 중심과 이어지는 선분의 길이도 함께 증가하고, 백업 제어부(3115)는 길이가 증가한 선분을 기초로 전술한 바와 같은 연산을 수행한다. 따라서 사용자단말기(220)로부터 입력받은 시간대를 고려하여 백업 스케줄이 지정될 수 있으며, 금요일의 경우, 도 7에서는 선분의 길이가 2였기 때문에 금요일에는 백업이 이루어지지 않았는데, 도 8에서와 같이 오전 5시에 해당하는 셀의 가로길이가 증가함에 따라 금요일의 선분 길이가 3이 되었고, 따라서 금요일에도 백업이 이루어지도록 백업 스케줄이 변경될 수 있다. Meanwhile, the horizontal length of the cell within the server load may change depending on the time zone input from the user terminal 220. In other words, a weight can be given to the horizontal length of the cell according to the time zone input by the user terminal 220. For example, if the time zone entered by the user terminal 220 is 5 a.m., the horizontal length corresponding to 5 a.m. in the server load diagram may be modified to correspond to twice that horizontal length. When the horizontal length is changed like this, the length of the line segment passing through the center of the cell corresponding to 5 AM is also given a weight of 2, which is an increase of 1. For example, as shown in FIG. 8, as the horizontal length of the cell corresponding to 5 a.m. is doubled, the length of the line segment connected to the center of 5 a.m. also increases, and the backup control unit 3115 increases the length. The above-described calculation is performed based on the line segment. Therefore, the backup schedule can be specified in consideration of the time zone input from the user terminal 220. In the case of Friday, because the length of the line segment in FIG. 7 was 2, backup was not performed on Friday, but as in FIG. 8, the backup schedule was 5 a.m. As the horizontal length of the cell corresponding to the hour increases, the line segment length for Friday becomes 3, so the backup schedule can be changed so that backup is performed on Friday as well.

한편, 사용자단말기(220)로부터 입력받은 시간대는 우선순위를 가진 복수 개의 시간대를 입력받을 수 있으며, 각 시간대는 우선순위에 따라 가로길이가 5배, 4배, 3배, 2배 등 길어진 후, 각 셀의 중심을 잇는 선분의 길이에 따라 백업 스케줄이 지정될 수 있다.Meanwhile, the time zone input from the user terminal 220 can receive a plurality of time zones with priorities, and each time zone is lengthened by 5 times, 4 times, 3 times, 2 times, etc. in horizontal length according to the priority. A backup schedule can be specified according to the length of the line segment connecting the center of each cell.

백업 제어부(3115)는, 백업 프로그램의 실행 시 백업 메모리부(3111)에 저장된 백업 프로그램의 정품 여부를 확인하고, 백업 프로그램이 정품이 아닌 경우 백업 프로그램의 실행을 중지시킬 수 있다.The backup control unit 3115 may check whether the backup program stored in the backup memory unit 3111 is genuine when executing the backup program, and may stop execution of the backup program if the backup program is not genuine.

백업 제어부(3115)는, 백업 프로그램의 실행 시 백업 스토리지부(313)의 저장된 특정 키 값을 읽어와 백업 메모리부(3111)에 저장된 백업 프로그램의 키 값과 비교하며, 비교된 두 값이 상이할 경우 오류 메시지를 나타내고, 백업 프로그램의 실행을 중지함으로써, 백업 프로그램의 불법 복제를 방지하여 프로그램 개발자의 권리를 보호할 수 있다.When executing a backup program, the backup control unit 3115 reads a specific key value stored in the backup storage unit 313 and compares it with the key value of the backup program stored in the backup memory unit 3111, and if the two compared values are different, In this case, an error message is displayed and the execution of the backup program is stopped, preventing illegal copying of the backup program and protecting the rights of the program developer.

상술한 바와 같은 구성을 가진 백업 제어부(3115)는, 하드디스크의 특성키값을 저장하여 프로그램의 정품여부를 판단하고, 실행여부를 결정하여 저작권을 보호할 수 있다.The backup control unit 3115, which has the above-described configuration, can store the characteristic key value of the hard disk to determine whether the program is genuine and determine whether to execute it to protect copyright.

본 발명에 따른 사용자단말기(220)는 키보드, 마우스, 터치패드, 터치 스크린 등의 입력수단과, 디스플레이 화면을 구비한 데스크탑 PC, 노트북 PC, 태블릿 PC, 스마트폰 등의 단말기로서, 이에 한정되는 것은 아니고, 통신망을 통해 네트워크 드라이브 모듈(200)의 네트워크 드라이브 서버(210)에 접속할 수 있으며, 검색 정보 및 선택 정보의 입력과, 검색된 결과 정보를 디스플레이할 수 있는 애플리케이션 프로그램의 설치가 가능한 디지털 정보의 처리가 가능한 구성이면 모두 포함될 수 있다. 본 발명에 따른 사용자단말기(220)는 네트워크 드라이브 서버(210)에 통신망을 통해 접속하여 정보를 송수신하는 구성요소로서, 예를 들면 스마트폰(smartphone), 태블릿 PC(tablet personalcomputer), 이동 전화기(mobile phone), 영상 전화기, 데스크탑 PC(desktoppersonal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), 웨어러블 장치(wearable device)(예: 스마트 안경, 머리 착용형 장치(head-mounted-device(HMD) 등), 무인단말기(kiosk) 또는 스마트 와치(smart watch)) 중 적어도 하나를 포함할 수 있다.The user terminal 220 according to the present invention is a terminal such as a desktop PC, laptop PC, tablet PC, or smartphone equipped with an input means such as a keyboard, mouse, touchpad, or touch screen, and a display screen, and is limited thereto. Instead, it is possible to access the network drive server 210 of the network drive module 200 through a communication network, and process digital information that allows input of search information and selection information, and installation of an application program that can display search result information. All possible configurations can be included. The user terminal 220 according to the present invention is a component that connects to the network drive server 210 through a communication network to transmit and receive information, for example, a smartphone, a tablet personal computer, or a mobile phone. phone, video phone, desktop personal computer, laptop personal computer, netbook computer, personal digital assistant (PDA), portable multimedia player (PMP), wearable device (e.g. : May include at least one of smart glasses, head-mounted-device (HMD), etc.), unmanned terminal (kiosk), or smart watch.

본 발명에 따른 사용자단말기(220), 네트워크 드라이브 모듈(200), 데이터 통합 관리 모듈(100) 및 백업 모듈(300)은 각각이 구비한 통신부 및 통신망을 통해 통신할 수 있다. 통신망은 단말들 및 서버들과 같은 각각의 노드 상호간에 정보 교환이 가능한 연결구조를 의미하는 것으로, 이러한 통신망의 일 예에는, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5G 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), wifi 네트워크, 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다. 사용자단말기(220), 네트워크 드라이브 모듈(200), 데이터 통합 관리 모듈(100) 및 백업 모듈(300)이 각각 구비한 통신부는, 전술한 통신망을 통한 유무선 데이터 통신을 수행할 수 있도록 상기 통신망을 위해 구비된 전자 부품을 포함할 수 있다. The user terminal 220, network drive module 200, data integration management module 100, and backup module 300 according to the present invention can communicate through each communication unit and communication network. A communication network refers to a connection structure that allows information exchange between nodes such as terminals and servers. Examples of such communication networks include the 3rd Generation Partnership Project (3GPP) network, Long Term Evolution (LTE) network, and 5G. Network, WIMAX (World Interoperability for Microwave Access) network, Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), wifi network, It includes, but is not limited to, a Bluetooth network, satellite broadcasting network, analog broadcasting network, and DMB (Digital Multimedia Broadcasting) network. The communication unit provided by the user terminal 220, the network drive module 200, the data integration management module 100, and the backup module 300 is provided for the communication network to enable wired and wireless data communication through the above-mentioned communication network. It may include provided electronic components.

본 명세서에서 네트워크 드라이브 모듈(200), 데이터 통합 관리 모듈(100) 및 백업 모듈(300)의 각 구성은 메모리에 저장된 연속된 수행과정들을 실행하는 프로세서들일 수 있다. 또는, 프로세서에 의해 구동되고 제어되는 소프트웨어 모듈들로서 동작할 수 있다. 나아가, 프로세서는 하드웨어 장치일 수 있다.In this specification, each component of the network drive module 200, the data integration management module 100, and the backup module 300 may be processors that execute sequential execution processes stored in memory. Alternatively, they may operate as software modules driven and controlled by a processor. Furthermore, a processor may be a hardware device.

본 발명에 따른 제1 내지 제4 로컬 저장소(111, 121, 131, 141), 공유 스토리지부(213) 및 백업 스토리지부(313)는 데이터베이스 관리 시스템(1000)(이하, DBMS)을 포함할 수 있다. DBMS는 다수의 사용자들이 데이터베이스 내의 데이터에 접근할 수 있도록 해주는 소프트웨어 도구의 집합이다. DBMS는 IMS, CODASYL DB, DB2, ORACLE, INFORMIX, SYBASE, INGRES, MS-SQL, Objectivity, O2, Versanat, Ontos, Gemstone, Unisql, Object Store, Starburst, Postgres, Tibero, MySQL 또는 MS-access등을 포함할 수 있다. DBMS는 특정 명령어의 입력에 따라 해당하는 특정 데이터에 접근하는 것이 가능하다. The first to fourth local storage units 111, 121, 131, and 141, the shared storage unit 213, and the backup storage unit 313 according to the present invention may include a database management system 1000 (hereinafter referred to as DBMS). there is. DBMS is a set of software tools that allow multiple users to access data in a database. DBMS includes IMS, CODASYL DB, DB2, ORACLE, INFORMIX, SYBASE, INGRES, MS-SQL, Objectivity, O2, Versanat, Ontos, Gemstone, Unisql, Object Store, Starburst, Postgres, Tibero, MySQL or MS-access. can do. DBMS allows access to specific data depending on the input of a specific command.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1개의 유닛이 2개 이상의 하드웨어를 이용하여 실현되어도 되고, 2개 이상의 유닛이 1개의 하드웨어에 의해 실현되어도 된다.In this specification, 'part' includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Additionally, one unit may be realized using two or more pieces of hardware, and two or more units may be realized using one piece of hardware.

본 발명의 보호범위가 이상에서 명시적으로 설명한 실시예의 기재와 표현에 제한되는 것은 아니다. 또한, 본 발명이 속하는 기술분야에서 자명한 변경이나 치환으로 말미암아 본 발명이 보호범위가 제한될 수도 없음을 다시 한 번 첨언한다.The scope of protection of the present invention is not limited to the description and expression of the embodiments explicitly described above. In addition, it is to be added once again that the scope of protection of the present invention may not be limited due to changes or substitutions that are obvious in the technical field to which the present invention pertains.

100 : 데이터 통합 관리 모듈 101 : 제1 서버그룹
102 : 제2 서버그룹 110 : 제1 서버
111 : 제1 로컬 저장소 113 : 백업부
120 : 제2 서버 121 : 제2 로컬 저장소
123 : 백업부 130 : 제3 서버
131 : 제3 로컬 저장소 133 : 백업부
140 : 제4 서버 141 : 제4 로컬 저장소
143 : 백업부 200 : 네트워크 드라이브 모듈
210 : 네트워크 드라이브 서버 211 : 드라이브 에이전트부
213 : 공유 스토리지부 220 : 사용자단말기
221 : 인터페이스부 300 : 백업 모듈
310 : 백업 서버 311 : 백업 에이전트부
3111 : 백업 메모리부 3113 : 백업 입력부
3115 : 백업 제어부 3117 : 백업 디스플레이부
313 : 백업 스토리지부
1000 : 서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템
100: Data integration management module 101: 1st server group
102: second server group 110: first server
111: first local storage 113: backup unit
120: second server 121: second local storage
123: Backup unit 130: Third server
131: Third local storage 133: Backup unit
140: fourth server 141: fourth local storage
143: Backup unit 200: Network drive module
210: network drive server 211: drive agent unit
213: shared storage unit 220: user terminal
221: Interface unit 300: Backup module
310: Backup server 311: Backup agent unit
3111: Backup memory unit 3113: Backup input unit
3115: Backup control unit 3117: Backup display unit
313: Backup storage unit
1000: Integrated data management system that enables data management through server duplication, provision of shared storage, and data backup service.

Claims (5)

서버 이중화를 통해 서버 내 데이터를 관리하는 데이터 통합 관리 모듈;
복수 개의 사용자단말기로 네트워크 드라이브를 제공하며, 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 데이터 통합 관리 모듈이 관리하는 데이터에 접근하는 것을 가능하게 하는 네트워크 드라이브 모듈; 및
상기 데이터 통합 관리 모듈이 관리하는 데이터를 기 설정된 스케줄에 따라 백업하는 백업 모듈;
을 포함하는,
서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템.
Data integration management module that manages data within the server through server redundancy;
A network drive module that provides a network drive to a plurality of user terminals and allows the user terminals to access data managed by the data integration management module through the network drive; and
a backup module for backing up data managed by the data integration management module according to a preset schedule;
Including,
An integrated data management system that enables data management through server duplication, provision of shared storage, and data backup services.
청구항 1에 있어서,
상기 데이터 통합 관리 모듈은, 복수 개의 서버를 포함하며,
상기 복수 개의 서버는, 각각 로컬 저장소를 포함하고,
상기 데이터 통합 관리 모듈은, 상기 로컬 저장소를 그룹화하고, 동일 그룹의 로컬 저장소들은 동일한 데이터를 가지도록 관리하며,
상기 데이터 통합 관리 모듈은, 상기 복수 개의 서버 중 적어도 어느 하나의 서버에 장애가 발생하는 경우, 상기 적어도 어느 하나의 서버와 동일한 그룹의 다른 서버에 저장된 데이터를 상기 사용자단말기로 제공하여 사용자단말기의 데이터 사용 안정성을 보장하는 것을 특징으로 하는,
서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템.
In claim 1,
The data integration management module includes a plurality of servers,
The plurality of servers each include a local storage,
The data integration management module groups the local repositories and manages local repositories in the same group to have the same data,
The data integration management module, when a failure occurs in at least one of the plurality of servers, provides data stored on another server of the same group as the at least one server to the user terminal to use the data of the user terminal. Characterized by ensuring stability,
An integrated data management system that enables data management through server duplication, provision of shared storage, and data backup services.
청구항 2에 있어서,
상기 네트워크 드라이브 모듈은,
상기 사용자단말기로 네트워크 드라이브를 제공하는 드라이브 에이전트부; 및
상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 데이터 통합 관리 모듈이 포함하는 복수 개의 서버의 로컬 저장소에 접근하도록 하는 공유 스토리지부;
를 포함하며,
상기 드라이브 에이전트부는, 상기 사용자단말기가 장애가 발생한 서버에 저장된 데이터의 수신 요청 신호를 송신할 때, 상기 장애가 발생한 서버와 동일 그룹의 다른 서버에 저장된 데이터를 상기 사용자단말기로 제공하여, 사용자단말기의 데이터 사용 안정성을 보장하는 것을 특징으로 하는,
서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템.
In claim 2,
The network drive module is,
A drive agent unit that provides a network drive to the user terminal; and
a shared storage unit that allows the user terminal to access local storage of a plurality of servers included in the data integration management module through the network drive;
Includes,
The drive agent unit, when the user terminal transmits a signal requesting reception of data stored in the server in which the error occurred, provides data stored in another server in the same group as the server in which the error occurred to the user terminal, allowing the user terminal to use the data. Characterized by ensuring stability,
An integrated data management system that enables data management through server duplication, provision of shared storage, and data backup services.
청구항 3에 있어서,
상기 공유 스토리지부는, 상기 로컬 저장소 내 저장된 데이터를 수신하여 저장하고,
상기 드라이브 에이전트부는, 상기 공유 스토리지부에 저장된 데이터를 상기 사용자단말기의 운영체제의 데이터 시스템으로 전환하며,
상기 드라이브 에이전트부는, 전환된 데이터 시스템을 상기 사용자단말기의 단말기용 로컬 운영체제의 네트워크 드라이브로 마운트하여 제공하고,
상기 드라이브 에이전트부는, 상기 사용자단말기가 상기 네트워크 드라이브를 통해 상기 공유 스토리지부에 접근하여 데이터를 생성, 수정 또는 삭제를 수행하면, 그 결과를 상기 로컬 저장소 내 데이터에 반영하여 복수 개의 사용자단말기가 상기 로컬 저장소 내 데이터를 공유할 수 있도록 하는 것을 특징으로 하는,
서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템.
In claim 3,
The shared storage unit receives and stores data stored in the local storage,
The drive agent unit converts the data stored in the shared storage unit into a data system of the operating system of the user terminal,
The drive agent unit mounts the converted data system as a network drive of the local operating system for the user terminal and provides it,
The drive agent unit, when the user terminal accesses the shared storage unit through the network drive and creates, modifies, or deletes data, reflects the results on the data in the local storage to create a plurality of user terminals in the local storage unit. Characterized by allowing data within the storage to be shared,
An integrated data management system that enables data management through server duplication, provision of shared storage, and data backup services.
청구항 1에 있어서,
상기 데이터 통합 관리 모듈은, 상기 기 설정된 스케줄에 따라 상기 서버 내 데이터의 접근 권한을 부여하는 백업부를 더 포함하고,
상기 백업 모듈은,
상기 백업부를 통해 상기 기 설정된 스케줄에 따라 상기 서버 내 데이터 중 백업 대상 데이터를 지정하고, 지정된 백업 대상 데이터를 백업 데이터로 형성하는 백업 에이전트부; 및
상기 백업 에이전트부가 형성한 백업 데이터를 수신하고 저장하는 백업 스토리지부;
를 포함하는,
서버 이중화를 통한 데이터 관리, 공유 스토리지 제공 및 데이터 백업 서비스가 가능한 데이터 통합 관리 시스템.
In claim 1,
The data integration management module further includes a backup unit that grants access to data in the server according to the preset schedule,
The backup module is,
a backup agent unit that specifies backup target data among data in the server according to the preset schedule through the backup unit and forms the designated backup target data as backup data; and
a backup storage unit that receives and stores backup data formed by the backup agent unit;
Including,
An integrated data management system that enables data management through server duplication, provision of shared storage, and data backup services.
KR1020220074011A 2022-06-17 2022-06-17 Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services KR20230173351A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220074011A KR20230173351A (en) 2022-06-17 2022-06-17 Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220074011A KR20230173351A (en) 2022-06-17 2022-06-17 Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services

Publications (1)

Publication Number Publication Date
KR20230173351A true KR20230173351A (en) 2023-12-27

Family

ID=89378089

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220074011A KR20230173351A (en) 2022-06-17 2022-06-17 Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services

Country Status (1)

Country Link
KR (1) KR20230173351A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102084031B1 (en) 2019-08-07 2020-05-29 주식회사 도시엔컴 Method for managing integrated local storage and apparatus therefor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102084031B1 (en) 2019-08-07 2020-05-29 주식회사 도시엔컴 Method for managing integrated local storage and apparatus therefor

Similar Documents

Publication Publication Date Title
US11829255B2 (en) Information management security health monitoring system
US20210081383A1 (en) Lifecycle support for storage objects
US10963350B2 (en) Dynamic triggering of block-level backups based on block change thresholds and corresponding file identities using indexing in a data storage management system
US10983986B2 (en) Organically managing primary and secondary storage of a data object based on an expiry timeframe supplied by a user of the data object
US9984006B2 (en) Data storage systems and methods
US20210374021A1 (en) Automated media agent state management
US10642654B2 (en) Storage lifecycle pipeline architecture
US11463264B2 (en) Use of data block signatures for monitoring in an information management system
US9355060B1 (en) Storage service lifecycle policy transition management
US20180024892A1 (en) User-level quota management of data objects stored in information management systems
CN109194711B (en) Synchronization method, client, server and medium for organization architecture
US11159469B2 (en) Using machine learning to modify presentation of mailbox objects
CA2955257A1 (en) Systems and methods for aggregating information-asset metadata from multiple disparate data-management systems
US20220215007A1 (en) Anomaly detection in deduplication pruning operations
US11711375B2 (en) Team member transfer tool
US20220179986A1 (en) Methods for managing user permissions
US11615147B2 (en) Mobile storage manager control application for managing a storage manager of an information management system
US20230259640A1 (en) Data storage systems and methods of an enforceable non-fungible token having linked custodial chain of property transfers prior to minting using a token-based encryption determination process
KR102520831B1 (en) Statutory compulsory training curating platform system
KR20230173351A (en) Data integrated management system with server redundancy for data management, shared storage delivery, and data backup services
Słota et al. Storage management systems for organizationally distributed environments PLGrid PLUS case study
KR20240040931A (en) Modular maritime traffic congestion prediction system