KR20160003515A - Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware - Google Patents

Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware Download PDF

Info

Publication number
KR20160003515A
KR20160003515A KR1020140082076A KR20140082076A KR20160003515A KR 20160003515 A KR20160003515 A KR 20160003515A KR 1020140082076 A KR1020140082076 A KR 1020140082076A KR 20140082076 A KR20140082076 A KR 20140082076A KR 20160003515 A KR20160003515 A KR 20160003515A
Authority
KR
South Korea
Prior art keywords
storage
primitive
cloud
operations
metadata
Prior art date
Application number
KR1020140082076A
Other languages
Korean (ko)
Other versions
KR101590716B1 (en
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 KR1020140082076A priority Critical patent/KR101590716B1/en
Publication of KR20160003515A publication Critical patent/KR20160003515A/en
Application granted granted Critical
Publication of KR101590716B1 publication Critical patent/KR101590716B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

The present invention relates to a device and method for an atomic operation and storage replication of collaborative middleware based on a cloud storage. According to an embodiment of the present invention, the method includes: a first step for conducting storage primitive operations (SPOs) wherein a cloud manager processes the resource of a cloud storage; a second step for conducting metadata primitive operations (MPOs) wherein a database manager processes metadata of the resource stored in a database; and a third step wherein the cloud manager resets the cloud storage to a condition prior to the execution of the SPOs, while the database manager resets the metadata of the resources to a condition prior to the execution of the MPOs, if at least any one of SPO or MPO has not been executed.

Description

클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치 및 방법{DEVICE AND METHOD FOR OPERATION ATOMICITY AND STORAGE REPLICATION OF CLOUD STORAGE BASED COLLABORATIVE MIDDLEWARE}TECHNICAL FIELD [0001] The present invention relates to an atomic operation of a collaborative middleware based on cloud storage, a storage replication apparatus, and a storage replication apparatus and method.

본 발명의 실시예들은 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치 및 방법에 관한 것이다.Embodiments of the present invention relate to atomic computing and storage replication devices and methods of collaborative middleware based on cloud storage.

클라우드 스토리지 서비스(Cloud Storage Service)는 리소스(resource)에 대한 원격 스토리지 관리 작업을 제공하는 클라우드 컴퓨팅 서비스 중 하나이다.Cloud Storage Service is one of the cloud computing services that provides remote storage management work on resources.

클라우드 스토리지는 민첩성, 확장성, 탄력성 및 멀티 테넌시(multi-tenancy)의 관점에서 클라우드 컴퓨팅과 같은 특징이 있으며, 스토리지의 가상화 된 풀을 통해 개인 사용자뿐만 아니라 사용자 그룹에 방대한 용량과 저장 작업을 제공한다.Cloud storage has features like cloud computing in terms of agility, scalability, resiliency, and multi-tenancy, and the virtualized pool of storage provides massive storage and storage for individual users as well as groups of users do.

C3ware는 그룹을 생성하거나 그룹에서의 맴버십을 만드는 등의 그룹 작업의 실행시에 작업장의 리소스를 관리할 수 있으며, 신뢰성 있는 리소스의 관리를 위해 다수의 클라우드 스토리지를 동시에 사용한다.C3ware can manage workspace resources at the same time as group tasks such as creating groups or creating memberships in groups, and using multiple cloud storages simultaneously for reliable resource management.

C3ware는 클라우드 스토리지(Cloud Storage)를 통해 협업 서비스(Collaborative)와 작업장(work space)을 제공할 수 있으며, 사용자와 여러 그룹에 여러 종류의 작업장을 제공할 수 있다. 이때, 상기 작업장으로 개인 작업장(personal workspace), 그룹 작업장(group workspace) 및 개방 작업장(open workspace)이 제공될 수 있다.C3ware can provide collaborative services and work space through cloud storage and can provide multiple types of workplaces to users and groups. At this time, the workplace may be provided with a personal workspace, a group workspace, and an open workspace.

종래의 클라우드 스토리지 서비스(Cloud Storage Service)는 리소스에 대한 메타데이터를 저장하지 않는데, 이와 같은 이유로 시스템 상에서의 리소스 관리가 용이하지 않다는 문제점이 있다. Conventional cloud storage services do not store metadata about resources. For this reason, there is a problem that resource management on a system is not easy.

관련 선행기술로는 한국 공개특허공보 제10-2014-0032862호(발명의 명칭: 통합 클라우드 서비스 제공 장치 및 방법, 공개일자: 2014년 3월 17일)가 있다.Related Prior Art Korean Patent Publication No. 10-2014-0032862 (entitled " Integrated Cloud Service Providing Apparatus and Method, Public Date: March 17, 2014) "

본 발명의 일 실시예는 클라우드 스토리지(Cloud)에 기반한 협업 미들웨어(Collaborative Middleware)에서 일관성(consistency)을 유지할 수 있는 원자성 연산(operation atomcity) 방법을 제공하고자 한다.One embodiment of the present invention is to provide an operation atomicity method capable of maintaining consistency in a cloud-based collaborative middleware.

또한, 본 발명의 일 실시예는 클라우드 스토리지(Cloud Strage)의 리소스(resource)와 데이터베이스(Database)에 저장되는 메타데이터(metadata)에 대한 원시 연산(Primitive Operation)을 정의하고, 서비스 연산(service operation)을 원시 연산(primitive operation)의 큐(queue)로 구성하며, 모든 원시 연산이 수행되도록 하거나 또는 모든 원시 연산 자체가 수행되지 않도록 하여 리소스와 메타데이터의 일부만이 업데이트되는 것을 방지하고자 한다.In addition, one embodiment of the present invention defines a primitive operation for a resource of a cloud storage and metadata stored in a database, and performs a service operation ) Is configured as a queue of primitive operations, and all primitive operations are performed or all primitive operations are not performed, thereby preventing only a part of resources and metadata from being updated.

또한, 본 발명의 일 실시예에 따르면 가장 최근의 모든 정보를 포함하는 리소스를 저장한 스토리지 중에서 가장 가용성이 좋은 스토리지를 마스터 스토리지로 보장함으로써, 상기 마스터 스토리지리를 통해 가장 최근 버전의 리소스에 쉽고 빠르게 액세스할 수 있도록 하고자 한다.In addition, according to an embodiment of the present invention, it is possible to ensure that the most available storage among the storages storing the resources including all the latest information is the master storage, so that the master storage can easily and quickly I want to be able to access it.

또한, 본 발명의 일 실시예는 다수의 클라우드 스토리지에서의 리소스의 복제 및 복구를 제공하고자 한다.In addition, one embodiment of the present invention seeks to provide replication and recovery of resources in multiple cloud storages.

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the above-mentioned problem (s), and another problem (s) not mentioned can be clearly understood by those skilled in the art from the following description.

본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법은, 클라우드 매니저가 클라우드 스토리지의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시키는 제1 단계; 데이터베이스 매니저가 데이터베이스에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시키는 제2 단계; 및 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면, 상기 클라우드 매니저가 상기 클라우드 스토리지를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고, 상기 데이터베이스 매니저가 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌리는 제3 단계;를 포함한다.The atomic operation and the storage replication method of the collaborative middleware based on the cloud storage according to an embodiment of the present invention include a first step in which a cloud manager performs storage primitive operations (SPO) for processing resources of a cloud storage ; A second step of a database manager performing metadata primitive operations (MPO) for processing metadata of the resource stored in the database; And if the raw operation of at least one of the storage raw operations and the metadata raw operations is not performed, the cloud manager returns the cloud storage to a state prior to execution of the storage raw operations, And returning the metadata of the resource to a state before the execution of the metadata primitive operations.

상기 제1 단계는 상기 클라우드 매니저가 상기 스토리지 원시 연산들에 포함된 연산을 순차적으로 실행시키고, 상기 제2 단계는 상기 데이터베이스 매니저가 상기 메타데이터 원시 연산들에 포함된 연산을 순차적으로 실행시킬 수 있다.Wherein the first step sequentially executes operations included in the storage source operations by the cloud manager, and the second step allows the database manager to sequentially execute the operations included in the metadata source operations .

상기 제3 단계는 상기 데이터베이스 매니저가 상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행할 수 있다.In the third step, the database manager performs a commit command when all the primitive operations of the metadata primitive operations are executed, and if the primitive operation of at least one of the metadata primitive operations is not executed, ) Command.

