KR101491015B1 - 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치 - Google Patents

클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR101491015B1
KR101491015B1 KR20130065394A KR20130065394A KR101491015B1 KR 101491015 B1 KR101491015 B1 KR 101491015B1 KR 20130065394 A KR20130065394 A KR 20130065394A KR 20130065394 A KR20130065394 A KR 20130065394A KR 101491015 B1 KR101491015 B1 KR 101491015B1
Authority
KR
South Korea
Prior art keywords
content
storage
cloud storage
capacity
api
Prior art date
Application number
KR20130065394A
Other languages
English (en)
Other versions
KR20140143617A (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 KR20130065394A priority Critical patent/KR101491015B1/ko
Priority to PCT/KR2013/012186 priority patent/WO2014196710A1/ko
Priority to US14/894,722 priority patent/US10298688B2/en
Publication of KR20140143617A publication Critical patent/KR20140143617A/ko
Application granted granted Critical
Publication of KR101491015B1 publication Critical patent/KR101491015B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치가 개시된다. 본 발명에 따른 상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스토리지 관리 장치는 클라우드 스토리지에 이동 신호를 송신하여, 상기 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동시키는 컨텐츠 정렬부; 및 상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 브로커 API 제공부를 포함한다.

Description

클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치 {SYSTEM FOR MANAGING CLOUD STORAGES, METHOD OF MANAGING CLOUD STORAGES AND APPARATUS FOR THE SAME}
본 발명은 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치에 관한 것으로, 특히 클라우드 스토리지 증설에 따른 스토리지 내 컨텐츠를 정렬하고, 및 브로커 API(Application Programming Interface)를 갱신하는 스토리지 관리 시스템, 관리 방법 및 이를 위한 장치에 관한 것이다.
클라우드 컴퓨팅 서비스는 사용자가 컨텐츠를 로컬 스토리지가 아닌, 인터넷상의 클라우드 스토리지에 저장해놓고, 인터넷이 가능한 기기를 이용하여 언제 어디서든지 클라우드 스토리지에 접근하여 컨텐츠를 이용할 수 있는 서비스이다.
종래의 클라우드 스토리지 관리 방법에 따르면, 기록되는 컨텐츠의 양이 늘어남에 따라 기존 스토리지에 게이트웨이를 통해 스토리지를 추가적으로 연결하게 되고, 이 경우, 증설된 클라우드 스토리지의 기능이 기존 스토리지의 기능 범위로 제한되는 경우가 빈번히 발생하였다. 스토리지 증설이 필수적인 클라우드 컴퓨팅 서비스에서, 증설된 클라우드 스토리지의 기능 제한은 중요한 요소이다.
한국공개특허 제2009-0021608호는 서버 성능 관리 방법 및 시스템에 관한 것으로, 클라우드 컴퓨팅 서비스에 사용되는 여러 기종의 서버 성능을 최적화 하기 위해 서버 성능 및 이용 현황에 대한 보고서를 적시에 생성하는 기술을 소개하였다.
그러나, 이와 같은 종래의 클라우드 컴퓨팅 서비스 관련 기술은 스토리지가 아닌 서버 관련 보고서의 적시 생성에만 관심을 가지고 있을 뿐, 클라우드 스토리지의 증설에 따른 컨텐츠 및 API의 최적화에 관한 구체적인 기술에 대해서는 언급하고 있지 못하다.
따라서, 클라우드 스토리지의 증설에 따른 컨텐츠 및 API의 최적화를 위해, 컨텐츠의 업로더 기반의 식별자를 이용하여 동일 업로더의 분산된 컨텐츠 조각을 수집하고, 헤비 업로더의 대용량 컨텐츠 및 자주 접근되는 일시적 로그 파일 등을 용도에 맞는 스토리지에 정렬 이동시키는 새로운 클라우드 스토리지 관리 기술의 필요성이 절실하게 대두된다.
본 발명의 목적은, 클라우드 스토리지의 증설에 따른 스토리지 API를 브로커 API로 추상화하여 사용자에게 제공함으로써, 사용자가 클라우드 스토리지들 각각에 상응하는 API를 일일이 사용할 필요 없이, 브로커 API만을 사용함으로써, 컨텐츠 접근을 보다 편리하게 하는 것이다.
또한 본 발명의 목적은, 컨텐츠의 업로더 기반의 식별자를 이용하여 동일 업로더의 분산된 컨텐츠 조각을 수집함으로써, 동일 업로더의 컨텐츠를 보다 신속하게 제공하는 것이다.
또한 본 발명의 목적은, 헤비 업로더의 대용량 컨텐츠를 대용량 타입의 클라우드 스토리지에 정렬 이동시킴으로써, 스토리지 용량 관리를 보다 효율적으로 하는 것이다.
또한 본 발명은, 자주 접근되는 일시적 로그 파일들을 고성능 타입의 클라우드 스토리지에 정렬 이동시킴으로써, 일반 타입의 클라우드 스토리지의 접근 횟수를 감소시켜, 일반 타입의 클라우드 스토리지의 수명을 보다 연장시키는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스토리지 관리 장치는 클라우드 스토리지에 이동 신호를 송신하여, 상기 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동시키는 컨텐츠 정렬부; 및 상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 브로커 API 제공부를 포함한다.
이 때, 브로커 API 제공부는 상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 상기 증설 클라우드 스토리지가 신규 타입인지 여부를 판단하고, 상기 증설 클라우드 스토리지가 상기 신규 타입인 경우, 상기 신규 타입에 상응하는 신규 스토리지 API를 상기 API 매핑 테이블에 추가하여, 상기 브로커 API로 추상화할 수 있다.
이 때, 상기 컨텐츠 정렬부는 상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 기존 클라우드 스토리지에 기록된 컨텐츠를 상기 증설 클라우드 스토리지로 정렬 이동시킬 수 있다.
이 때, 상기 컨텐츠 정렬부는 상기 컨텐츠에 상응하는 식별자를 저장하는 식별자 저장부; 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 이동 대상인 것으로 판단하는 이동 판단부; 및 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 상기 클라우드 스토리지에 이동 신호를 송신하는 신호 송신부를 포함할 수 있다.
이 때, 상기 이동 판단부는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
이 때, 상기 컨텐츠 정렬부는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정하는 스토리지 선정부를 더 포함할 수 있다.
이 때, 상기 스토리지 선정부는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 상기 이동 판단부는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 상기 이동 판단부는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 상기 스토리지 선정부는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 스토리지 선정부는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
또한, 본 발명에 따른 클라우드 스토리지 관리 방법은 클라우드 스토리지에 이동 신호를 송신하여, 상기 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동시키는 단계; 및 상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 단계를 포함한다.
이 때, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 단계는 상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 상기 증설 클라우드 스토리지가 신규 타입인지 여부를 판단하고, 상기 증설 클라우드 스토리지가 상기 신규 타입인 경우, 상기 신규 타입에 상응하는 신규 스토리지 API를 상기 API 매핑 테이블에 추가하여, 상기 브로커 API로 추상화할 수 있다.
상기 컨텐츠를 정렬 이동시키는 단계는 상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 기존 클라우드 스토리지에 기록된 컨텐츠를 상기 증설 클라우드 스토리지로 정렬 이동시키고, 상기 컨텐츠에 상응하는 식별자를 저장하는 단계; 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 이동 대상인 것으로 판단하는 단계; 및 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 스토리지 그룹에 이동 신호를 송신하는 단계를 포함할 수 있다.
이 때, 상기 이동 대상인지 여부를 판단하는 단계는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 상기 컨텐츠를 정렬 이동시키는 단계는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정하는 단계를 더 포함할 수 있다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
또한, 본 발명에 따른 클라우드 스토리지 관리 시스템은 컨텐츠가 기록되는 클라우드 스토리지; 및 상기 클라우드 스토리지에 이동 신호를 송신하여, 상기 컨텐츠를 정렬 이동시키고, 상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 관리 서버를 포함한다.
본 발명에 따르면, 클라우드 스토리지의 증설에 따른 기능 제약의 문제점을 해결하여, 보다 효율적인 스토리지 사용이 가능하다.
또한 본 발명은, 클라우드 스토리지의 증설에 따른 스토리지 API를 브로커 API로 추상화하여 사용자에게 제공함으로써, 사용자가 클라우드 스토리지들 각각에 상응하는 API를 일일이 사용할 필요 없이, 브로커 API만을 사용함으로써, 보다 편리한 컨텐츠 접근이 가능하다.
또한 본 발명은, 컨텐츠의 업로더 기반의 식별자를 이용하여 동일 업로더의 분산된 컨텐츠 조각을 수집함으로써, 동일 업로더의 컨텐츠를 보다 신속하게 제공 가능하다.
또한 본 발명은, 헤비 업로더의 대용량 컨텐츠를 대용량 타입의 클라우드 스토리지에 정렬 이동시킴으로써, 보다 효율적인 스토리지 용량 관리가 가능하다.
또한 본 발명은, 자주 접근되는 일시적 로그 파일들을 고성능 타입의 클라우드 스토리지에 정렬 이동시킴으로써, 일반 타입의 클라우드 스토리지의 접근 횟수를 감소시켜, 일반 타입의 클라우드 스토리지의 수명을 보다 연장시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 시스템을 나타낸 블록도이다.
도 2는 본 발명의 API 매핑 테이블의 일 예를 나타낸 도면이다.
도 3은 도 1에 도시된 클라우드 스토리지 관리 장치의 일 예를 나타낸 블록도이다.
도 4는 도 3에 도시된 컨텐츠 정렬부의 일 예를 나타낸 블록도이다.
도 5는 도 3에 도시된 컨텐츠 정렬부의 다른 예를 나타낸 블록도이다.
도 6은 도 4에 도시된 이동 판단부의 동작의 일 예를 나타낸 동작 흐름도이다.
도 7은 도 4에 도시된 이동 판단부의 동작의 다른 예를 나타낸 동작 흐름도이다.
도 8은 도 4에 도시된 이동 판단부의 동작의 또 다른 예를 나타낸 동작 흐름도이다.
도 9는 도 4에 도시된 이동 판단부의 동작의 또 다른 예를 나타낸 동작 흐름도이다.
도 10은 도 5에 도시된 스토리지 선정부의 동작의 일 예를 나타낸 동작 흐름도이다.
도 11은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법을 나타낸 동작 흐름도이다.
도 12는 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계의 일 예를 나타낸 동작 흐름도이다.
도 13은 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계의 다른 예를 나타낸 동작 흐름도이다.
도 14는 본 발명에 따른 클라우드 스토리지에 기록된 컨텐츠가 대용량 컨텐츠 및 로그 파일인 경우 컨텐츠 정렬의 일 예를 나타낸 도면이다.
도 15는 본 발명에 따른 컨텐츠가 분산 기록 상태인 경우 컨텐츠 정렬의 일 예를 나타낸 도면이다.
도 16은 본 발명에 따른 식별자 저장의 일 예를 나타낸 도면이다.
도 17은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법을 전체적으로 나타낸 동작 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 시스템을 나타낸 블록도이다.
도 1을 참조하면, 본 발명의 클라우드 스토리지 관리 장치가 적용된 시스템은 클라우드 스토리지 그룹(110), 클라우드 스토리지 관리 장치(140) 및 단말 장치(150)을 포함한다.
클라우드 스토리지 그룹(110)은 복수의 클라우드 스토리지들(111 내지 113)을 포함한다.
이 때, 클라우드 스토리지들(111 내지 113) 각각에는 컨텐츠가 기록될 수 있다.
이 때, 클라우드 스토리지들(111 내지 113) 각각은 일반 타입, 고성능 타입 및 대용량 타입 등으로 분류된 클라우드 스토리지일 수 있다.
이 때, 상기 고성능 타입의 클라우드 스토리지는 상기 일반 타입의 클라우드 스토리지에 비해 읽기 및 쓰기 속도가 더 빠른 스토리지일 수 있다.
이 때, 상기 고성능 타입의 클라우드 스토리지는 상기 일반 타입의 클라우드 스토리지에 비해 스토리지 안정성이 더 높은 스토리지일 수 있다.
이 때, 상기 대용량 타입의 클라우드 스토리지는 상기 일반 타입의 클라우드 스토리지에 비해 용량이 더 큰 스토리지일 수 있다.
또한, 클라우드 스토리지(111)가 기존 설비인 스토리지이고, 클라우드 스토리지(112) 및 클라우드 스토리지(113)는 증설 클라우드 스토리지일 수 있다.
이 때, 클라우드 스토리지 그룹(110)은 클라우드 스토리지들(111 내지 113) 각각의 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)들(121 내지 123)을 제공할 수 있다.
이 때, 스토리지 API들(121 내지 123)은 상기 컨텐츠들에 접근하기 위한 API들일 수 있다.
이 때, 스토리지 API(121)는 클라우드 스토리지(111)에 기록된 컨텐츠에 접근하기 위한 API일 수 있다.
이 때, 스토리지 API(122)는 클라우드 스토리지(112)에 기록된 컨텐츠에 접근하기 위한 API일 수 있다.
이 때, 스토리지 API(123)는 클라우드 스토리지(113)에 기록된 컨텐츠에 접근하기 위한 API일 수 있다.
이 때, 스토리지 API들(121 내지 123)는 상응하는 클라우드 스토리지(111 내지 113)의 타입에 따라 서로 상이할 수 있다.
이 때, 스토리지 API(121)는 상기 일반 타입에 상응하는 API일 수 있다.
이 때, 스토리지 API(122)는 상기 고성능 타입에 상응하는 API일 수 있다.
이 때, 스토리지 API(123)는 상기 대용량 타입에 상응하는 API일 수 있다.
클라우드 스토리지 관리 장치(140)는 클라우드 스토리지(111)에 이동 신호를 송신하여, 클라우드 스토리지(111)에 기록된 컨텐츠를 정렬 이동시킬 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 클라우드 스토리지(112)가 증설 클라우드 스토리지인 경우, 기존 클라우드 스토리지(111)에 기록된 컨텐츠를 증설 클라우드 스토리지(112)로 정렬 이동시킬 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장할 수 있다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140) 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
또한, 클라우드 스토리지 관리 장치(140)는 클라우드 스토리지(111) 타입에 상응하는 스토리지 API(121)를 API 매핑 테이블을 이용하여 브로커 API(130)로 추상화하고, 브로커 API(130)를 이용하여 상기 컨텐츠를 단말 장치에 제공할 수 있다.
이 때, 브로커 API(130)는 복수의 브로커 메소드들을 포함할 수 있다.
이 때, 스토리지 API들(121 내지 123) 각각은 복수의 스토리지 메소드들을 포함할 수 있다.
이 때, 브로커 메소드들 및 스토리지 메소드들의 대응 관계는 하나의 브로커 메소드에 하나의 스토리지 메소드들이 대응되는 관계일 수 있다.
이 때, 브로커 메소드 및 스토리지 메소드는 일대일 대응 관계일 수 있다.
이 때, 브로커 메소드들 및 스토리지 메소드들의 대응 관계는 하나의 브로커 메소드에 복수의 스토리지 메소드들이 대응되는 관계일 수 있다.
이 때, 브로커 메소드 및 스토리지 메소드들은 일대다 대응 관계일 수 있다.
이와 같이, 사용자는 클라우드 스토리지 관리 장치(140)에 의해 추상화된 브로커 API(130)를 이용하여, 스토리지 API들(121 내지 123)을 직접적으로 이용하지 아니하고도, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 클라우드 스토리지 관리 장치(140)는 브로커 API(130)의 메소드 및 스토리지 API(121)의 메소드의 대응 관계 정보를 포함하는 매핑 테이블을 이용하여, 스토리지 API(121)를 브로커 API(130)로 추상화할 수 있다.
또한, 클라우드 스토리지 관리 장치(140)는 상기 컨텐츠의 스토리지 ID를 이에 상응하는 브로커 ID로 추상화할 수 있다.
이 때, 브로커 ID는 및 스토리지 ID는 일대일 대응 관계일 수 있다.
이와 같이, 상기 사용자는 클라우드 스토리지 관리 장치(140)에 의해 추상화된 상기 브로커 ID를 호출함으로써, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 클라우드 스토리지 관리 장치(140)는 스토리지 API(121)를 브로커 API(130)로 추상화하여 단말 장치에 제공하는 브로커(broker) 서버의 기능을 제공할 수 있다.
단말 장치(150)는 PC(Personal Computer), 노트북 컴퓨터, 휴대폰(mobile phone), 태블릿 PC, 네비게이션(navigation), 스마트폰(smart phone), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player) 또는 DVB(Digital Video Broadcasting)와 같은 디지털 방송 수신기를 포함할 수 있다.
이 때, 단말 장치(150) 및 클라우드 스토리지 관리 장치(140)는 네트워크를 통해 컨텐츠를 전달할 수 있다.
이 때, 상기 네트워크는 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다. 예를 들면, 상기 네트워크는 인터넷 프로토콜(IP)을 통하여 대용량 데이터의 송수신 서비스 및 끊기는 현상이 없는 데이터 서비스를 제공하는 아이피망, 아이피를 기반으로 서로 다른 망을 통합한 아이피망 구조인 올 아이피(All IP)망 등일 수 있으며, 유선망, Wibro(Wireless Broadband)망, WCDMA를 포함하는 3세대 이동통신망, HSDPA(High Speed Downlink Packet Access)망 및 LTE 망을 포함하는 3.5세대 이동통신망, LTE advanced를 포함하는 4세대 이동통신망, 위성통신망 및 와이파이(Wi-Fi)망 중에서 하나 이상을 결합하여 이루어질 수 있다.
도 2는 본 발명의 API 매핑 테이블의 일 예를 나타낸 도면이다.
도 2를 참조하면, 본 발명의 브로커 API(130) 및 스토리지 API들(121 내지 123)이 대응되는 것을 알 수 있다.
즉, 브로커 API(130) 및 스토리지 API들(121 내지 123)는 일대일 또는 일대다 대응 관계인 것을 알 수 있다.
이 때, 브로커 API(130)는 복수의 브로커 메소드들(B1 내지 B5)을 포함할 수 있다.
이 때, 스토리지 API(121)는 상기 일반 타입에 상응하는 API일 수 있다.
이 때, 스토리지 API(122)는 상기 고성능 타입에 상응하는 API일 수 있다.
이 때, 스토리지 API(123)는 상기 대용량 타입에 상응하는 API일 수 있다.
이 때, 스토리지 API(121)는 복수의 스토리지 메소드들(T1S1 내지 T1S3)을 포함할 수 있다.
이 때, 스토리지 API(122)는 복수의 스토리지 메소드들(T2S1 내지 T2S3)을 포함할 수 있다.
이 때, 스토리지 API(123)는 복수의 스토리지 메소드들(T3S1 내지 T3S3)을 포함할 수 있다.
이 때, 브로커 메소드 및 스토리지 메소드는 일대일 대응 관계일 수 있다.
예를 들어, 도 2를 참조하면, 브로커 메소드(B4) 및 스토리지 메소드(T2S2)는 일대일 대응 관계인 것을 알 수 있다.
예를 들어, 도 2를 참조하면, 브로커 메소드(B5) 및 스토리지 메소드(T3S1)는 일대일 대응 관계인 것을 알 수 있다.
이 때, 브로커 메소드 및 스토리지 메소드들은 일대다 대응 관계일 수 있다.
즉, 브로커 메소드 및 2개 이상의 스토리지 메소드가 대응되는 관계일 수 있다.
예를 들어, 도 2를 참조하면, 브로커 메소드(B1) 및 스토리지 메소드들(T1S1 및 T2S1)은 일대다 대응 관계인 것을 알 수 있다.
예를 들어, 도 2를 참조하면, 브로커 메소드(B2) 및 스토리지 메소드들(T1S2 및 T3S2)은 일대다 대응 관계인 것을 알 수 있다.
예를 들어, 도 2를 참조하면, 브로커 메소드(B3) 및 스토리지 메소드들(T1S3, T2S3 및 T3S3)은 일대다 대응 관계인 것을 알 수 있다.
이와 같이, 브로커 메소드들 및 스토리지 메소드들은 일대일 또는 일대다 대응 관계일 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 상기 대응 관계를 이용하여 스토리지 API들(121 내지 123)을 브로커 API(130)로 추상화할 수 있다.
이 때, 클라우드 스토리지 관리 장치(140)는 클라우드 스토리지가 증설 클라우드 스토리지(112)인 경우, 증설 클라우드 스토리지(112)가 신규 타입인지 여부를 판단하고, 상기 증설 클라우드 스토리지가 상기 신규 타입인 경우, 상기 신규 타입에 상응하는 신규 스토리지 API를 상기 API 매핑 테이블에 추가하여, 상기 브로커 API로 추상화할 수 있다.
이와 같이, 사용자는 클라우드 스토리지 관리 장치(140)에 의해 추상화된 브로커 API(130)를 이용하여, 스토리지 API들(121 내지 123)을 직접적으로 이용하지 아니하고도, 상기 컨텐츠들에 접근할 수 있다.
도 3은 도 1에 도시된 클라우드 스토리지 관리 장치의 일 예를 나타낸 블록도이다.
도 3을 참조하면, 도 1에 도시된 클라우드 스토리지(140)는 컨텐츠 정렬부(310) 및 브로커 API 제공부(320)를 포함한다.
컨텐츠 정렬부(310)는 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동한다.
이 때, 컨텐츠 정렬부(310)는 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장할 수 있다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
이 때, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
브로커 API 제공부(320)는 클라우드 스토리지(111) 타입에 상응하는 스토리지 API(121)를 API 매핑 테이블을 이용하여 브로커 API(130)로 추상화하고, 브로커 API(130)를 이용하여 상기 컨텐츠를 단말 장치에 제공한다.
이 때, 브로커 API(130)는 복수의 브로커 메소드들(B1 내지 B5)을 포함할 수 있다.
이 때, 스토리지 API들(121 내지 123) 각각은 복수의 스토리지 메소드들(T1S1 내지 T1S3)을 포함할 수 있다.
이 ?, 브로커 메소드들 및 스토리지 메소드들은 일대일 또는 일대다 대응 관계일 수 있다.
이와 같이, 사용자는 브로커 API 제공부(320)에 의해 추상화된 브로커 API(130)를 이용하여, 스토리지 API들(121 내지 123)을 직접적으로 이용하지 아니하고도, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 브로커 API 제공부(320)는 브로커 API(130)의 메소드 및 스토리지 API(121)의 메소드의 대응 관계 정보를 포함하는 매핑 테이블을 이용하여, 스토리지 API(121)를 브로커 API(130)로 추상화할 수 있다.
또한, 브로커 API 제공부(320)는 상기 컨텐츠의 스토리지 ID를 이에 상응하는 브로커 ID로 추상화할 수 있다.
이 때, 브로커 ID는 및 스토리지 ID는 일대일 대응 관계일 수 있다.
이와 같이, 상기 사용자는 브로커 API 제공부(320)에 의해 추상화된 상기 브로커 ID를 호출함으로써, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 브로커 API 제공부(320)는 스토리지 API(121)를 브로커 API(130)로 추상화하여 단말 장치에 제공하는 브로커(broker) 서버의 기능을 제공할 수 있다.
도 4는 도 3에 도시된 컨텐츠 정렬부의 일 예를 나타낸 블록도이다.
도 4를 참조하면, 도 3에 도시된 컨텐츠 정렬부(310)는 식별자 저장부(410), 이동 판단부(420) 및 신호 송신부(430)를 포함한다.
식별자 저장부(410)는 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장한다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
예를 들어, 식별자 A는 제1 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 B는 제2 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 C는 제3 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이동 판단부(420)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단한다.
이 때, 이동 판단부(420)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 이동 판단부(420)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 컨텐츠 A가 2를 초과하는 수의 클라우드 스토리지들에 나뉘어 기록된 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 컨텐츠 A가 클라우드 스토리지(111), 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 컨텐츠 B가 나뉘어 기록된 클라우드 스토리지 수가 2를 초과하지 아니하는 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 컨텐츠 B가 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
이 때, 이동 판단부(420)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 컨텐츠 C의 용량이 30기가바이트(gigabytes; GB)이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 이동 판단부(420)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 15기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 15기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 30기가바이트이고, 이는 상기 허용 용량을 초과하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 5기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 5기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 10기가바이트이고, 이는 상기 허용 용량을 초과하지 아니하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠가 아닌 것으로 판단할 수 있다.
신호 송신부(430)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신한다.
도 4에는 도시되지 아니하였으나, 컨텐츠 정렬부(310)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정하는 스토리지 선정부를 더 포함할 수 있다.
도 5는 도 3에 도시된 컨텐츠 정렬부의 다른 예를 나타낸 블록도이다.
도 5를 참조하면, 도 3에 도시된 컨텐츠 정렬부(310)는 식별자 저장부(410), 이동 판단부(420) 및 신호 송신부(430)를 포함하고, 스토리지 선정부(510)를 더 포함한다.
스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정한다.
이 때, 스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 1개의 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 스토리지 선정부(510)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트(terabytes; TB)인 경우, 2테라바이트를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트이고, 클라우드 스토리지(111)의 용량이 1테라바이트, 클라우드 스토리지(112)의 용량이 3테라바이트, 클라우드 스토리지(113)의 용량이 256기가바이트인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 용량을 초과하는 클라우드 스토리지는 상기 대용량 타입으로 분류된 클라우드 스토리지일 수 있다.
이 때, 스토리지 선정부(510)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec인 경우, 읽기 속도 200MB/sec를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 스토리지 선정부(510)는 상기 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec이고, 클라우드 스토리지(111)의 읽기 속도가 120MB/sec, 클라우드 스토리지(112)의 읽기 속도가 120MB/sec, 클라우드 스토리지(113)의 읽기 속도가 740MB/sec인 경우, 클라우드 스토리지(113)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 성능을 초과하는 클라우드 스토리지는 상기 고성능 타입으로 분류된 클라우드 스토리지일 수 있다.
이 때, 신호 송신부(430)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 상기 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 클라우드 스토리지(112)가 상기 이동 스토리지인 경우, 상기 컨텐츠 A가 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 클라우드 스토리지(113)가 상기 이동 스토리지인 경우, 상기 컨텐츠 C가 클라우드 스토리지(113)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 클라우드 스토리지(113)가 상기 이동 스토리지인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2가 클라우드 스토리지(113)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지(113)는 상기 대용량 타입의 클라우드 스토리지일 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 D가 상기 로그 파일이고, 클라우드 스토리지(112)이 상기 이동 스토리지인 경우, 상기 컨텐츠 D가 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지(112)는 상기 고성능 타입의 클라우드 스토리지일 수 있다.
도 6은 도 4에 도시된 이동 판단부의 동작의 일 예를 나타낸 동작 흐름도이다.
도 6을 참조하면, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 분산 기록 상태인지 여부를 판단한다(S610).
이 때, 단계(S610)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S610)는 상기 컨텐츠 A가 2를 초과하는 수의 클라우드 스토리지들에 나뉘어 기록된 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S610)는 상기 컨텐츠 A가 클라우드 스토리지(111), 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S610)는 상기 컨텐츠 B가 나뉘어 기록된 클라우드 스토리지 수가 2를 초과하지 아니하는 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
예를 들어, 단계(S610)는 상기 컨텐츠 B가 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 컨텐츠가 상기 이동 대상인 것으로 판단한다(S611).
예를 들어, 단계(S611)는 상기 컨텐츠 A가 상기 분산 기록 상태인 경우, 상기 컨텐츠 A가 상기 이동 대상인 것으로 판단할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 분산 기록 상태가 아닌 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인지 여부를 판단한다(S620).
이 때, 단계(S620)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S620)는 상기 컨텐츠 C의 용량이 30기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 단계(S620)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S620)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 15기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 15기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 30기가바이트이고, 이는 상기 허용 용량을 초과하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S620)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 5기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 5기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 10기가바이트이고, 이는 상기 허용 용량을 초과하지 아니하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠가 아닌 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 상기 컨텐츠가 상기 이동 대상인 것으로 판단한다(S611).
예를 들어, 단계(S611)는 상기 컨텐츠 C가 상기 대용량 컨텐츠인 경우, 상기 컨텐츠 C가 상기 이동 대상인 것으로 판단할 수 있다.
예를 들어, 단계(S611)는 상기 컨텐츠 C가 상기 대용량 컨텐츠인 경우, 상기 컨텐츠 C가 상기 이동 대상인 것으로 판단할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 대용량 컨텐츠가 아닌 경우, 상기 컨텐츠가 상기 로그 파일인지 여부를 판단한다(S630).
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 로그 파일인 경우, 상기 컨텐츠가 상기 이동 대상인 것으로 판단한다(S611).
예를 들어, 단계(S611)는 상기 컨텐츠 D가 상기 로그 파일인 경우, 상기 컨텐츠 D가 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 상기 로그 파일이 아닌 경우, 상기 컨텐츠가 상기 이동 대상이 아닌 것으로 판단한다(S631).
이와 같이, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
도 7은 도 4에 도시된 이동 판단부의 동작의 다른 예를 나타낸 동작 흐름도이다.
도 7을 참조하면, 도 4에 도시된 이동 판단부(420)는 상기 식별자에 상응하는 컨텐츠가 기록된 스토리지 수를 획득한다(S710).
예를 들어, 단계(S710)는 상기 식별자 A에 상응하는 컨텐츠 A들이 클라우드 스토리지(111), 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록된 경우, 상기 컨텐츠 A가 기록된 스토리지 수는 3인 것으로 획득할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 기록된 스토리지 수가 기설정된 허용 스토리지 수를 초과하는지 여부를 판단한다(S720).
예를 들어, 상기 허용 스토리지 수는 2일 수 있다.
예를 들어, 단계(S720)는 상기 컨텐츠 A가 기록된 스토리지 수가 3이고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 A가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하는 것으로 판단할 수 있다.
예를 들어, 단계(S720)는 상기 컨텐츠 B가 기록된 스토리지 수가 2이고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 B가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하지 아니하는 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단한다(S721).
예를 들어, 단계(S721)는 상기 컨텐츠 A가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하지 아니하는 경우, 상기 컨텐츠가 상기 분산 기록 상태가 아닌 것으로 판단한다(S722).
예를 들어, 단계(S722)는 상기 컨텐츠 B가 기록된 스토리지 수가 상기 허용 스토리지 수를 초과하지 않는 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
도 8은 도 4에 도시된 이동 판단부의 동작의 또 다른 예를 나타낸 동작 흐름도이다.
도 8을 참조하면, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠의 용량을 획득한다(S810).
예를 들어, 상기 컨텐츠 C의 용량은 30기가바이트일 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는지 여부를 판단한다(S820).
예를 들어, 단계(S820)는 상기 컨텐츠 C의 용량이 30기가 바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 C의 용량이 상기 허용 용량을 초과하는 것으로 판단할 수 있다.
예를 들어, 단계(S820)는 상기 컨텐츠 C의 용량이 15기가 바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 C의 용량이 상기 허용 용량을 초과하지 아니하는 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠의 용량이 상기 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단한다(S821).
예를 들어, 단계(S821)는 상기 컨텐츠 C의 용량이 상기 허용 용량을 초과하는 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠의 용량이 상기 허용 용량을 초과하지 아니하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠가 아닌 것으로 판단한다(S822).
예를 들어, 단계(S822)는 상기 컨텐츠 C의 용량이 상기 허용 용량을 초과하지 아니하는 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠가 아닌 것으로 판단할 수 있다.
도 9는 도 4에 도시된 이동 판단부의 동작의 또 다른 예를 나타낸 동작 흐름도이다.
도 9를 참조하면, 도 4에 도시된 이동 판단부(420)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 각 조각의 용량의 합을 획득한다(S910).
예를 들어, 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 15기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 15기가바이트일 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠 조각들의 용량의 합이 기설정된 허용 용량을 초과하는지 여부를 판단한다(S920).
예를 들어, 단계(S920)는 상기 컨텐츠 조각 C1의 용량이 15기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 15기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 상기 허용 용량을 초과하는 것으로 판단할 수 있다.
예를 들어, 단계(S920)는 상기 컨텐츠 조각 C1의 용량이 5기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 5기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 상기 허용 용량을 초과하지 아니하는 것으로 판단할 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠 조각들의 용량의 합이 상기 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단한다(S921).
예를 들어, 단계(S921)는 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 상기 허용 용량을 초과하는 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
또한, 도 4에 도시된 이동 판단부(420)는 상기 컨텐츠 조각들의 용량의 합이 상기 허용 용량을 초과하지 아니하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠가 아닌 것으로 판단한다(S922).
예를 들어, 단계(S922)는 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 상기 허용 용량을 초과하지 아니하는 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠가 아닌 것으로 판단할 수 있다.
도 10은 도 5에 도시된 스토리지 선정부의 동작의 일 예를 나타낸 동작 흐름도이다.
도 10을 참조하면, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태인지 여부를 판단한다(S1010).
이 때, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정한다(S1011).
예를 들어, 단계(S1011)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 1개의 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1011)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
또한, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 대용량 컨텐츠인지 여부를 판단한다(S1020).
이 때, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정한다(S1021).
예를 들어, 단계(S1021)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트인 경우, 2테라바이트를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1021)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트이고, 클라우드 스토리지(111)의 용량이 1테라바이트, 클라우드 스토리지(112)의 용량이 3테라바이트, 클라우드 스토리지(113)의 용량이 256기가바이트인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 용량을 초과하는 클라우드 스토리지는 상기 대용량 타입으로 분류된 클라우드 스토리지일 수 있다.
또한, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 대용량 컨텐츠가 아닌 경우, 상기 컨텐츠가 상기 로그 파일인 것으로 판단한다(S1030).
즉, 단계(S1030)는 상기 컨텐츠가 상기 이동 대상인 것으로 기 판단되었으므로, 상기 컨텐츠가 상기 대용량 컨텐츠가 아닌 경우, 상기 로그 파일인 것으로 판단할 수 있다.
또한, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정한다(S1031).
예를 들어, 단계(S1031)는 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec인 경우, 읽기 속도 200MB/sec를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1031)는 상기 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec이고, 클라우드 스토리지(111)의 읽기 속도가 120MB/sec, 클라우드 스토리지(112)의 읽기 속도가 120MB/sec, 클라우드 스토리지(113)의 읽기 속도가 740MB/sec인 경우, 클라우드 스토리지(113)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 성능을 초과하는 클라우드 스토리지는 상기 고성능 타입으로 분류된 클라우드 스토리지일 수 있다.
도 11은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법을 나타낸 동작 흐름도이다.
도 11을 참조하면, 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법은 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동한다(S1110).
이 때, 단계(S1110)는 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장할 수 있다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 단계(S1110)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 단계(S1110)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 단계(S1110)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
이 때, 단계(S1110)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
또한, 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법은 클라우드 스토리지(111) 타입에 상응하는 스토리지 API(121)를 API 매핑 테이블을 이용하여 브로커 API(130)로 추상화한다(S1120).
이 때, 브로커 API(130)는 복수의 브로커 메소드들(B1 내지 B5)을 포함할 수 있다.
이 때, 스토리지 API들(121 내지 123) 각각은 복수의 스토리지 메소드들(T1S1 내지 T1S3)을 포함할 수 있다.
이 ?, 브로커 메소드들 및 스토리지 메소드들은 일대일 또는 일대다 대응 관계일 수 있다.
이와 같이, 사용자는 단계(S1120)에 의해 추상화된 브로커 API(130)를 이용하여, 스토리지 API들(121 내지 123)을 직접적으로 이용하지 아니하고도, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 단계(S1120)는, 브로커 API(130)의 메소드 및 스토리지 API(121)의 메소드의 대응 관계 정보를 포함하는 매핑 테이블을 이용하여, 스토리지 API(121)를 브로커 API(130)로 추상화할 수 있다.
또한, 단계(S1120)는 상기 컨텐츠의 스토리지 ID를 이에 상응하는 브로커 ID로 추상화할 수 있다.
이 때, 브로커 ID는 및 스토리지 ID는 일대일 대응 관계일 수 있다.
이와 같이, 상기 사용자는 단계(S1120)에 의해 추상화된 상기 브로커 ID를 호출함으로써, 상기 컨텐츠들에 접근할 수 있다.
이와 같이, 단계(S1120)는 스토리지 API(121)를 브로커 API(130)로 추상화하여 단말 장치에 제공하는 브로커(broker) 서버의 기능을 제공할 수 있다.
도 12는 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계의 일 예를 나타낸 동작 흐름도이다.
도 12를 참조하면, 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계(S1110)는 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장한다(S1210).
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
예를 들어, 식별자 A는 제1 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 B는 제2 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 C는 제3 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
또한, 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계(S1110)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단한다(S1220).
이 때, 단계(S1220)는 상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 상기 이동 대상인 것으로 판단할 수 있다.
이 때, 단계(S1220)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 상기 컨텐츠 A가 2를 초과하는 수의 클라우드 스토리지들에 나뉘어 기록된 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 상기 컨텐츠 A가 클라우드 스토리지(111), 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 상기 컨텐츠 B가 나뉘어 기록된 클라우드 스토리지 수가 2를 초과하지 아니하는 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 상기 컨텐츠 B가 클라우드 스토리지(112) 및 클라우드 스토리지(113)에 나뉘어 기록되어 있고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 B가 상기 분산 기록 상태가 아닌 것으로 판단할 수 있다.
이 때, 단계(S1220)는 상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 상기 컨텐츠 C의 용량이 30기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
이 때, 단계(S1220)는 상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 15기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 15기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 30기가바이트이고, 이는 상기 허용 용량을 초과하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠인 것으로 판단할 수 있다.
예를 들어, 단계(S1220)는 클라우드 스토리지(112)에 상기 컨텐츠 C가 컨텐츠 조각 C1 및 컨텐츠 조각 C2로 나뉘어 기록되어 있고, 상기 컨텐츠 조각 C1의 용량이 5기가바이트이고, 상기 컨텐츠 조각 C2의 용량이 5기가바이트이고, 상기 허용 용량이 20기가바이트인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2의 용량의 합이 10기가바이트이고, 이는 상기 허용 용량을 초과하지 아니하므로, 상기 컨텐츠 C가 상기 대용량 컨텐츠가 아닌 것으로 판단할 수 있다.
또한, 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계(S1110)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신한다(S1230).
도 11에는 도시되지 아니하였으나, 단계(S1110)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정하는 단계를 더 포함할 수 있다.
도 13은 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계의 다른 예를 나타낸 동작 흐름도이다.
도 13을 참조하면, 도 11에 도시된 컨텐츠를 정렬 이동시키는 단계는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정한다(S1310).
이 때, 단계(S1310)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
예를 들어, 단계(S1310)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 1개의 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1310)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 단계(S1310)는 상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1310)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트인 경우, 2테라바이트를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1310)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 상기 기준 용량이 2테라바이트이고, 클라우드 스토리지(111)의 용량이 1테라바이트, 클라우드 스토리지(112)의 용량이 3테라바이트, 클라우드 스토리지(113)의 용량이 256기가바이트인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 용량을 초과하는 클라우드 스토리지는 상기 대용량 타입으로 분류된 클라우드 스토리지일 수 있다.
이 때, 단계(S1310)는 상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1310)는 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec인 경우, 읽기 속도 200MB/sec를 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정할 수 있다.
예를 들어, 단계(S1310)는 상기 컨텐츠 D가 상기 로그 파일이고, 상기 기준 성능이 읽기 속도 200MB/sec이고, 클라우드 스토리지(111)의 읽기 속도가 120MB/sec, 클라우드 스토리지(112)의 읽기 속도가 120MB/sec, 클라우드 스토리지(113)의 읽기 속도가 740MB/sec인 경우, 클라우드 스토리지(113)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 상기 기준 성능을 초과하는 클라우드 스토리지는 상기 고성능 타입으로 분류된 클라우드 스토리지일 수 있다.
이 때, 신호 송신부(430)는 상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 상기 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 클라우드 스토리지(112)가 상기 이동 스토리지인 경우, 상기 컨텐츠 A가 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 클라우드 스토리지(113)가 상기 이동 스토리지인 경우, 상기 컨텐츠 C가 클라우드 스토리지(113)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 C가 상기 대용량 컨텐츠이고, 클라우드 스토리지(113)가 상기 이동 스토리지인 경우, 상기 컨텐츠 조각 C1 및 상기 컨텐츠 조각 C2가 클라우드 스토리지(113)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지(113)는 상기 대용량 타입의 클라우드 스토리지일 수 있다.
예를 들어, 신호 송신부(430)는 상기 컨텐츠 D가 상기 로그 파일이고, 클라우드 스토리지(112)이 상기 이동 스토리지인 경우, 상기 컨텐츠 D가 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지(112)는 상기 고성능 타입의 클라우드 스토리지일 수 있다.
도 14는 본 발명에 따른 클라우드 스토리지에 기록된 컨텐츠가 대용량 컨텐츠 및 로그 파일인 경우 컨텐츠 정렬의 일 예를 나타낸 도면이다.
도 14를 참조하면, 클라우드 스토리지들(111 내지 113)에 컨텐츠가 기록되어 있음을 알 수 있다.
이 때, 클라우드 스토리지(111)은 일반 타입의 클라우드 스토리지로, 클라우드 스토리지(112)는 고성능 타입의 클라우드 스토리지로 클라우드 스토리지(113)는 대용량 타입으로 분류된 것일 수 있다.
이 때, 대용량 컨텐츠 A, 대용량 컨텐츠 B 및 대용량 컨텐츠 C는 도 4에 도시된 이동 판단부(420)에 의하여, 상기 대용량 컨텐츠로 판단된 것일 수 있다.
이 때, 상기 대용량 컨텐츠 A는 상기 식별자 A에 상응하는 컨텐츠이고, 상기 대용량 컨텐츠 B는 상기 식별자 B에 상응하는 컨텐츠이고, 상기 대용량 컨텐츠 C는 상기 식별자 C에 상응하는 컨텐츠일 수 있다.
이 때, 상기 식별자 A는 상기 제1 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 B는 상기 제2 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 C는 상기 제3 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 로그 파일 D, 로그 파일 E 및 로그 파일 F는 도 4에 도시된 이동 판단부(420)에 의하여, 상기 로그 파일로 판단된 것일 수 있다.
이 때, 상기 로그 파일 D는 식별자 D에 상응하는 컨텐츠이고, 상기 로그 파일 E는 식별자 E에 상응하는 컨텐츠이고, 상기 로그 파일 F는 식별자 F에 상응하는 컨텐츠일 수 있다.
이 때, 상기 식별자 D는 상기 제4 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 E는 상기 제5 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 F는 상기 제6 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
이 때, 도 5에 도시된 스토리지 선정부(510)는 상기 대용량 컨텐츠들에 대하여, 상기 대용량 타입으로 분류된 클라우드 스토리지(113)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 도 4에 도시된 신호 송신부(430)는 상기 대용량 컨텐츠가 클라우드 스토리지(113)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지 그룹(110)은 상기 이동 신호에 따라 상기 대용량 컨텐츠를 클라우드 스토리지(113)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(111) 내 상기 대용량 컨텐츠 A를 클라우드 스토리지(113)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(112) 내 상기 대용량 컨텐츠 B를 클라우드 스토리지(113)로 이동시킬 수 있다.
또한, 도 5에 도시된 스토리지 선정부(510)는 상기 로그 파일들에 대하여, 고성능 타입으로 분류된 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 도 4에 도시된 신호 송신부(430)는 상기 로그 파일들이 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지 그룹(110)은 상기 이동 신호에 따라 상기 로그 파일들을 클라우드 스토리지(112)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(111) 내 상기 로그 파일 D를 클라우드 스토리지(112)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(113) 내 상기 로그 파일 F를 클라우드 스토리지(112)로 이동시킬 수 있다.
이와 같이, 본 발명에 따르면, 클라우드 스토리지에 기록된 컨텐츠가 대용량 컨텐츠 및 로그 파일인 경우, 대용량 컨텐츠는 대용량 타입의 클라우드 스토리지에, 로그 파일은 고성능 타입의 클라우드 스토리지에 정렬 이동시킬 수 있다.
도 15는 본 발명에 따른 컨텐츠가 분산 기록 상태인 경우 컨텐츠 정렬의 일 예를 나타낸 도면이다.
도 15를 참조하면, 클라우드 스토리지들(111 내지 113)에 컨텐츠가 기록되어 있음을 알 수 있다.
이 때, 상기 컨텐츠 A는 상기 식별자 A에 상응하는 컨텐츠이고, 상기 컨텐츠 B는 상기 식별자 B에 상응하는 컨텐츠이고, 상기 컨텐츠 C는 상기 식별자 C에 상응하는 컨텐츠이고, 상기 컨텐츠 D는 상기 식별자 D에 상응하는 컨텐츠일 수 있다.
이 때, 상기 식별자 A는 상기 제1 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 B는 상기 제2 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 C는 상기 제3 컨텐츠 업로더에 상응하는 업로더 식별자이고, 상기 식별자 D는 상기 제4 컨텐츠 업로더에 상응하는 일 수 있다.
이 때, 도 4에 도시된 이동 판단부(420)는 상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단할 수 있다.
예를 들어, 이동 판단부(420)는 상기 식별자 A에 상응하는 컨텐츠 A들이 기록된 클라우드 스토리지 수가 3이고, 상기 허용 스토리지 수가 2인 경우, 상기 컨텐츠 A가 상기 분산 기록 상태인 것으로 판단할 수 있다.
이 때, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정할 수 있다.
예를 들어, 도 5에 도시된 스토리지 선정부(510)는 상기 컨텐츠 A가 상기 분산 기록 상태이고, 상기 허용 스토리지 수가 2인 경우, 클라우드 스토리지(112)를 상기 이동 스토리지로 선정할 수 있다.
이 때, 도 4에 도시된 신호 송신부(430)는 상기 컨텐츠 A가 클라우드 스토리지(112)로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신할 수 있다.
이 때, 클라우드 스토리지 그룹(110)은 상기 이동 신호에 따라 상기 컨텐츠 A들을 클라우드 스토리지(112)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(111) 내 상기 컨텐츠 A를 클라우드 스토리지(112)로 이동시킬 수 있다.
예를 들어, 클라우드 스토리지 그룹(110)은 클라우드 스토리지(113) 내 상기 컨텐츠 A를 클라우드 스토리지(112)로 이동시킬 수 있다.
이와 같이, 본 발명에 따르면, 클라우드 스토리지에 기록된 컨텐츠가 분산 기록 상태인 경우, 분산 기록 상태인 컨텐츠를 허용 스토리지 수를 초과하지 아니하는 수의 클라우드 스토리지들에 정렬 이동시킬 수 있다.
도 16은 본 발명에 따른 식별자 저장의 일 예를 나타낸 도면이다.
도 16을 참조하면, 도 4에 도시된 식별자 저장부(410)에 의해, 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자가 저장된다.
이 때, 상기 식별자는 상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
예를 들어, 식별자 A는 제1 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 B는 제2 컨텐츠 업로더에 상응하는 업로더 식별자이고, 식별자 C는 제3 컨텐츠 업로더에 상응하는 업로더 식별자일 수 있다.
도 17은 본 발명의 일실시예에 따른 클라우드 스토리지 관리 방법을 전체적으로 나타낸 동작 흐름도이다.
도 17을 참조하면, 컨텐츠 정렬부(310)의 식별자 저장부(410)가 클라우드 스토리지(111)에 기록된 컨텐츠에 상응하는 식별자를 저장한다(S1710).
이 때, 식별자 저장부(410)는 컨텐츠 정렬부(310)의 이동 판단부(420)에 상기 식별자들을 전달한다(S1711).
이 때, 이동 판단부(420)는 상기 식별자를 이용하여, 상기 컨텐츠가 이동 대상인지 여부를 판단한다(S1720).
이 때, 단계(S1720)에서 판단 결과, 상기 컨텐츠가 이동 대상인 경우, 이동 판단부(420)는 컨텐츠 정렬부(310)의 스토리지 선정부(510)로 이동 스토리지 선정을 요청한다(S1721).
이 때, 스토리지 선정부(510)는 상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정한다(S1730).
이 때, 스토리지 선정부(510)는 컨텐츠 정렬부(310)의 신호 송신부(430)에 상기 이동 스토리지 정보를 전달한다(S1731).
이 때, 신호 송신부(430)는 상기 컨텐츠가 상기 이동 스토리지로 이동되도록 클라우드 스토리지 그룹(110)에 이동 신호를 송신한다(S1741).
이 때, 클라우드 스토리지 그룹(110)은 상기 이동 신호를 수신하고, 클라우드 스토리지들(111 내지 113) 간 컨텐츠가 정렬 이동된다(S1750).
이 때, 클라우드 스토리지 그룹(110)은 브로커 API 제공부(320)에 상기 컨텐츠를 제공한다(S1751).
이 때, 브로커 API 제공부(320)는 클라우드 스토리지(111) 타입에 상응하는 스토리지 API(121)를 API 매핑 테이블을 이용하여 브로커 API(130)로 추상화한다(S1760).
이상에서와 같이 본 발명에 따른 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
110: 스토리지 그룹
130: 브로커 API
140: 클라우드 스토리지 관리 장치
310: 컨텐츠 정렬부
320: 브로커 API 제공부
410: 식별자 저장부
420: 이동 판단부
430: 신호 송신부
510: 스토리지 선정부

Claims (20)

  1. 클라우드 스토리지에 이동 신호를 송신하여, 상기 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동시키는 컨텐츠 정렬부; 및
    상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 브로커 API 제공부
    를 포함하고,
    상기 컨텐츠 정렬부는
    상기 컨텐츠에 상응하는 식별자를 저장하는 식별자 저장부;
    상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 이동 대상인 것으로 판단하는 이동 판단부; 및
    상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 상기 클라우드 스토리지에 이동 신호를 송신하는 신호 송신부
    를 포함하고,
    상기 이동 판단부는
    상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  2. 청구항 1에 있어서,
    상기 브로커 API 제공부는
    상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 상기 증설 클라우드 스토리지가 신규 타입인지 여부를 판단하고, 상기 증설 클라우드 스토리지가 상기 신규 타입인 경우, 상기 신규 타입에 상응하는 신규 스토리지 API를 상기 API 매핑 테이블에 추가하여, 상기 브로커 API로 추상화하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  3. 청구항 2에 있어서,
    상기 컨텐츠 정렬부는
    상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 기존 클라우드 스토리지에 기록된 컨텐츠를 상기 증설 클라우드 스토리지로 정렬 이동시키는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  4. 삭제
  5. 삭제
  6. 청구항 3에 있어서,
    상기 컨텐츠 정렬부는
    상기 컨텐츠가 상기 분산 기록 상태, 상기 대용량 컨텐츠 및 상기 로그 파일 중 어느 하나인지 여부에 따라 상기 이동 스토리지를 선정하는 스토리지 선정부를 더 포함하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  7. 청구항 3에 있어서,
    상기 스토리지 선정부는
    상기 컨텐츠가 상기 분산 기록 상태인 경우, 상기 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  8. 청구항 3에 있어서,
    상기 식별자는
    상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자인 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  9. 청구항 3에 있어서,
    상기 이동 판단부는
    상기 컨텐츠의 용량이 기설정된 허용 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  10. 청구항 3에 있어서,
    상기 이동 판단부는
    상기 클라우드 스토리지에 기록된 컨텐츠가 복수의 컨텐츠 조각들로 나뉜 경우, 상기 컨텐츠 조각들의 용량의 합이 기설정된 기준 용량을 초과하는 경우, 상기 컨텐츠가 상기 대용량 컨텐츠인 것으로 판단하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  11. 청구항 3에 있어서,
    상기 스토리지 선정부는
    상기 컨텐츠가 상기 대용량 컨텐츠인 경우, 기설정된 기준 용량을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  12. 청구항 3에 있어서,
    상기 스토리지 선정부는
    상기 컨텐츠가 상기 로그 파일인 경우, 기설정된 기준 성능을 초과하는 클라우드 스토리지를 상기 이동 스토리지로 선정하는 것을 특징으로 하는 클라우드 스토리지 관리 장치.
  13. 클라우드 스토리지에 이동 신호를 송신하여, 상기 클라우드 스토리지에 기록된 컨텐츠를 정렬 이동시키는 단계; 및
    상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 단계
    를 포함하고,
    상기 컨텐츠를 정렬 이동시키는 단계는
    상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 기존 클라우드 스토리지에 기록된 컨텐츠를 상기 증설 클라우드 스토리지로 정렬 이동시키고,
    상기 컨텐츠에 상응하는 식별자를 저장하는 단계;
    상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 이동 대상인 것으로 판단하는 단계; 및
    상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 스토리지 그룹에 이동 신호를 송신하는 단계
    를 포함하고,
    상기 이동 대상인 것으로 판단하는 단계는
    상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단하는 것을 특징으로 하는 클라우드 스토리지 관리 방법.
  14. 청구항 13에 있어서,
    상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 단계는
    상기 클라우드 스토리지가 증설 클라우드 스토리지인 경우, 상기 증설 클라우드 스토리지가 신규 타입인지 여부를 판단하고, 상기 증설 클라우드 스토리지가 상기 신규 타입인 경우, 상기 신규 타입에 상응하는 신규 스토리지 API를 상기 API 매핑 테이블에 추가하여, 상기 브로커 API로 추상화하는 것을 특징으로 하는 클라우드 스토리지 관리 방법.
  15. 삭제
  16. 삭제
  17. 청구항 14에 있어서,
    상기 컨텐츠를 정렬 이동시키는 단계는
    상기 컨텐츠가 상기 분산 기록 상태인 경우, 허용 스토리지 수를 초과하지 아니하도록 상기 이동 스토리지를 선정하는 단계를 더 포함하는 것을 특징으로 하는 클라우드 스토리지 관리 방법.
  18. 청구항 14에 있어서,
    상기 식별자는
    상기 컨텐츠를 업로드한, 컨텐츠 업로더에 상응하는 업로더 식별자인 것을 특징으로 하는 클라우드 스토리지 관리 방법.
  19. 청구항 13, 14, 17 및 18 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 기록매체.
  20. 컨텐츠가 기록되는 클라우드 스토리지; 및
    상기 클라우드 스토리지에 이동 신호를 송신하여, 상기 컨텐츠를 정렬 이동시키고, 상기 클라우드 스토리지 타입에 상응하는 스토리지 API(Application Programming Interface)를 API 매핑 테이블을 이용하여 브로커 API로 추상화하고, 상기 브로커 API를 이용하여 상기 컨텐츠를 단말 장치에 제공하는 관리 서버
    를 포함하고,
    상기 관리 서버는
    상기 컨텐츠에 상응하는 식별자를 저장하고,
    상기 컨텐츠가 분산 기록 상태, 대용량 컨텐츠 및 로그 파일 중 어느 하나 이상에 해당하는 경우, 상기 컨텐츠를 이동 대상인 것으로 판단하고,
    상기 컨텐츠가 상기 이동 대상인 경우, 상기 컨텐츠가 이동 스토리지로 이동되도록 상기 클라우드 스토리지에 이동 신호를 송신하고,
    상기 식별자에 상응하는 컨텐츠가 나뉘어 기록된, 클라우드 스토리지 수가 기설정된 허용 스토리지 수를 초과하는 경우, 상기 컨텐츠가 상기 분산 기록 상태인 것으로 판단하는 것을 특징으로 하는 클라우드 스토리지 관리 시스템.