상기 스토리지 원시 연산 및 상기 메타데이터 원시 연산은 데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산일 수 있다.The storage primitive operation and the metadata primitive operation may be Create, Read, Update and Delete operations of data.

상기 제1 단계는 상기 클라우드 매니저가 복수개의 스토리지의 각각의 원시 연산(primitive operation)들의 큐(queue)에 요청 받은 순서로 원시 연산을 포함시키는 제1-1 단계; 상기 각 스토리지가 상기 큐에 포함된 원시 연산의 순서에 따라 연산을 실행하는 제1-2 단계; 및 상기 클라우드 매니저가 상기 큐의 원시 연산이 모두 실행된 스토리지들 중에서 하나를 마스터 스토리지로 지정하는 제1-3 단계;를 포함할 수 있다.The first step includes a first step of the cloud manager including a primitive operation in a queue in a primitive operation queue of each of a plurality of storages in a requested order; A first step of each of the storages executing an operation according to a sequence of primitive operations included in the queue; And a third step of the cloud manager designating one of the storages in which the primitive operation of the queue is executed as the master storage.

상기 제1 단계는 상기 클라우드 매니저는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면, 상기 원시 연산을 상기 큐에서 제거하지 않는 제1-4 단계; 및 상기 클라우드 매니저는 상기 각 스토리지가 정상 상태로 복구되면, 상기 큐에 포함되어 있으나 실행되지 않은 원시 연산을 실행하는 제1-5 단계;를 포함할 수 있다.The first step is that the cloud manager does not remove the primitive operation from the queue if the primitive operation included in the queue is not executed in each of the storages; And (5) when the storage manager is restored to a normal state, the cloud manager executes a raw operation that is included in the queue but is not executed.

상기 제1-1 단계 이전에, 스토리지 상태 표시부가 상기 복수개의 스토리지의 각각이 대기 상태임을 나타내는 녹색(Green)을 표시하는 단계;를 더 포함하고, 상기 제1-2 단계는, 상기 스토리지 상태 표시부가 상기 각 스토리지에서 상기 큐에 포함된 원시 연산을 실행 중임을 나타내는 황색(Yellow)을 표시하고, 상기 제1-4 단계는, 상기 스토리지 상태 표시부가 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않았음을 나타내는 적색(Red)을 표시하고, 상기 제1-5 단계는, 상기 스토리지 상태 표시부가 상기 각 스토리지가 정상 상태로 복구되었음을 나타내는 청색(Blue)을 표시하고, 상기 제1 단계는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산들이 실행되지 않아 큐가 가득 차거나 상기 각 스토리지를 사용하지 못하는 상태에 해당하면 상기 스토리지 상태 표시부가 흑색(Black)을 표시하는 제1-6 단계;를 더 포함할 수 있다.Further comprising the step of displaying a green indicating that each of the plurality of storages is in a standby state before the step of the first step, Displays a yellow color indicating that a raw operation included in the queue is being executed in each of the storages, and the step (1-4) displays the raw operation included in the queue in each of the storages The storage status display unit displays a blue color indicating that each storage is restored to a normal status, and the first step displays a red color indicating that the storage has not been executed, If the queues are full or the storage is not available because the primitive operations included in the queue are not executed in each of the storages, Ridge status display unit is the first stage 1-6 for displaying black (Black); can further comprise a.

상기 제1-3 단계는 상기 클라우드 매니저가 상기 큐의 원시 연산들이 모두 실행된 스토리지들 중에서, 지정된 상기 마스터 스토리지 이외의 스토리지들을 서브 스토리지로 지정할 수 있다.In the step 1-3, the cloud manager may designate, as sub-storage, storage other than the designated master storage among the storages in which all the primitive operations of the queue are executed.

본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치는 리소스를 저장하는 클라우드 스토리지; 상기 클라우드 스토리지의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시키는 클라우드 매니저; 상기 리소스의 메타데이터를 저장하는 데이터베이스; 및 상기 데이터베이스에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시키는 데이터베이스 매니저;를 포함하고, 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면, 상기 클라우드 매니저는 상기 클라우드 스토리지를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고, 상기 데이터베이스 매니저는 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌린다.The atomic operation of the collaboration middleware based on the cloud storage according to an embodiment of the present invention and the storage replication apparatus include a cloud storage for storing resources; A cloud manager for performing storage primitive operations (SPOs) for processing resources of the cloud storage; A database for storing metadata of the resources; And a database manager for performing metadata primitive operations (MPOs) for processing metadata of the resources stored in the database, wherein at least one of the storage primitive operations and the metadata primitive operations The cloud manager returns the cloud storage to a state prior to execution of the storage primitive operations and the database manager returns the metadata of the resource to a state prior to execution of the metadata primitive operations Turn it.

상기 클라우드 매니저는 상기 스토리지 원시 연산들에 포함된 연산을 순차적으로 실행시키고, 상기 데이터베이스 매니저는 상기 메타데이터 원시 연산들에 포함된 연산을 순차적으로 실행시킬 수 있다.The cloud manager may sequentially execute the operations included in the storage primitive operations, and the database manager may sequentially execute the operations included in the metadata primitive operations.

상기 데이터베이스 매니저는 상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행할 수 있다.The database manager performs a commit command when all the primitive operations of the metadata primitive operations are executed and performs a rollback command if at least one primitive operation of the metadata primitive operations is not executed .

상기 스토리지 원시 연산 및 상기 메타데이터 원시 연산은 데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산일 수 있다.The storage primitive operation and the metadata primitive operation may be Create, Read, Update and Delete operations of data.

상기 클라우드 매니저는 복수개의 스토리지의 각각의 원시 연산(primitive operation)들의 큐(queue)에 요청 받은 순서로 원시 연산을 포함시키고, 상기 각 스토리지가 상기 큐에 포함된 원시 연산의 순서에 따라 연산을 실행하도록 제어하고, 상기 큐의 원시 연산이 모두 실행된 스토리지들 중에서 하나를 마스터 스토리지로 지정할 수 있다.Wherein the cloud manager includes a primitive operation in a queue of primitive operations of each of a plurality of storages in a requested order, and each storage executes an operation according to a sequence of primitive operations included in the queue , And designate one of the storages in which the primitive operation of the queue is executed as master storage.

상기 클라우드 매니저는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면, 상기 원시 연산을 상기 큐에서 제거하지 않고, 상기 각 스토리지가 정상 상태로 복구되면, 상기 큐에 포함되어 있으나 실행되지 않은 원시 연산을 실행할 수 있다.Wherein the cloud manager does not remove the primitive operations from the queue if primitive operations included in the queues are not performed in the respective storages and if the respective storages are restored to a normal state, You can perform primitive operations.

스토리지 상태 표시부는 상기 복수개의 스토리지의 각각이 대기 상태이면 녹색(Green)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산을 실행 중이면 황색(Yellow)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면 적색(Red)을 표시하고, 상기 각 스토리지가 정상 상태로 복구되면 청색(Blue)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산들이 실행되지 않아 큐가 가득 차거나 상기 각 스토리지를 사용하지 못하는 상태에 해당하면 상기 스토리지 상태 표시부가 흑색(Black)을 표시할 수 있다.Wherein the storage status display unit displays green when each of the plurality of storages is in a standby state and displays yellow when each of the storages is executing a primitive operation included in the queue, Displaying red when the primitive operations included in the queue are not executed and displaying blue when the respective storage is restored to a normal state and primitive operations included in the queue are not executed in each of the storages If the queue is full or the storage is not available, the storage status indicator may display black.