KR20130065394A 2013-06-07 2013-06-07 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치 KR101491015B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR20130065394A KR101491015B1 (ko) 2013-06-07 2013-06-07 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치
PCT/KR2013/012186 WO2014196710A1 (ko) 2013-06-07 2013-12-26 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치
US14/894,722 US10298688B2 (en) 2013-06-07 2013-12-26 Cloud storage managing system, cloud storage managing method, and apparatus for same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130065394A KR101491015B1 (ko) 2013-06-07 2013-06-07 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치

Publications (2)

Publication Number Publication Date
KR20140143617A KR20140143617A (ko) 2014-12-17
KR101491015B1 true KR101491015B1 (ko) 2015-02-06

Family

ID=52008320

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130065394A KR101491015B1 (ko) 2013-06-07 2013-06-07 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치

Country Status (3)

Country Link
US (1) US10298688B2 (ko)
KR (1) KR101491015B1 (ko)
WO (1) WO2014196710A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013188382A2 (en) * 2012-06-12 2013-12-19 Centurylink Intellectual Property Llc High performance cloud storage
US10866765B2 (en) * 2014-06-27 2020-12-15 Hcl Technologies Ltd System and method for managing content using generic content management interface
CN111479013B (zh) * 2020-04-03 2020-10-27 北京掌酷时代科技有限公司 一种屏幕显示方法、装置、云服务器和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070105487A (ko) * 2006-04-26 2007-10-31 에스케이 텔레콤주식회사 스토리지 사이에 컨텐츠를 이동시켜 스토리지의 트래픽을분산시키는 방법
KR20100137323A (ko) * 2009-06-22 2010-12-30 삼성전자주식회사 클라우드 스토리지를 제공하는 클라이언트, 중개 서버 및 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7433948B2 (en) 2002-01-23 2008-10-07 Cisco Technology, Inc. Methods and apparatus for implementing virtualization of storage within a storage area network
JP2004192105A (ja) * 2002-12-09 2004-07-08 Hitachi Ltd 記憶装置の接続装置およびそれを含むコンピュータシステム
KR100926362B1 (ko) 2007-08-27 2009-11-10 주식회사 케이티 서버 성능 관리 방법 및 시스템
JP4477681B2 (ja) * 2008-03-06 2010-06-09 富士通株式会社 階層記憶装置、制御装置、および制御方法
KR20100092850A (ko) 2009-02-13 2010-08-23 경희대학교 산학협력단 클라우드 컴퓨팅 환경에서의 리소스 분배 장치 및 그 방법
KR101072937B1 (ko) 2009-05-07 2011-10-17 한국과학기술정보연구원 시맨틱 서비스 시스템 및 방법
KR101134597B1 (ko) 2009-09-03 2012-04-09 한국과학기술원 멀티미디어 컨텐츠와 메타데이터를 분리하여 저장하는 웹스토리지 서비스 제공방법 및 장치
KR101483127B1 (ko) 2011-03-31 2015-01-22 주식회사 케이티 클라우드 스토리지 시스템에서 리소스를 고려한 자료분배방법 및 장치
US20130007091A1 (en) * 2011-07-01 2013-01-03 Yahoo! Inc. Methods and apparatuses for storing shared data files in distributed file systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070105487A (ko) * 2006-04-26 2007-10-31 에스케이 텔레콤주식회사 스토리지 사이에 컨텐츠를 이동시켜 스토리지의 트래픽을분산시키는 방법
KR20100137323A (ko) * 2009-06-22 2010-12-30 삼성전자주식회사 클라우드 스토리지를 제공하는 클라이언트, 중개 서버 및 방법