상기 클라우드 매니저는 상기 큐의 원시 연산들이 모두 실행된 스토리지들 중에서, 지정된 상기 마스터 스토리지 이외의 스토리지들을 서브 스토리지로 지정할 수 있다.The cloud manager may designate, as sub-storage, storage other than the specified master storage among the storages in which all the primitive operations of the queue are executed.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 첨부 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and the accompanying drawings.

본 발명의 일 실시예에 따르면, 클라우드(Cloud) 스토리지에 기반한 협업 미들웨어(Collaborative Middleware)에서 일관성(consistency)을 유지할 수 있는 원자성 연산(operation atomcity) 방법을 제공할 수 있다.According to an embodiment of the present invention, it is possible to provide an operation atomicity method capable of maintaining consistency in collaborative middleware based on cloud storage.

본 발명의 일 실시예에 따르면 클라우드 스토리지(Cloud Strage)의 리소스(resource)와 데이터베이스(Database)에 저장되는 메타데이터(metadata)에 대한 원시 연산(Primitive Operation)을 정의하고, 서비스 연산(service operation)을 원시 연산(primitive operation)의 큐(queue)로 구성하며, 모든 원시 연산이 수행되도록 하거나 또는 모든 원시 연산 자체가 수행되지 않도록 하여 리소스와 메타데이터의 일부만이 업데이트되는 것을 방지하고자 한다.According to an embodiment of the present invention, a resource of a cloud storage and a primitive operation for metadata stored in a database are defined, and a service operation, Is configured as a queue of primitive operations and all primitive operations are performed or all primitive operations are not performed to prevent only a part of the resources and metadata from being updated.

본 발명의 일 실시예에 따르면 가장 최근의 모든 정보를 포함하는 리소스를 저장한 스토리지 중에서 가장 가용성이 좋은 스토리지를 마스터 스토리지로 보장함으로써, 상기 마스터 스토리지리를 통해 가장 최근 버전의 리소스에 쉽고 빠르게 액세스할 수 있도록 하고자 한다.According to an embodiment of the present invention, it is possible to easily and quickly access the latest version of resources through the master storage by ensuring that the most available storage among the storages storing resources including all the latest information is the master storage .

본 발명의 일 실시예는 다수의 클라우드 스토리지에서의 리소스의 복제 및 복구를 제공하고자 한다.One embodiment of the present invention seeks to provide replication and recovery of resources in multiple cloud storages.

도 1은 본 발명의 일 실시예에 따른 협업 서비스(Collaborative)와 작업장(work space)을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산을 위한 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 스토리 복제를 위한 구성을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 클라우드 스토리지들의 상태를 표시하는 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 클라우드 스토리지의 복제 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법과 종래 기술의 성능을 비교하기 위한 그래프이다.
1 is a view for explaining a collaborative service and a work space according to an embodiment of the present invention.
FIG. 2 is a view for explaining a configuration for atomic computing of a collaboration middleware based on cloud storage according to an embodiment of the present invention.
FIG. 3 is a diagram for explaining a configuration for replicating storages of collaborative middleware based on cloud storage according to an embodiment of the present invention. Referring to FIG.
FIG. 4 is a diagram illustrating a method of displaying the state of the cloud storage according to an embodiment of the present invention. Referring to FIG.
5 is a flowchart illustrating an atomic operation and a storage replication method of a collaborative middleware based on cloud storage according to an embodiment of the present invention.
6 is a flowchart illustrating a replication method of a cloud storage according to an embodiment of the present invention.
7 is a graph for comparing the performance of the conventional technology with the atomic operation of the collaboration middleware based on the cloud storage according to an embodiment of the present invention and the storage replication method.

본 발명의 이점 및/또는 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and / or features of the present invention, and how to accomplish them, will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. It should be understood, however, that the invention is not limited to the disclosed embodiments, but is capable of many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 협업 서비스(Collaborative)와 작업장(work space)을 설명하기 위한 도면이고, 도 2는 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산을 위한 구성을 설명하기 위한 도면이다.FIG. 1 is a diagram for explaining a collaborative service and a work space according to an embodiment of the present invention. FIG. 2 is a diagram illustrating an atomic operation of a collaboration middleware based on cloud storage according to an embodiment of the present invention. Fig.

도 1에 도시된 바와 같이 본 발명의 일 실시예에 따르면, 미들웨어(Middleware: 100)가 클라우드 스토리지(Cloud Storage)를 통해 협업 서비스(Collaborative)와 작업장(work space)을 제공할 수 있다.As shown in FIG. 1, according to an embodiment of the present invention, a middleware 100 can provide a collaborative service and a work space through a cloud storage.

보다 상세하게 설명하면, 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치(100)는 C3ware로 구성될 수 있으며, 상기 원자성 연산과 스토리지 복제 장치(100)는 사용자(110, 111, 112)와 사용자 그룹(120)에 개인 작업장(personal workspace: 115), 그룹 작업장(group workspace: 125) 및 개방 작업장(open workspace: 135)을 제공할 수 있다.In more detail, the atomic operation of the collaborative middleware based on the cloud storage and the storage replication apparatus 100 may be constituted by C3ware, and the atomic operation and the storage replication apparatus 100, May provide a personal workspace 115, a group workspace 125, and an open workspace 135 to the users 110, 111, 112 and the user group 120.

원자성 연산과 스토리지 복제 장치 (100)는 그룹(120)을 생성하거나 그룹에서의 맴버십을 만드는 등의 그룹 작업의 실행시에 작업장의 리소스를 관리할 수 있으며, C3ware에서는 신뢰성 있는 리소스의 관리를 위해, 도 2에 도시된 바와 같이 다수의 클라우드 스토리지(215, 216)를 동시에 사용한다.The atomic operation and the storage replica device 100 can manage the resources of the workplace at the time of executing group operations such as creating a group 120 or making a membership in a group. , A plurality of cloud storages 215 and 216 are used simultaneously as shown in FIG.

일반적으로 클라우드 스토리지 서비스(Cloud Storage Service)는 클라우드 스토리지(215, 216)을 통해 기본적인 리소스(resource) 관리 기능을 제공하고, 그룹 작업 시에 필요한 작업을 지원하기 위해 데이터베이스(225)에 리소스의 메타데이터(metadata)를 저장하여, 다수의 클라우드 스토리지(215, 216)와 메타데이터 간의 일관성을 유지할 수 있다.Generally, the cloud storage service provides basic resource management functions through the cloud storage 215 and 216 and stores metadata of resources in the database 225 in order to support operations required during group operations metadata can be stored to maintain consistency between the plurality of cloud storages 215 and 216 and the metadata.

도 2를 참조하면, 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치는 클라우드 스토리지(215, 216), 클라우드 매니저(211, 212), 데이터베이스(225) 및 데이터베이스 매니저(220)를 포함한다.2, the atomic operation and the storage replication apparatus of the collaboration middleware based on the cloud storage according to an embodiment of the present invention includes the cloud storage 215 and 216, the cloud managers 211 and 212, the database 225, And a database manager 220.

클라우드 스토리지(215, 216)는 리소스를 저장하고, 클라우드 매니저(211, 212)는 상기 클라우드 스토리지(215, 216)의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시킨다.The cloud storages 215 and 216 store resources and the cloud managers 211 and 212 perform storage primitive operations (SPO) for processing the resources of the cloud storages 215 and 216.

또한, 데이터베이스(225)는 상기 리소스의 메타데이터를 저장하고, 데이터베이스 매니저(220)는 상기 데이터베이스(225)에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시킨다.The database 225 stores metadata of the resource and the database manager 220 performs metadata primitive operations (MPO) for processing the metadata of the resource stored in the database 225 .

이때, 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들에 포함되는 원시 연산(Primitive Operation)은 상기 클라우드 스토리지(211, 212)의 리소스 정보와 데이터베이스(225)의 메타데이터를 다루기 위한 연산으로서, 데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산에 해당한다.The primitive operations included in the storage primitive operations and the metadata primitive operations are operations for handling resource information of the cloud storages 211 and 212 and meta data of the database 225, (Create), Read (Read), Update (Update), and Delete (Delete) operations.

표 1은 본 발명의 일 실시예에 따른 원시 연산을 스토리지 원시 연산과 메타데이터 원시 연산으로 구분하여 표시하고 있다.Table 1 shows the primitive operations according to an embodiment of the present invention by dividing them into the storage primitive operation and the metadata primitive operation.

본 발명의 일 실시예에 따른 원시 연산은 표 1에서와 같이 스토리지 원시 연산과 메타데이터 원시 연산으로 구분할 수 있다.The primitive operation according to an embodiment of the present invention can be divided into a storage primitive operation and a metadata primitive operation as shown in Table 1. [

종류Kinds 연산calculate 설명Explanation

스토리지 원시연산(Storage Primitive Operation)


Storage Primitive Operation
S1S1 폴더 생성Create Folder
S2S2 폴더 제거Remove folder S3S3 파일 생성File creation S4S4 파일 제거Remove file S5S5 문서/폴더 수정Edit documents / folders S6S6 문서 정보 읽기Read document information S7S7 문서 얻기Getting documents S8S8 버저닝(Versioning)을 이용해 문서/폴더 복원Restoring documents / folders using versioning 메타데이터 원시 연산
(Metadata Primitive Operation)
Metadata Raw Operations
(Metadata Primitive Operation)
M1M1 메타데이터 생성Metadata generation
M2M2 메타데이터 제거Remove metadata M3M3 메타데이터 수정Edit metadata M4M4 메타데이터 읽기Read Metadata

표 1에서와 같이 스토리지 원시 연산은 클라우드 스토리지의 리소스를 복구하고 관리하기 위한 원시 연산이고, 메타데이터 원시 연산은 그룹 작업 시의 리소스의 메타데이터를 처리하기 위한 원시 연산이다.As shown in Table 1, the storage primitive operation is a primitive operation for recovering and managing the resources of the cloud storage, and the metadata primitive operation is a primitive operation for processing the metadata of the resource at the time of group operation.

본 발명의 일 실시예에 따른 협업 서비스(Collaborative Service) 시에는 모든 원시 연산들이 트랜잭션(transaction)과 같이 원자성(atomic) 방법으로 실행된다.In a collaborative service according to an embodiment of the present invention, all primitive operations are executed in an atomic manner such as a transaction.

협업 서비스의 실행시에는 상기 협업 서비스를 구성하는 모든 원시 연산들이 순서대로 실행되며, 상기 순서에 의한 원시 연산들의 실행 중에 어느 하나의 원시 연산의 실행이 실패하는 경우에는, 이전에 실행된 원시 연산에 의해 부분적으로 수행된 협업 서비스를 모두 취소한다.When executing the collaboration service, all the primitive operations constituting the collaboration service are executed in order. If the execution of one primitive operation fails during the execution of the primitive operations in the above order, Cancel all collaborative services partially performed by

즉, 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면, 상기 클라우드 매니저(211, 212)가 상기 클라우드 스토리지(215, 216)를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고, 상기 데이터베이스 매니저(220)가 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌린다.That is, if the raw operation of at least one of the storage primitive operations and the metadata primitive operations is not performed, the cloud managers 211 and 212 may cause the cloud storage 215 and 216 to execute the storage primitive operations The database manager 220 returns the metadata of the resource to a state prior to execution of the metadata primitive operations.

보다 상세하게 설명하면, 데이터베이스 매니저(220)는 상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행할 수 있다.More specifically, the database manager 220 performs a commit command when all the primitive operations of the metadata primitive operations are executed, and if at least one primitive operation of the metadata primitive operations is not performed You can perform a rollback command.

도 3은 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 스토리 복제를 위한 구성을 설명하기 위한 도면이다.FIG. 3 is a diagram for explaining a configuration for replicating storages of collaborative middleware based on cloud storage according to an embodiment of the present invention. Referring to FIG.

도 3에 도시된 바와 같이, 클라우드 스토리지(215, 216, 217)의 각각의 클라우드 매니저(211, 212, 213)는 스토리지 커넥터 매니저(230)를 통해 스토리지 원시 연산(Storage Primitive Operation)을 전달 받으면, 각 클라우드 스토리지의 큐(Queue: 201, 202, 203)에 상기 전달받은 원시 연산을 전달받은 순서대로 포함시킨다.As shown in FIG. 3, when each of the cloud managers 211, 212, and 213 of the cloud storage 215, 216, and 217 receives the Storage Primitive Operation through the storage connector manager 230, And includes the received primitive operations in queues 201, 202, and 203 of the respective cloud storages in the order received.

상기 각각의 큐(201, 202, 203)는 각 스토리지(215, 216, 217)에 할당되어 있으며, 상기 클라우드 매니저(211, 212, 213)는 각 스토리지(215, 216, 217)가 상기 큐(201, 202, 203)에 포함된 원시 연산의 순서에 따라 연산을 실행하도록 한다.Each of the queues 201, 202, and 203 is allocated to each of the storages 215, 216, and 217, and the storages 215, 216, and 217 of the respective cloud managers 211, 201, 202, and 203 in accordance with the order of the primitive operations.

이때, 상기 큐(201, 202, 203)에 포함된 원시 연산은 성공적으로 실행되면 상기 큐(201, 202, 203)에서 제거되고 다음 원시 연산이 실행되며, 큐(201, 202, 203)가 끝날 때까지 원시 연산의 실행과 제거 과정이 계속된다.At this time, if the primitive operations included in the queues 201, 202, and 203 are successfully executed, they are removed from the queues 201, 202, and 203 and the next primitive operation is performed. Until then, the execution and removal of primitive operations continues.

상기 클라우드 매니저(211, 212, 213)는 상기 각 스토리지(215, 216, 217)에서 상기 큐(201, 202, 203)에 포함된 원시 연산이 실행되지 않으면, 상기 원시 연산을 상기 큐(201, 202, 203)에서 제거하지 않으며, 상기 각 스토리지(215, 216, 217)가 정상 상태로 복구되면, 상기 큐(201, 202, 203)에 포함되어 있으나 실행되지 않은 원시 연산을 실행한다.The cloud managers 211, 212, and 213 may perform the primitive operations in the queues 201, 202, and 203 in the respective storages 215, 216, and 217, 202 and 203 and when the respective storage units 215, 216, and 217 are restored to their normal state, they execute raw operations that are included in the queues 201, 202, and 203 but are not executed.

즉, 네트워크 실패 등의 이유로 원시 연산이 실패한 경우에는 클라우드 매니저(211, 212, 213)는 상기 원시 연산을 중지하고 큐(201, 202, 203)에서 연산을 제거하지 않으며, 스토리지를 사용불가 상태로 표시하고, 스토리지가 정상 상태로 복구되면 큐(201, 202, 203)에 남아 있는 원시 연산을 순서대로 스토리지(215, 216, 217)에서 실행할 수 있다.That is, when the primitive operation fails due to a network failure or the like, the cloud managers 211, 212, and 213 stop the primitive operation and do not remove operations from the queues 201, 202, and 203, And the raw operations remaining in the queues 201, 202, 203 can be executed in the storage 215, 216, 217 in order when the storage is restored to a normal state.

따라서, 각 클라우드 매니저(211, 212, 213)는 큐(201, 202, 203)에 포함된 모든 원시 연산을 실행 할 수 있으며, 모든 큐가 비워지게 되면 모든 스토리지(215, 216, 217)들은 동일한 리소스를 가지게 된다.Thus, each of the cloud managers 211, 212, and 213 can execute all primitive operations included in the queues 201, 202, and 203, and when all the queues are emptied, all the storages 215, 216, Resources.

또한, 클라우드 매니저(211, 212, 213)는 큐(201, 202, 203)의 원시 연산이 모두 실행된 스토리지들 중에서 적어도 하나를 마스터 스토리지로서 지정할 수 있다. 따라서, 본 발명의 일 실시예 따르면, 가장 최근의 모든 정보를 포함하는 리소스를 저장한 스토리지 중에서 가장 가용성이 좋은 스토리지를 마스터 스토리지로 지정함으로써, 상기 마스터 스토리지리를 통해 가장 최근 버전의 리소스에 쉽고 빠르게 액세스 할 수 있다.In addition, the cloud managers 211, 212, and 213 may designate at least one of the arithmetic operations of the queues 201, 202, and 203 as master storage. Therefore, according to an embodiment of the present invention, by designating the most available storage among the storages storing resources including all the latest information as master storage, it is possible to easily and quickly access the latest version of resources Access.

본 발명의 다른 실시예에서는, 클라우드 매니저(211, 212, 213)는 마스터 스토리지가 최소한 한 개 이상이 지정된 상태에서만 원시 연산이 수행되도록 마스터 스토리지를 보장하도록 구성될 수 있다. In another embodiment of the present invention, the cloud managers 211, 212, and 213 may be configured to ensure master storage so that primitive operations are performed only when at least one master storage is specified.

예컨대, 클라우드 매니저(211, 212, 213)는 모든 클라우드 스토리지에서 연산이 완벽하게 실행되지 않아 마스터 스토리지를 지정하지 못하게 되는 상황이 되면 모든 클라우드 스토리지 각각에 할당된 큐에 포함된 원시 연산을 수행하지 않고 대기하다가, 클라우드 스토리지 중 적어도 하나를 마스터 스토리지로 지정할 수 있는 상황이 되면 큐에 포함된 원시 연산을 수행하는 방식으로 마스터 스토리지를 보장할 수 있다. For example, when the cloud managers 211, 212, and 213 fail to specify the master storage because the operations are not completely executed in all the cloud storages, the cloud managers 211, 212, and 213 do not perform the primitive operations included in the queues allocated to each of the cloud storages And waiting for at least one of the cloud storage to be designated as master storage, master storage can be guaranteed by performing the primitive operations included in the queue.

도 4는 본 발명의 일 실시예에 따른 클라우드 스토리지들의 상태를 표시하는 방법을 설명하기 위한 도면이다.FIG. 4 is a diagram illustrating a method of displaying the state of the cloud storage according to an embodiment of the present invention. Referring to FIG.

한편, 본 발명의 일 실시예에 따르면 클라우드 스토리지들의 상태를 모니터링하고 관리하기 위하여, 클라우드 스토리지들의 각각은 녹색(Green), 노란색(Yellow), 빨간색(Red), 파란색(Blue), 검은색(Black)의 총 5가지의 색깔로 상태가 표시될 수 있다.According to an exemplary embodiment of the present invention, in order to monitor and manage the state of the cloud storage, each of the cloud storage devices may be classified into one of green, yellow, red, blue, ) Can be displayed in a total of five colors.