Also Published As

Publication number Publication date
US20160127469A1 (en) 2016-05-05
US10298688B2 (en) 2019-05-21
WO2014196710A1 (ko) 2014-12-11
KR20140143617A (ko) 2014-12-17

Similar Documents

Publication Publication Date Title
US20230011387A1 (en) Data processing method and nvme storage device
US8725680B2 (en) Media content location awareness and decision making
CN103036994B (zh) 实现负载均衡的云存储系统
CN104519090A (zh) 文件传输方法及装置
CN103608783A (zh) 用于备份应用的存储体系结构
CN104020961A (zh) 分布式数据存储方法、装置及系统
CN104092670A (zh) 网络缓存服务器处理文件的方法及处理缓存文件的设备
CN102438004A (zh) 获取媒体文件的元数据信息的方法、系统及多媒体播放器
CN111124299A (zh) 数据存储管理方法、装置、设备、系统及存储介质
US9614897B2 (en) Methods and apparatuses for a network based on hierarchical name structure
KR101491015B1 (ko) 클라우드 스토리지 관리 시스템, 클라우드 스토리지 관리 방법 및 이를 위한 장치
CN114676135A (zh) 数据存储方法、可读介质和电子设备
CN101576854A (zh) 文件访问的方法、装置及系统
CN104462129B (zh) 分布式文件存储和查询方法及存取系统
WO2014117729A9 (en) Scalable data deduplication
US20170039140A1 (en) Network storage device for use in flash memory and processing method therefor
CN109144403B (zh) 一种用于云盘模式切换的方法与设备
CN114830105B (zh) 一种数据读取方法以及终端
US10509578B2 (en) Logical address space for storage resource pools
US20140289307A1 (en) Method for transmitting data between electronic devices
US20110145440A1 (en) Method of distributed computing electronic device and system applying the method
KR101451956B1 (ko) 클라우드 서비스 시스템, 클라우드 서비스 장치 및 이를 이용한 방법
CN105528346A (zh) 提供媒体内容信息的方法及装置
US8051090B2 (en) File management method of a ring buffer and related file management apparatus
CN113590029A (zh) 一种磁盘空间分配方法、系统、存储介质及设备

Legal Events

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

Payment date: 20171215

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190207

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200204

Year of fee payment: 6