상기 각각의 클라우드 스토리지들의 상태에 따라 각 스토리지들의 상태를 나타내는 색깔이 변화한다.The color representing the state of each storage varies according to the state of each of the cloud storages.

보다 상세하게 설명하면, 도 4에 도시된 바와 같이 스토리지 상태 표시부는 상기 복수개의 스토리지의 각각이 대기 상태이면 녹색(Green)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산을 실행 중이면 황색(Yellow)을 표시할 수 있다.More specifically, as shown in FIG. 4, the storage status display unit displays green when each of the plurality of storages is in the standby state, and when executing the primitive operation included in the queue in each of the storages Yellow (Yellow) can be displayed.

또한, 스토리지 상태 표시부는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면 적색(Red)을 표시하고, 상기 각 스토리지가 정상 상태로 복구되거나 네트워크가 단절되면 청색(Blue)을 표시할 수 있으며, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산들이 실행되지 않는 큐가 가득 차거나 각 스토리지를 사용하지 못하는 상태에 해당하면 흑색(Black)을 표시할 수 있다.The storage status display unit may display a red color if the primitive operation included in the queue is not executed in each of the storages, and may display a blue color when the storage is restored to a normal state or the network is disconnected. And can display black if the queues in which the primitive operations included in the queue are not executed in the storage are full or the respective storage is not available.

따라서, 본 발명의 일 실시예에 따르면 클라우드 스토리지의 각각의 상태를 보다 효과적으로 모니터링하여, 가장 최근의 모든 정보를 포함하는 가장 가용성이 좋은 스토리지를 마스터 스토리지로 지정함으로써, 가장 최근 버전의 리소스에 쉽게 액세스 할 수 있다.Thus, according to one embodiment of the present invention, by monitoring each state of the cloud storage more effectively and designating the highest available storage containing all the latest information as master storage, it is possible to easily access the latest version of the resource can do.

도 5는 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating an atomic operation and a storage replication method of a collaborative middleware based on cloud storage according to an embodiment of the present invention.

먼저, 클라우드 매니저가 클라우드 스토리지의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시킨다(S510).First, the cloud manager performs storage primitive operations (SPO) for processing resources of the cloud storage (S510).

이때, 상기 클라우드 매니저는 상기 스토리지 원시 연산들에 포함된 연산을 순차적으로 실행시킨다.At this time, the cloud manager sequentially executes the operations included in the storage primitive operations.

이후에는 데이터베이스 매니저가 데이터베이스에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시킨다(S520).Thereafter, the database manager performs metadata primitive operations (MPO) for processing metadata of the resources stored in the database (S520).

마찬가지로, 상기 데이터베이스 매니저는 상기 메타데이터 원시 연산들에 포함된 연산을 순차적으로 실행시킨다.Similarly, the database manager sequentially executes the operations included in the metadata primitive operations.

한편, 상기 스토리지 원시 연산 및 상기 메타데이터 원시 연산은 데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산으로 구성될 수 있다.The storage primitive operation and the meta data primitive operation may be composed of data generation (Create), read (Read), update (Update), and delete (Delete) operations.

이후에는, 협업 미들웨어의 원자성 연산과 스토리지 복제 장치가 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되었는지 판단하여(S530), 상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않았으면, 상기 클라우드 매니저가 롤백(rollback) 명령을 통해 상기 클라우드 스토리지를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고(S540), 상기 데이터베이스 매니저가 롤백(rollback) 명령을 통해 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌린다(S545).Thereafter, it is determined whether the atomic operation of the collaboration middleware and the storage replication apparatus have executed at least one of the storage source operations and the metadata source operations (S530), and the storage source operations and the meta If at least one of the primitive operations of the data source operations is not executed, the cloud manager returns the cloud storage to a state before execution of the storage primitive operations through a rollback command (S540) The metadata of the resource is restored to a state before execution of the metadata primitive operations through a rollback command in operation S545.

보다 상세하게 설명하면, 데이터베이스 매니저는 상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행할 수 있다.More specifically, the database manager performs a commit command when all the primitive operations of the metadata primitive operations are executed, and performs a rollback when at least one of the metadata primitive operations is not executed. ) Command.

즉, 협업 서비스의 실행시에는 상기 협업 서비스를 구성하는 모든 원시 연산들이 순서대로 실행되며, 상기 순서에 의한 원시 연산들의 실행 중에 어느 하나의 원시 연산의 실행이 실패하는 경우에는, 이전에 실행된 원시 연산에 의해 부분적으로 수행된 협업 서비스를 모두 취소한다.That is, when executing the collaboration service, all of the primitive operations constituting the collaboration service are executed in order, and when execution of one of the primitive operations fails during the execution of the primitive operations in the above order, Cancel all collaborative services partially performed by the operation.

도 6은 본 발명의 일 실시예에 따른 클라우드 스토리지의 복제 방법을 설명하기 위한 흐름도로서, 도 5의 스토리지 원시 연산들이 수행되는 단계(S510)를 보다 상세하게 설명하기 위한 도면이다.FIG. 6 is a flowchart for explaining a replication method of a cloud storage according to an embodiment of the present invention, in more detail, step S510 in which the storage primitive operations of FIG. 5 are performed.

클라우드 매니저는 스토리지 원시 연산(Storage Primitive Operation)을 전달 받으면, 각 클라우드 스토리지의 큐(Queue)에 상기 전달받은 원시 연산을 전달받은 순서대로 포함시킨다(S511).When the storage manager receives the storage primitive operation, the cloud manager includes the received primitive operations in the queue of each cloud storage in the order received, S511.

상기 각각의 큐는 각 스토리지에 할당되어 있으며, 상기 클라우드 매니저는 각 스토리지가 상기 큐에 포함된 원시 연산의 순서에 따라 연산을 실행하도록 한다(S512).Each of the queues is allocated to each storage, and the cloud manager causes each storage to perform an operation according to the order of primitive operations included in the queue (S512).

이때, 상기 큐에 포함된 원시 연산은 성공적으로 실행되면 상기 큐에서 제거되고 다음 원시 연산이 실행되며, 큐가 끝날 때까지 원시 연산의 실행과 제거 과정이 계속된다.At this time, if the primitive operation included in the queue is successfully executed, the primitive operation is removed from the queue, the next primitive operation is executed, and the execution and removal of the primitive operation is continued until the end of the queue.

그러나, 상기 클라우드 매니저는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면(S513), 상기 원시 연산을 상기 큐(S514)에서 제거하지 않으며, 상기 각 스토리지가 정상 상태로 복구되면(S515), 상기 큐에 포함되어 있으나 실행되지 않은 원시 연산을 실행한다(S516).However, if the raw operation included in the queue is not executed in each of the storages (S513), the cloud manager does not remove the original operation from the queue (S514). If the storage is restored to the normal state (S515 ), A raw operation that is contained in the queue but is not executed is executed (S516).

즉, 네트워크 실패 등의 이유로 원시 연산이 실패한 경우에는 클라우드 매니저는 상기 연산을 중지하고 큐에서 연산을 제거하지 않으며, 스토리지를 사용불가 상태로 표시하고, 스토리지가 정상 상태로 복구되면 큐에 남아 있는 원시 연산을 순서대로 스토리지에서 실행할 수 있다.That is, when a primitive operation fails due to a network failure or the like, the cloud manager stops the operation, does not remove the operation from the queue, marks the storage as unusable, and if the storage is restored to the normal state, Operations can be run in sequence on storage.

따라서, 각 클라우드 매니저는 큐에 포함된 모든 원시 연산을 실행 할 수 있으며, 모든 큐가 비워지게 되면 모든 스토리지들은 동일한 리소스를 가지게 되고, 클라우드 매니저는 큐의 원시 연산이 모두 실행된 스토리지들 중에서 하나를 마스터 스토리지로 지정할 수 있다.Thus, each cloud manager can execute all the primitive operations contained in the queue, and when all the queues are empty, all the storage will have the same resources, and the cloud manager will have one of the queues' It can be designated as master storage.

도 7은 본 발명의 일 실시예에 따른 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법과 종래 기술의 성능을 비교하기 위한 그래프이다.7 is a graph for comparing the performance of the conventional technology with the atomic operation of the collaboration middleware based on the cloud storage according to an embodiment of the present invention and the storage replication method.

이후부터는 도 7을 참조하여 본 발명과 종래 기술인 DEPSKY의 성능을 비교하기로 한다.Hereinafter, the performance of the present invention and the conventional DEPSKY will be compared with reference to FIG.

종래 기술인 DEPSKY는 다양한 클라우드 스토리지들의 데이터 복제를 통해 클라우드 스토리지에 정보를 저장하는 기술이다.The prior art DEPSKY is a technology for storing information in cloud storage through data replication of various cloud storages.

DEPSKY는 클라이언트에 소프트웨어 라이브러리로 구현되고, 이 라이브러리는 백 엔드(back-end) 스토리지들의 읽기와 쓰기를 허용하는 병렬 파일 시스템에 사용되는 것과 유사한 객체 저장 인터페이스를 제공하며, 여러개의 클라우드 스토리지를 사용한다.DEPSKY is implemented as a software library on the client that provides object storage interfaces similar to those used for parallel file systems that allow reading and writing back-end storage and uses multiple cloud storage .

그러나, DEPSKY는 마스터 스토리지의 개념을 지원하지 않으므로, 항상 모든 리소스를 유지하는 클라우드 스토리지의 구성을 보장하지 못하는 단점이 있다. However, since DEPSKY does not support the concept of master storage, there is a disadvantage that it can not guarantee the configuration of cloud storage that always maintains all resources.

본 발명과 종래 기술인 DEPSKY를 비교하기 위하여, 4개의 클라우드 스토리지를 이용해 테스트하였으며, 읽기(Read)와 쓰기(Write) 연산을 각각 100회씩 실행하였으며, 각 연산에는 다양한 크기의 파일을 사용하였다.In order to compare the present invention with the conventional DEPSKY, four cloud storages were used and 100 read and write operations were performed for each operation, and files of various sizes were used for each operation.

도 7에 도시된 바와 같이, 본 발명과 종래 기술은 동일한 작업을 수행하였으나 본 발명이 보다 뛰어난 성능을 나타냄을 알 수 있다.As shown in FIG. 7, the present invention and the prior art have performed the same operation, but the present invention shows superior performance.

즉, 종래 기술은 DEPSKY는 읽기와 쓰기 오퍼레이션의 실행 시에 각 스토리지의 리소스의 버전 정보를 확인하기 위하여 모든 연결된 스토리지들에 액세스를 시도하여야 하므로, 필요 시상의 오버헤드(overhead) 시간을 필요로 한다.That is, in the prior art, DEPSKY needs to access all connected storages in order to check the version information of each storage resource at the time of executing the read and write operations, and thus requires an overhead time required .

그러나, 본 발명의 일 실시예에 따르면 가장 최근의 모든 정보를 포함하는 리소스를 저장한 스토리지 중에서 가장 가용성이 좋은 스토리지를 마스터 스토리지로 지정함으로써, 상기 마스터 스토리지를 통해 가장 최근 버전의 리소스에 쉽고 빠르게 액세스할 수 있다.However, according to an embodiment of the present invention, by designating the most available storage among the storages storing resources including all the latest information as master storage, it is possible to easily and quickly access the latest version of the resources through the master storage can do.

본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Embodiments of the present invention include computer readable media including program instructions for performing various computer implemented operations. The computer-readable medium may include program instructions, local data files, local data structures, etc., alone or in combination. The media may be those specially designed and constructed for the present invention or may be those known to those skilled in the computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floppy disks, and ROMs, And hardware devices specifically configured to store and execute the same program instructions. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허 청구의 범위뿐 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the scope of the appended claims and equivalents thereof.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, Modification is possible. Accordingly, the spirit of the present invention should be understood only in accordance with the following claims, and all equivalents or equivalent variations thereof are included in the scope of the present invention.

100: 원자성 연산과 스토리지 복제 장치
110, 111, 112: 사용자
115: 개인 작업장
120: 사용자 그룹
125: 그룹 작업장
135: 개방 작업장
201, 202, 203: 큐(Queue)
205, 206, 207: 스토리지 커넥터
211, 212, 213: 클라우드 매니저
215, 216, 217: 클라우드 스토리지
220: 데이터베이스 매니저
225: 데이터베이스
230: 스토리지 커넥터 매니저
100: Atomic operation and storage replication device
110, 111, 112: user
115: Private Workshop
120: User group
125: Group workshop
135: open workshop
201, 202, 203: Queue
205, 206, 207: storage connector
211, 212, 213: Cloud manager
215, 216, 217: Cloud storage
220: Database Manager
225: Database
230: Storage Connector Manager

Claims (16)

클라우드 매니저가 클라우드 스토리지의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시키는 제1 단계;
데이터베이스 매니저가 데이터베이스에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시키는 제2 단계; 및
상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면, 상기 클라우드 매니저가 상기 클라우드 스토리지를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고, 상기 데이터베이스 매니저가 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌리는 제3 단계;
를 포함하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
A first step in which the cloud manager performs storage primitive operations (SPO) for processing resources of the cloud storage;
A second step of a database manager performing metadata primitive operations (MPO) for processing metadata of the resource stored in the database; And
Wherein the cloud manager returns the cloud storage to a state prior to execution of the storage primitive operations if the primitive operations of the storage primitive operations and / or the metadata primitive operations are not performed, A third step of returning the metadata of the metadata to the state before execution of the metadata primitive operations;
And a storage replication method for collaborative middleware based on cloud storage.
청구항 1에 있어서,
상기 제1 단계는,
상기 클라우드 매니저가 상기 스토리지 원시 연산들에 포함된 연산을 순차적으로 실행시키고,
상기 제2 단계는,
상기 데이터베이스 매니저가 상기 메타데이터 원시 연산들에 포함된 연산을 순차적으로 실행시키는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method according to claim 1,
In the first step,
Wherein the cloud manager sequentially executes operations included in the storage primitive operations,
The second step comprises:
Wherein the database manager sequentially executes the operations included in the meta data primitive operations, and the atomic operation and storage replication method of the collaboration middleware based on the cloud storage.
청구항 1에 있어서,
상기 제3 단계는,
상기 데이터베이스 매니저가 상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method according to claim 1,
In the third step,
The database manager performs a commit command when all the primitive operations of the metadata primitive operations are executed and performs a rollback command if at least one primitive operation of the metadata primitive operations is not executed Atomic computing and storage replication methods for collaborative middleware based on cloud storage.
청구항 1에 있어서,
상기 스토리지 원시 연산 및 상기 메타데이터 원시 연산은,
데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산인 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method according to claim 1,
Wherein the storage primitive operation and the metadata primitive operation are performed in a non-
An atomic operation and storage cloning method of collaborative middleware based on cloud storage, which is data creation (create), read (read), update (update) and delete (delete) operations.
청구항 1에 있어서,
상기 제1 단계는,
상기 클라우드 매니저가 복수개의 스토리지의 각각의 원시 연산(primitive operation)들의 큐(queue)에 요청 받은 순서로 원시 연산을 포함시키는 제1-1 단계;
상기 각 스토리지가 상기 큐에 포함된 원시 연산의 순서에 따라 연산을 실행하는 제1-2 단계; 및
상기 클라우드 매니저가 상기 큐의 원시 연산이 모두 실행된 스토리지들 중에서 하나를 마스터 스토리지로 지정하는 제1-3 단계;
를 포함하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method according to claim 1,
In the first step,
A first step of the cloud manager including a primitive operation in a queue in a primitive operation queue of each of a plurality of storages in a requested order;
A first step of each of the storages executing an operation according to a sequence of primitive operations included in the queue; And
A first step of the cloud manager designating one of the storages in which the primitive operation of the queue is executed as a master storage;
And a storage replication method for collaborative middleware based on cloud storage.
청구항 5에 있어서,
상기 제1 단계는,
상기 클라우드 매니저는 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면, 상기 원시 연산을 상기 큐에서 제거하지 않는 제1-4 단계; 및
상기 클라우드 매니저는 상기 각 스토리지가 정상 상태로 복구되면, 상기 큐에 포함되어 있으나 실행되지 않은 원시 연산을 실행하는 제1-5 단계;
를 포함하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method of claim 5,
In the first step,
The method comprising: (1-4) the cloud manager not removing the primitive operation from the queue if the primitive operation included in the queue is not executed in each of the storages; And
(1-5), when the storage is restored to a normal state, executing a primitive operation that is included in the queue but is not executed;
And a storage replication method for collaborative middleware based on cloud storage.
청구항 6에 있어서,
상기 제1-1 단계 이전에,
스토리지 상태 표시부가 상기 복수개의 스토리지의 각각이 대기 상태임을 나타내는 녹색(Green)을 표시하는 단계;
를 더 포함하고,
상기 제1-2 단계는,
상기 스토리지 상태 표시부가 상기 각 스토리지에서 상기 큐에 포함된 원시 연산을 실행 중임을 나타내는 황색(Yellow)을 표시하고,
상기 제1-4 단계는,
상기 스토리지 상태 표시부가 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않았음을 나타내는 적색(Red)을 표시하고,
상기 제1-5 단계는,
상기 스토리지 상태 표시부가 상기 각 스토리지가 정상 상태로 복구되었음을 나타내는 청색(Blue)을 표시하고,
상기 제1 단계는,
상기 각 스토리지에서 상기 큐에 포함된 원시 연산들이 실행되지 않아 큐가 가득 차거나 상기 각 스토리지를 사용하지 못하는 상태에 해당하면 상기 스토리지 상태 표시부가 흑색(Black)을 표시하는 제1-6 단계;
를 더 포함하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method of claim 6,
Before the step 1-1,
Displaying a green indicating that each of the plurality of storages is in a standby state;
Further comprising:
In the step 1-2,
Wherein the storage status display unit displays a yellow color indicating that each storage is executing a primitive operation included in the queue,
In the step 1-4,
Wherein the storage status display unit displays a red color indicating that a primitive operation included in the queue has not been executed in each of the storages,
In the step 1-5,
The storage status display unit displays a blue color indicating that each storage is restored to a normal status,
In the first step,
(1-6) when the storage state indicator indicates black when the queues are full or when the respective arrays are not available because the primitive operations included in the queues are not executed in the respective storages;
And a storage replication method for collaborative middleware based on cloud storage.
청구항 6에 있어서,
상기 제1-3 단계는,
상기 클라우드 매니저가 상기 큐의 원시 연산들이 모두 실행된 스토리지들 중에서, 지정된 상기 마스터 스토리지 이외의 스토리지들을 서브 스토리지로 지정하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 방법.
The method of claim 6,
In the step 1-3,
The atomic operation and the storage replication of the collaborative middleware based on the cloud storage in which the cloud manager designates the storage other than the designated master storage as the sub storage among the storages in which all the primitive operations of the queue are executed.
리소스를 저장하는 클라우드 스토리지;
상기 클라우드 스토리지의 리소스를 처리하는 스토리지 원시 연산(SPO: Storage Primitive Operation)들을 수행시키는 클라우드 매니저;
상기 리소스의 메타데이터를 저장하는 데이터베이스; 및
상기 데이터베이스에 저장된 상기 리소스의 메타데이터를 처리하는 메타데이터 원시 연산(MPO: Metadata Primitive Operation)들을 수행시키는 데이터베이스 매니저;
를 포함하고,
상기 스토리지 원시 연산들과 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면, 상기 클라우드 매니저는 상기 클라우드 스토리지를 상기 스토리지 원시 연산들의 실행 이전의 상태로 되돌리고, 상기 데이터베이스 매니저는 상기 리소스의 메타데이터를 상기 메타데이터 원시 연산들의 실행 이전의 상태로 되돌리는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
Cloud storage to store resources;
A cloud manager for performing storage primitive operations (SPOs) for processing resources of the cloud storage;
A database for storing metadata of the resources; And
A database manager for performing metadata primitive operations (MPO) for processing metadata of the resources stored in the database;
Lt; / RTI >
If the raw operation of at least one of the storage raw operations and the metadata raw operations is not performed, the cloud manager returns the cloud storage to a state prior to execution of the storage raw operations, Wherein the meta data of the meta data is returned to a state prior to the execution of the meta data primitive operations.
청구항 9에 있어서,
상기 클라우드 매니저는,
상기 스토리지 원시 연산들에 포함된 연산을 순차적으로 실행시키고,
상기 데이터베이스 매니저는,
상기 메타데이터 원시 연산들에 포함된 연산을 순차적으로 실행시키는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
The method of claim 9,
The cloud manager includes:
Sequentially executing operations included in the storage primitive operations,
Wherein the database manager comprises:
And atomic operation and storage replication of collaborative middleware based on cloud storage that sequentially executes operations included in the metadata primitive operations.
청구항 9에 있어서,
상기 데이터베이스 매니저는,
상기 메타데이터 원시 연산들의 원시 연산이 모두 실행되면 커밋(commit) 명령을 수행하고, 상기 메타데이터 원시 연산들 중 적어도 어느 하나의 원시 연산이 실행되지 않으면 롤백(rollback) 명령을 수행하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
The method of claim 9,
Wherein the database manager comprises:
Based on cloud storage that performs a commit command when all of the primitive operations of the metadata primitive operations are executed and performs a rollback command if at least one primitive operation of the metadata primitive operations is not performed, The atomic operation and storage replication device of collaborative middleware.
청구항 9에 있어서,
상기 스토리지 원시 연산 및 상기 메타데이터 원시 연산은,
데이터의 생성(Create), 읽기(Read), 업데이트(Update) 및 삭제(Delete) 연산인 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
The method of claim 9,
Wherein the storage primitive operation and the metadata primitive operation are performed in a non-
An atomic operation and storage cloning device for collaborative middleware based on cloud storage, which is the creation, read, update and delete operation of data.
청구항 9에 있어서,
상기 클라우드 매니저는,
복수개의 스토리지의 각각의 원시 연산(primitive operation)들의 큐(queue)에 요청 받은 순서로 원시 연산을 포함시키고, 상기 각 스토리지가 상기 큐에 포함된 원시 연산의 순서에 따라 연산을 실행하도록 제어하고, 상기 큐의 원시 연산이 모두 실행된 스토리지들 중에서 하나를 마스터 스토리지로 지정하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
The method of claim 9,
The cloud manager includes:
The method comprising: storing primitive operations in queues of primitive operations of a plurality of storages in a requested order; controlling each of the storages to execute operations according to a sequence of primitive operations included in the queues; And an atomic operation and storage replica of the collaborative middleware based on the cloud storage designating one of the storages in which the raw operation of the queue is executed as the master storage.
청구항 13에 있어서,
상기 클라우드 매니저는,
상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면, 상기 원시 연산을 상기 큐에서 제거하지 않고, 상기 각 스토리지가 정상 상태로 복구되면, 상기 큐에 포함되어 있으나 실행되지 않은 원시 연산을 실행하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
14. The method of claim 13,
The cloud manager includes:
If the raw operation contained in the queue is not executed in each of the storages, the raw operation is not removed from the queue, and when each storage is restored to a normal state, a raw operation that is contained in the queue but is not executed is executed The atomic operation and storage replication device of collaborative middleware based on cloud storage.
청구항 14에 있어서,
스토리지 상태 표시부는,
상기 복수개의 스토리지의 각각이 대기 상태이면 녹색(Green)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산을 실행 중이면 황색(Yellow)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산이 실행되지 않으면 적색(Red)을 표시하고, 상기 각 스토리지가 정상 상태로 복구되면 청색(Blue)을 표시하고, 상기 각 스토리지에서 상기 큐에 포함된 원시 연산들이 실행되지 않아 큐가 가득 차거나 상기 각 스토리지를 사용하지 못하는 상태에 해당하면 상기 스토리지 상태 표시부가 흑색(Black)을 표시하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
15. The method of claim 14,
The storage status display unit displays,
Wherein each of the plurality of storages displays green when each of the plurality of storages is in a standby state and displays yellow when each of the storages is executing a primitive operation included in the queue, Displays red when the primitive operation is not performed, displays blue when the storage is restored to a normal state, and displays primitive operations such as blue Wherein the storage status display unit displays black when the storage is unavailable, wherein the storage status indicator displays black.
청구항 14에 있어서,
상기 클라우드 매니저는,
상기 큐의 원시 연산들이 모두 실행된 스토리지들 중에서, 지정된 상기 마스터 스토리지 이외의 스토리지들을 서브 스토리지로 지정하는 클라우드 스토리지에 기반한 협업 미들웨어의 원자성 연산과 스토리지 복제 장치.
15. The method of claim 14,
The cloud manager includes:
And an atomic operation and storage replica of the collaborative middleware based on cloud storage that designates, among the storages in which all the primitive operations of the queue are executed, the storage other than the designated master storage as a sub storage.
KR1020140082076A 2014-07-01 2014-07-01 Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware KR101590716B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140082076A KR101590716B1 (en) 2014-07-01 2014-07-01 Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140082076A KR101590716B1 (en) 2014-07-01 2014-07-01 Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware

Publications (2)

Publication Number Publication Date
KR20160003515A true KR20160003515A (en) 2016-01-11
KR101590716B1 KR101590716B1 (en) 2016-02-01

Family

ID=55169644

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140082076A KR101590716B1 (en) 2014-07-01 2014-07-01 Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware

Country Status (1)

Country Link
KR (1) KR101590716B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110073162A (en) * 2009-12-21 2011-06-29 한국전자통신연구원 Apparatus and method for cloud computing resource distribution using mobile devices
KR20130096313A (en) * 2010-12-25 2013-08-29 인텔 코오퍼레이션 Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads
KR20140055288A (en) * 2012-10-31 2014-05-09 삼성에스디에스 주식회사 System and method for providing data analysis service in cloud environment
KR20140068963A (en) * 2011-09-12 2014-06-09 마이크로소프트 코포레이션 Coordination engine for cloud selection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110073162A (en) * 2009-12-21 2011-06-29 한국전자통신연구원 Apparatus and method for cloud computing resource distribution using mobile devices
KR20130096313A (en) * 2010-12-25 2013-08-29 인텔 코오퍼레이션 Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads
KR20140068963A (en) * 2011-09-12 2014-06-09 마이크로소프트 코포레이션 Coordination engine for cloud selection
KR20140055288A (en) * 2012-10-31 2014-05-09 삼성에스디에스 주식회사 System and method for providing data analysis service in cloud environment

Also Published As

Publication number Publication date
KR101590716B1 (en) 2016-02-01

Similar Documents

Publication Publication Date Title
US11416341B2 (en) Systems and methods to reduce application downtime during a restore operation using a pseudo-storage device
US20210374021A1 (en) Automated media agent state management
US10613780B1 (en) Multi-node removal
US10025632B2 (en) Job management and resource allocation in a data protection system
US11513696B2 (en) Scalable auxiliary copy processing in a data storage management system using media agent resources
US10042908B2 (en) Method and system for implementing a unified DB clone system
US10089148B1 (en) Method and apparatus for policy-based replication
US10628378B2 (en) Replication of snapshots and clones
US20180253192A1 (en) File manager integration with virtualization in an information management system with an enhanced storage manager, including user control and storage management of virtual machines
US10168931B2 (en) Scalable auxiliary copy processing in a data storage management system using media agent resources
US20200293571A1 (en) Targeted search of backup data using facial recognition
US8627028B2 (en) Method of constructing replication environment and storage system
US9594645B2 (en) Protecting data segments in a computing environment
US20100082546A1 (en) Storage Tiers for Database Server System
US9262290B2 (en) Flash copy for disaster recovery (DR) testing
JP2016538631A (en) Transaction processing method and apparatus
KR101590716B1 (en) Device and method for operation atomicity and storage replication of cloud storage based collaborative middleware
CN104220982A (en) Transaction processing method and device
US20080222374A1 (en) Computer system, management computer, storage system and volume management method
WO2017145286A1 (en) Storage system management method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191205

Year of fee payment: 5