KR20190058992A - 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법 - Google Patents

토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법 Download PDF

Info

Publication number
KR20190058992A
KR20190058992A KR1020170156483A KR20170156483A KR20190058992A KR 20190058992 A KR20190058992 A KR 20190058992A KR 1020170156483 A KR1020170156483 A KR 1020170156483A KR 20170156483 A KR20170156483 A KR 20170156483A KR 20190058992 A KR20190058992 A KR 20190058992A
Authority
KR
South Korea
Prior art keywords
data
tier
server
tiers
torus network
Prior art date
Application number
KR1020170156483A
Other languages
English (en)
Other versions
KR102178740B1 (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 KR1020170156483A priority Critical patent/KR102178740B1/ko
Priority to US16/176,809 priority patent/US20190155922A1/en
Publication of KR20190058992A publication Critical patent/KR20190058992A/ko
Application granted granted Critical
Publication of KR102178740B1 publication Critical patent/KR102178740B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/183Provision of network file services by network file servers, e.g. by using NFS, CIFS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/119Details of migration of file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file 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/0604Improving or facilitating administration, e.g. storage management
    • 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/0617Improving the reliability of storage systems in relation to availability
    • 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/0625Power saving in 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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]
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

본 발명의 일 실시예는, 토러스 네트워크 기반의 분산 파일 시스템에 대한 시스템 정보를 저장하는 시스템 정보 저장부; 파일의 메타데이터를 저장하는 하나 이상의 메타데이터 서버와 상기 토러스 네트워크에 포함되어 데이터를 분산 저장하는 복수의 데이터 서버들을 관리하는 시스템 관리부; 및 상기 토러스 네트워크 내의 제1 평면으로부터 또는 상기 토러스 네트워크 밖으로부터 클라이언트와 연결된 스위치와 통신하고, 상기 메타데이터 서버 및 상기 데이터 서버들과 통신하는 통신부를 포함하는 것을 특징으로 하는, 관리 서버를 제공한다.

Description

토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법 {SERVER FOR DISTRIBUTED FILE SYSTEM BASED ON TORUS NETWORK AND METHOD USING THE SAME}
본 발명은 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법에 관한 것으로, 구체적으로는 토러스 네트워크 상에서 데이터 서버의 토폴로지를 기반으로 스토리지 티어를 구성하고, 구성된 티어의 특성에 따라 복제본 정책 및 전력 절감 정책을 적용하는 방법에 관한 것이다.
대규모(예컨대, 엑사바이트 규모)의 스토리지를 제공하기 위해 토러스 네트워크 기반의 분산 파일 시스템이 제안되었다. 토러스 네트워크 기반의 분산 파일 시스템에서는 데이터 서버들을 다차원 토러스 네트워크를 통해 연결하고 제1 평면의 데이터 서버와 클라이언트 사이의 연결에만 스위치를 사용하였다. 클라이언트가 스위치와 직접 연결되지 않은 제2 평면이상의 데이터 서버들을 접근하기 위해서는 각 데이터 서버가 라우팅 기능을 수행하여 클라이언트 및 모든 데이터 서버 사이에 설정된 경로를 통해 데이터에 접근한다. 따라서 제2 평면 이상의 데이터 서버들에 접근하기 위해서는 다수의 홉을 거쳐야 하기 때문에 홉 수가 증가할수록 네트워크 통신에 따른 지연 시간이 증가하게 된다. 클라이언트와 가까운 평면의 입출력 성능이 가장 높으며 클라이언트로부터 멀어질수록 성능은 떨어지게 된다. 평면의 위치에 따른 성능 차이를 이용하여 평면 기반으로 데이터 서버들의 티어를 직관적으로 구성할 수 있다. 이와 같이 구성된 티어들의 데이터 입출력 성능은 각각 다르게 된다.
일반적으로 분산 파일 시스템에서는 데이터 가용성을 위해 동일한 데이터를 서로 다른 스토리지에 저장하는 복제 정책을 사용한다. 복제 정책은 복제본의 수가 증가할수록 성능을 높일 수 있으나 저장 공간 효율은 반대로 저하된다. 이를 해결하기 위한 기술로 소거 코딩(erasure coding) 기법이 존재한다. 그러나 소거 코딩 기법은 복제 기법에 비해 저조한 성능 때문에 일반적으로 아카이브 티어에 저장되는 데이터에 적용된다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라할 수는 없다.
국내 공개특허공보 제10-2016-0121380호
본 발명의 목적은 메타데이터와 데이터를 구분하여 관리하는 토러스 네트워크 기반의 분산 파일 시스템을 제공하는 것이다.
또한, 본 발명의 목적은 토러스 네트워크 기반의 분산 파일 시스템의 특성을 고려하여 데이터 서버들에 대하여 스토리지 티어를 구성하고 운영하는 방법을 제공하는 것이다.
또한, 본 발명의 목적은 토러스 네트워크 기반의 분산 파일 시스템에 대하여 스토리지 티어의 특성에 따라 복제본 및 소거코딩 기법을 포함한 가용성 정책을 이용하여 운영하는 방법을 제공하는 것이다.
또한, 본 발명의 목적은 토러스 네트워크 기반의 분산 파일 시스템에 대하여 스토리지 티어의 특성에 따라 전력 관리 정책을 이용하여 운영하는 방법을 제공하는 것이다.
본 발명의 일 실시예는, 토러스 네트워크 기반의 분산 파일 시스템에 대한 시스템 정보를 저장하는 시스템 정보 저장부; 파일의 메타데이터를 저장하는 하나 이상의 메타데이터 서버와 상기 토러스 네트워크에 포함되어 데이터를 분산 저장하는 복수의 데이터 서버들을 관리하는 시스템 관리부; 및 상기 토러스 네트워크 내의 제1 평면으로부터 또는 상기 토러스 네트워크 밖으로부터 클라이언트와 연결된 스위치와 통신하고, 상기 메타데이터 서버 및 상기 데이터 서버들과 통신하는 통신부를 포함하는 것을 특징으로 하는, 관리 서버를 제공한다.
이때, 상기 시스템 관리부는 상기 데이터 서버들에 대한 토폴로지 정보를 관리하고, 상기 토폴로지 정보를 이용하여 상기 데이터 서버들에 대한 복수의 티어들을 구성하고, 상기 토폴로지 정보는 상기 토러스 네트워크에서의 각 차원의 축에 대한 위치 정보를 포함할 수 있다.
이때, 상기 시스템 관리부는 상기 데이터 서버들의 상기 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 티어들을 구성할 수 있다.
이때, 상기 시스템 관리부는 상기 데이터 서버들에 대하여 하나 이상의 볼륨을 구성하고, 상기 볼륨은 용도에 따라 티어의 구성이 결정되고, 소거 코딩에 기반하여 데이터를 분산 저장할 수 있다.
이때, 상기 시스템 관리부는 복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행할 수 있다.
이때, 상기 시스템 관리부는 마이그레이션을 수행하는 경우에, 마이그레이션 대상 볼륨에 상응하는 마이그레이션 대상 아이노드를 식별하고, 상기 아이노드로부터 마이그레이션 대상 청크를 식별하고, 마이그레이션 목적지 티어에 위치하는 데이터 서버를 결정하여 데이터를 이동시키고 상기 마이그레이션 대상 아이노드를 갱신할 수 있다.
이때, 상기 시스템 관리부는 상기 티어들 각각에 상응하는 티어별 전력 모드를 결정하고, 기설정된 주기마다 상기 티어별 전력 모드에 기반하여 상기 데이터 서버들 각각에 상응하는 전력 모드를 관리할 수 있다.
이때, 상기 티어별 전력 모드는 상기 티어들 각각에 상응하는 성능 또는 접근 빈도 중에서 적어도 하나 이상을 고려하여 결정될 수 있다.
이때, 상기 시스템 관리부는 대상 데이터 서버의 전력 모드가 상기 대상 데이터 서버에 상응하는 티어의 전력 모드와 상이하고 상기 대상 데이터 서버의 마지막 작업 시간으로부터 기설정된 시간을 도과한 경우, 상기 대상 데이터 서버의 전력 모드를 상기 대상 데이터 서버에 상응하는 티어의 전력 모드로 변경할 수 있다.
본 발명의 다른 일 실시예는, 토러스 네트워크 기반의 분산 파일 시스템에서 관리하는 데이터를 저장하는 데이터 저장부; 관리 서버의 데이터 처리 명령에 따라 저장된 데이터를 관리하는 데이터 관리부; 및 상기 토러스 네트워크 내의 임의의 평면으로부터 직접 또는 다른 데이터 서버들을 통하여 클라이언트와 연결된 스위치와 통신하고, 상기 다른 데이터 서버들 및 상기 관리 서버와 통신하는 통신부를 포함하는 것을 특징으로 하는, 데이터 서버를 제공한다.
이때, 상기 데이터 관리부는 상기 관리 서버에서 구성한 복수의 티어들, 볼륨 및 상기 볼륨에 상응하는 티어 구성에 따라 데이터를 관리하고, 상기 복수의 티어들은 상기 토러스 네트워크에서의 각 차원의 축에 대한 위치 정보를 포함하는 토폴로지 정보를 이용하여 구성되고, 상기 볼륨에 상응하는 티어 구성은 상기 볼륨의 용도에 따라 결정될 수 있다.
이때, 상기 티어들은 상기 스위치에 대한 인접도 또는 입출력 성능 중에서 적어도 하나 이상을 고려하여 구성될 수 있다.
이때, 상기 데이터 관리부는 복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행할 수 있다.
이때, 티어별 전력 모드에 기반하여 전력 모드를 관리하는 전력 관리부를 더 포함하고, 상기 티어별 전력 관리 모드는 상기 관리 서버에 의하여 결정된 상기 티어들 각각에 상응하는 전력 모드일 수 있다.
이때, 상기 전력 관리부는 전력 모드가 상응하는 티어의 전력 모드와 상이하고 마지막 작업 시간으로부터 기설정된 시간을 도과한 경우, 전력 모드를 상응하는 티어의 전력 모드로 변경할 수 있다.
본 발명의 다른 일 실시예는, 토러스 네트워크 기반의 분산 파일 시스템에서 파일의 메타데이터를 저장하는 하나 이상의 메타데이터 서버와 상기 토러스 네트워크에 포함되어 데이터를 분산 저장하는 복수의 데이터 서버들을 관리하는 관리 서버가, 상기 데이터 서버들에 대한 토폴로지 정보를 관리하는 단계; 및 상기 관리 서버가, 상기 토폴로지 정보를 이용하여, 상기 데이터 서버들의 클라이언트와 연결된 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 데이터 서버들에 대한 복수의 티어들을 구성하는 단계를 포함하는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법을 제공한다.
이때, 상기 복수의 티어들을 구성하는 단계는 상기 데이터 서버들의 클라이언트와 연결된 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 티어들을 구성할 수 있다.
이때, 상기 관리 서버가, 상기 데이터 서버들에 대하여 하나 이상의 볼륨을 구성하는 단계를 더 포함하고, 상기 볼륨은 용도에 따라 티어의 구성이 결정될 수 있다.
이때, 상기 관리 서버가, 복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 요청을 수신하는 단계; 및 상기 관리 서버가, 상기 마이그레이션 요청을 처리하는 단계를 더 포함할 수 있다.
이때, 상기 관리 서버가, 상기 티어들 각각에 상응하는 티어별 전력 모드를 결정하는 단계; 및 상기 관리 서버가, 기설정된 주기마다 상기 티어별 전력 모드에 기반하여 상기 데이터 서버들 각각에 상응하는 전력 모드를 관리하는 단계를 더 포함할 수 있다.
본 발명에 따르면, 토러스 네트워크 기반의 분산 파일 시스템에 의해 메타데이터와 데이터를 구분하여 관리함으로써, 효과적으로 데이터를 분산 관리할 수 있다.
또한, 본 발명은 토러스 네트워크 기반의 분산 파일 시스템의 특성을 고려하여 데이터 서버들에 대하여 스토리지 티어를 구성함으로써, 데이터 서버들을 데이터 입출력 성능이 비슷한 스토리지 티어별로 관리하여 데이터 분산 관리의 효율을 높일 수 있다.
또한, 본 발명은 토러스 네트워크 기반의 분산 파일 시스템에 대하여 스토리지 티어의 특성에 따라 복제본 및 소거코딩 기법을 포함한 가용성 정책을 이용하여 운영함으로써, 분산 파일 시스템에서 일부 데이터 서버의 장애에도 파일의 무결성 및 가용성을 유지할 수 있다.
또한, 본 발명은 토러스 네트워크 기반의 분산 파일 시스템에 대하여 스토리지 티어의 특성에 따라 전력 관리 정책을 이용하여 운영함으로써, 각 스토리지 티어를 전력 효율적으로 운영할 수 있다.
도 1 및 2는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템에서 3차원 토러스 네트워크의 구조의 일 예를 나타낸 도면이다.
도 4는 도 1 및 2에 도시된 관리 서버의 일 예를 나타낸 블록도이다.
도 5는 도 1 및 2에 도시된 메타데이터 서버의 일 예를 나타낸 블록도이다.
도 6은 도 1 및 2에 도시된 데이터 서버의 일 예를 나타낸 블록도이다.
도 7은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템의 티어 정보 테이블의 일 예를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템의 토러스 네트워크의 토폴로지 정보 및 데이터 서버 정보의 일 예를 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템의 볼륨 구성 정보의 일 예를 나타낸 도면이다.
도 10은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템의 아이노드 테이블의 일 예를 나타낸 도면이다.
도 11은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버에서 데이터 마이그레이션을 수행하는 방법의 일 예를 나타낸 동작 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버에서 전력 관리 정책에 따라 운영하는 방법의 일 예를 나타낸 동작 흐름도이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성되어 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는한 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1 및 2는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 구성을 나타낸 도면이다.
도 1 및 2를 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)은 토러스 네트워크(400)를 기반으로 복수 개의 데이터 서버들(300), 하나 이상의 메타데이터 서버(200), 하나 이상의 관리 서버(100) 및 스위치(600)을 포함하며, 스위치(600)는 하나 이상의 클라이언트(500)와 상호 연결된다. 여기서, 도 1은 관리 서버(100)와 메타데이터 서버(200)가 토러스 네트워크(400)의 밖에 위치하여 스위치(600)와 직접 연결되도록 구성된 예시를 나타내며, 도 2는 관리 서버(100)와 메타데이터 서버(200)의 일부가 토러스 네트워크(400)의 내부에도 위치하도록 구성된 예시를 나타낸다.
토러스 네트워크(400)는 다차원(예컨대, n 차원)의 구조를 갖는다. 특히, 토러스 네트워크(400)는 3차원의 구조를 가질 수 있다.
이때, 토러스 네트워크(400)의 제1 평면이 스위치(600)와 상호 연결될 수 있다. 여기서, 토러스 네트워크(400)의 제1 평면은 스위치(600)와 직접 연결되는 토러스 네트워크의 초평면을 의미할 수 있다. 즉, 토러스 네트워크(400)가 n 차원이면, 제1 평면은 스위치(600)와 직접 연결되는 (n-1) 차원의 초평면을 의미할 수 있다. 이하에서, 초평면과 평면은 동일한 의미로 사용될 수 있다.
이때, 토러스 네트워크(400)는 복수 개의 데이터 서버들(300)로 구성될 수 있고, 선택적으로 하나 이상의 메타데이터 서버(200)를 포함하여 구성될 수 있다.
이때, 토러스 네트워크(400)의 구성 요소들은 스위치에 연결되지 않은 제2 평면 이상에 위치한 데이터 서버들(300)의 네트워크 연결을 위하여 라우팅 기능을 제공할 수 있고, 서로 간에 접근할 수 있는 경로들이 설정될 수 있다. 즉, 토러스 네트워크(400)에 데이터 서버들(300)은 라우팅을 통하여 직접 혹은 간접적으로 서로 연결될 수 있다. 따라서, 각 데이터 서버(300)별로 스위치(600)에 이르는 인접도가 같지 않으며, 인접도에 따라 입출력 요청을 처리할 때의 네트워크 지연 시간이 달라질 수 있다.
관리 서버(100)는 메타데이터 서버(200)와 데이터 서버들(300)을 관리한다.
이때, 관리 서버(100)는 복수 개로 구성될 수 있으며, 서버 다중화(active-standby) 방식으로 구성될 수 있다.
이때, 관리 서버(100)는 토러스 네트워크(400)의 밖에 독립적으로 위치하여 스위치(600)와 직접 연결되어 클라이언트(500)와 통신을 수행하거나, 토러스 네트워크(400)의 제1 평면에 위치하여 스위치(600)와 직접 연결되어 클라이언트(500)와 통신을 수행할 수 있다. 이는, 관리 서버(100)와 클라이언트(500) 간의 빠른 접근을 위함이다. 또한, 관리 서버(100)는 토러스 네트워크(400)의 밖에 독립적으로 위치하여 fat-tree 네트워크를 통해 스위치(600)와 연결될 수 있다.
이때, 관리 서버(100)는 데이터 서버들(300)이나 메타데이터 서버(200)에 대한 토폴로지 정보를 관리할 수 있고, 토폴로지 정보를 이용하여 데이터 서버들(300)이나 메타데이터 서버(200)에 대한 다수의 티어를 구성할 수 있다. 여기서, 토폴로지 정보는 토러스 네트워크(400)에서의 각 차원의 축에 대한 위치 정보를 포함할 수 있다. 특히, 데이터 서버들(300)이나 메타데이터 서버(200)의 스위치(600)에 대한 인접도, 또는 데이터 서버들(300)이나 메타데이터 서버(200)의 입출력 성능 중에서 적어도 하나 이상을 고려하여 티어들을 구성할 수 있다.
이때, 관리 서버(100)는 데이터 서버들(300)이나 메타데이터 서버(200)에 대하여 하나 이상의 볼륨을 구성할 수 있다. 여기서, 각 볼륨은 용도나 목적에 따라 티어의 구성이 결정될 수 있다. 예컨대, 아카이빙 목적으로 사용될 볼륨은 아카이브 티어(예컨대, 성능이 가장 나쁜 티어)만을 포함하도록 구성될 수 있다. 또한, VOD 서비스와 같은 목적으로 사용될 볼륨은 사용자가 빈번히 접근하는 데이터는 성능이 가장 좋은 티어에 배치하고, 상대적으로 적게 접근되는 데이터를 두 번째 성능의 티어에 배치하고, 오랫동안 접근되지 않은 데이터는 아카이브 티어에 배치하도록 다수의 티어를 포함하도록 구성할 수 있다.
이때, 관리 서버(100)는 소거코딩에 기반하여 볼륨에 데이터를 분산하여 저장할 수 있다.
이때, 관리 서버(100)는 복수 개의 티어로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행할 수 있다. 마이그레이션을 수행하는 경우에, 마이그레이션 대상 볼륨에 상응하는 마이그레이션 대상 아이노드를 식별하고, 상기 아이노드로부터 마이그레이션 대상 청크를 식별하고, 마이그레이션 목적지 티어에 위치하는 데이터 서버를 결정하여 데이터를 이동시키고 상기 마이그레이션 대상 아이노드를 갱신할 수 있다.
이때, 관리 서버(100)는 티어들 각각에 상응하는 티어별 전력 모드를 결정하고, 이에 따라 데이터 서버들(300) 각각에 상응하는 전력 모드를 관리할 수 있다. 여기서, 티어별 전력 모드는 티어들 각각에 상응하는 성능 또는 접근 빈도 중에서 적어도 하나 이상을 고려하여 결정될 수 있으며, 전력 절감 없이 성능을 우선시하는 제1 모드, 입출력 요청이 없는 경우에 저전력으로 동작하는 제2 모드 및 입출력 요청이 없는 경우에 절전 상태로 유지하는 제3 모드 중에서 적어도 하나 이상을 포함할 수 있다. 예시한 티어별 전력 모드 이외에도 필요에 따라 더욱 세분화된 티어별 전력 모드들을 이용할 수 있다. 특히, 대상 데이터 서버의 전력 모드가 대상 데이터 서버에 상응하는 티어의 전력 모드와 상이하고 대상 데이터 서버의 마지막 작업 시간으로부터 기설정된 시간을 도과한 경우, 대상 데이터 서버의 전력 모드를 대상 데이터 서버에 상응하는 티어의 전력 모드로 변경할 수 있다.
메타데이터 서버(200)는 토러스 네트워크 기반의 분산 파일 시스템(1)에서 관리하는 파일들의 메타데이터를 저장하고 관리한다. 여기서, 메타데이터 서버(200)는 복수 개로 구성될 수 있고, 메타데이터를 분산하여 저장 및 관리할 수 있다.
이때, 메타데이터 서버(200)는 토러스 네트워크(400)의 밖에 독립적으로 위치하여 스위치(600)와 직접 연결되거나, 토러스 네트워크(400) 내의 임의의 평면에 위치할 수 있다. 또한, 메타데이터 서버(200)는 토러스 네트워크(400)의 밖에 독립적으로 위치하여 fat-tree 네트워크를 통해 스위치(600)와 연결될 수 있다.
데이터 서버(300)는 토러스 네트워크 기반의 분산 파일 시스템(1)에서 관리하는 파일들의 실제 데이터를 저장하고 관리한다. 데이터 서버들(300)은 서로 스위치 없이 직접 연결을 통해 토러스 네트워크(400)를 구성한다. 여기서, 데이터 서버(300)는 토러스 네트워크(400)의 내부에서 복수 개로 구성될 수 있고, 데이터를 분산하여 저장 및 관리할 수 있다.
이때, 토러스 네트워크(400)의 제1 평면에 위치한 데이터 서버들(300)은 스위치(600)와 직접 연결될 수 있다.
이때, 데이터 서버들(300)은 토러스 네트워크(400)에 포함된 메타데이터 서버(200)와도 스위치 직접 연결할 수 있다.
이때, 데이터 서버들(300)은 전력 제어 정책에 따라 전력 모드를 관리할 수 있다.
클라이언트(500)는 토러스 네트워크 기반의 분산 파일 시스템(1)에 접근하여 파일 연산을 수행한다. 여기서, 클라이언트(500)는 토러스 네트워크 기반의 분산 파일 시스템(1)에 포함되도록 구성될 수도 있고, 토러스 네트워크 기반의 분산 파일 시스템(1)에 포함되지 않도록 구성될 수도 있다.
이때, 클라이언트(500)는 스위치(600)을 통해서 관리 서버(100), 메타데이터 서버(200) 및 데이터 서버들(300)과 통신할 수 있다.
이때, 클라이언트(500)는 복수개 존재할 수 있으며, fat-tree 네트워크를 통하여 스위치(600)와 연결될 수 있다.
도 3은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)에서 3차원 토러스 네트워크의 구조의 일 예를 나타낸 도면이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)에서 토러스 네트워크(400)는 3차원 구조를 가질 수 있으며, 4x4x4의 크기를 가질 수 있다.
이때, 3차원의 토러스 네트워크(400)는 3개의 축(3a, 3b 및 3c)에 따른 위치 혹은 좌표에 상응하는 토폴로지 정보로 관리될 수 있다. 예컨대, 토폴로지 정보에서 x축(3a)은 열(column) 좌표를 나타내고, y축(3b)은 행(row) 좌표를 나타내며, z축(3c)은 평면(plane) 좌표를 나타낼 수 있다. 여기서, 각 좌표 정보는 네트워크 주소 정보로서 이용될 수 있다.
이때, 동일한 평면 좌표를 갖는 데이터 서버들은 하나의 평면(3d, 3e, 3f 또는 3g)로 구분되어 관리될 수 있다. 특히, 스위치(도 1의 600 참조)와의 인접도 또는 입출력 성능을 기준으로 제1 평면(3d), 제2 평면(3e), 제3 평면(3f) 및 제4 평면(3g)으로 구분할 수 있다. 이 경우, 제1 평면(3d), 제2 평면(3e), 제3 평면(3f) 및 제4 평면(3g)의 순서대로 클라이언트의 입출력 요청을 처리하기 위한 네트워크 지연 시간이 증가할 수 있다. 도 3에는 도시되지 않았으나 도 1 및 2와 같이, 제1 평면(3d)에 위치한 서버들은 스위치(도 1의 600 참조)와 직접 연결될 수 있다.
이때, 데이터 서버들의 평면의 특성을 고려하여 티어를 구성할 수 있다. 예컨대, 제1 평면(3d)을 제1 티어로, 제2 평면(3e)을 제2 티어로, 제3 평면(3f)을 제3 티어로, 그리고 제4 평면(3g)을 제4 티어로 구성할 수 있다. 또는, 제1 평면(3d) 및 제2 평면(3e)을 제1 티어로, 제3 평면(3f)을 제2 티어로, 그리고 제4 평면(3g)을 제3 티어로 구성할 수 있다
도 4는 도 1 및 2에 도시된 관리 서버(100)의 일 예를 나타낸 블록도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 관리 서버(100)는 제어부(110), 통신부(120), 메모리(130), 시스템 정보 저장부(140) 및 시스템 관리부(150) 등을 포함한다.
상세히, 제어부(110)는 일종의 중앙처리장치로서 토러스 네트워크 기반의 분산 파일 시스템(1)을 관리하는 과정을 제어한다. 즉, 제어부(110)는 통신부(120), 메모리(130), 시스템 정보 저장부(140) 및 시스템 관리부(150) 등을 제어하여 다양한 기능을 제공할 수 있다.
여기서, 제어부(110)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
통신부(120)는 관리 서버(100)와 스위치(도 1의 600 참조), 메타데이터 서버(도 1의 200 참조), 데이터 서버들(도 1의 300 참조) 및 클라이언트(도 1의 500 참조) 간의 송수신 신호를 전송하는데 필요한 통신 인터페이스를 제공한다.
여기서, 통신부(120)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(130)는 제어부(110)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(130)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
시스템 정보 저장부(140)는 관리 서버(100)가 관리하는 메타데이터 서버(도 1의 200 참조)와 데이터 서버들(도 1의 300 참조)에 대한 정보를 관리한다.
이때, 시스템 정보 저장부(140)는 서버들에 대한 토폴로지 정보, 데이터 서버 정보, 볼륨 구성 정보, 티어 정보, 아이노드 정보, 전력 관리 정책 등을 저장할 수 있다.
시스템 관리부(150)는 메타데이터 서버(도 1의 200 참조)와 데이터 서버들(도 1의 300 참조)을 관리한다.
이때, 시스템 관리부(150)는 토폴로지 정보를 이용하여 데이터 서버들(도 1의 300 참조)에 대한 스토리지 티어를 구성할 수 있다.
이때, 시스템 관리부(150)는 데이터 서버들(도 1의 300 참조)에 대하여 하나 이상의 볼륨을 구성하고, 각 볼륨에 대한 티어의 구성을 결정할 수 있다. 여기서, 각 볼륨에 대한 티어의 구성은 볼륨의 용도나 목적에 따라 결정할 수 있다. 그리고, 시스템 관리부(150)는 각 볼륨에 소거 코딩에 기반하여 데이터를 분산하여 저장할 수 있다.
이때, 시스템 관리부(150)는 복수 개의 티어로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행할 수 있다.
이때, 시스템 관리부(150)는 데이터 서버들(도 1의 300 참조) 각각에 대하여 전력 관리 정책을 결정하고, 전력 모드를 관리할 수 있다.
도 5는 도 1 및 2에 도시된 메타데이터 서버(200)의 일 예를 나타낸 블록도이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 메타데이터 서버(200)는 제어부(210), 통신부(220), 메모리(230), 메타데이터 저장부(240) 및 메타데이터 관리부(250) 등을 포함한다.
상세히, 제어부(210)는 일종의 중앙처리장치로서 메타데이터를 저장 및 관리하는 과정을 제어한다. 즉, 제어부(210)는 통신부(220), 메모리(230), 메타데이터 저장부(240) 및 메타데이터 관리부(250) 등을 제어하여 다양한 기능을 제공할 수 있다.
여기서, 제어부(210)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
통신부(220)는 메타데이터 서버(200)와 스위치(도 1의 600 참조), 관리 서버(도 1의 100 참조), 데이터 서버들(도 1의 300 참조) 및 클라이언트(도 1의 500 참조) 간의 송수신 신호를 전송하는데 필요한 통신 인터페이스를 제공한다.
여기서, 통신부(220)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(230)는 제어부(210)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(230)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
메타데이터 저장부(240)는 메타데이터 서버(200)가 관리하는 메타데이터를 저장한다.
이때, 메타데이터 저장부(240)는 메타데이터 서버(200)가 분산 파일 시스템(도 1의 1 참조)에서 복수 개로 구성된 경우에는, 다른 메타데이터 서버(200)의 메타데이터 저장부(240)와 메타데이터를 분산하여 저장할 수 있다.
메타데이터 관리부(250)는 메타데이터 저장부(240)에 저장된 메타데이터를 관리한다. 특히, 클라이언트(도 1의 500 참조)의 파일 입출력 요청에 따라 파일에 상응하는 메타데이터에 대한 처리를 수행할 수 있다. 또한, 관리 서버(도 1의 100 참조)의 명령에 따라 메타데이터 저장부(240)에 저장된 데이터에 대한 처리를 수행할 수 있다.
도 6은 도 1 및 2에 도시된 데이터 서버(300)의 일 예를 나타낸 블록도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 데이터 서버(300)는 제어부(310), 통신부(320), 메모리(330), 데이터 저장부(340), 데이터 관리부(350) 및 전력 관리부(360) 등을 포함한다.
상세히, 제어부(310)는 일종의 중앙처리장치로서 데이터를 저장 및 관리하는 과정을 등을 제어한다. 즉, 제어부(310)는 통신부(320), 메모리(330), 데이터 저장부(340), 데이터 관리부(350) 및 전력 관리부(360) 등을 제어하여 다양한 기능을 제공할 수 있다.
여기서, 제어부(310)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
통신부(320)는 데이터 서버(300)와 스위치(도 1의 600 참조), 관리 서버(도 1의 100 참조), 메타데이터 서버(도 1의 200 참조) 및 클라이언트(도 1의 500 참조) 간의 송수신 신호를 전송하는데 필요한 통신 인터페이스를 제공한다.
여기서, 통신부(320)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(330)는 제어부(310)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(330)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
데이터 저장부(340)는 데이터 서버(300)가 관리하는 데이터를 저장한다.
이때, 데이터 저장부(340)는 동일한 볼륨으로 구성된 데이터 서버들(300)의 데이터 저장부(340)와 데이터를 분산하여 저장할 수 있다. 특히, 데이터 저장부(340)는 소거 코딩에 기반하여 데이터를 분산하여 저장할 수 있다.
데이터 관리부(350)는 데이터 저장부(340)에 저장된 데이터를 관리한다. 특히, 클라이언트(도 1의 500 참조)의 파일 입출력 요청에 따라 파일에 상응하는 데이터에 대한 처리를 수행할 수 있다. 또한, 관리 서버(도 1의 100 참조)의 명령에 따라 데이터 저장부(340)에 저장된 데이터에 대한 처리를 수행할 수 있다.
도 7은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 티어 정보 테이블의 일 예를 나타낸 도면이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 티어 정보 테이블은 토러스 네트워크 기반의 분산 파일 시스템(1)에 구성된 하나 이상의 티어들에 대한 구성 정보를 포함한다. 여기서, 티어들은 데이터 서버들에 대한 토폴로지 정보에 기반하여 구성될 수 있다.
도 7에서 도시된 티어 정보 테이블은 N 개의 티어들(7a) 및 각 티어에 상응하는 티어 구성 정보를 포함한다. 티어 구성 정보에는 각각 nPlanes(7b), Plane Number List(7c) 및 Power Mode(7d) 등이 포함되며, 필요에 따라 이외의 추가 정보를 포함하여 구성될 수도 있다. 여기서, nPlanes(7b)는 각 티어를 구성하는 평면의 개수를 나타내며, Plane Number List(7c)는 각 티어를 구성하는 평면의 번호의 리스트를 나타낸다. 그리고, Power Mode(7d)는 각 티어의 특성에 따라 적용하고자 하는 티어별 전력 모드를 나타낸다.
이때, 전력 모드는 성능 우선 모드, 동작 적응 모드, 절전 모드 등을 포함할 수 있다. 여기서, 성능 우선 모드는 성능을 우선시하는 티어에 적용하여 저장 장치들이 전력 소모량에 상관없이 항상 입출력 처리를 최상으로 처리할 수 있도록 대기하는 모드를 의미할 수 있다. 그리고, 동작 정응 모드는 입출력 요청이 없을 경우에 CPU의 동작 주파수를 낮추어서 저전력 모드로 동작하도록 하거나, 저장 장치를 저전력 모드로 동작하도록 설정하는 등의 일부 전력 소모를 줄인 동작 모드를 의미할 수 있다. 그리고, 절전 모드는 저장 장치가 깨어나기 위한 최소의 전력만을 공급하거나, 데이터 서버의 전원을 완전히 차단하는 모드를 의미할 수 있다. 이 경우, 데이터 서버는 IPMI(Intelligent Platform Management Interface) 등의 기능에 의해 필요시 절전 모드에서 깨어날 수 있어야 한다. 특히, 전력 모드는 이외에도 필요에 따라 보다 많은 단계의 모드로 구성할 수 있다.
도 8은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 토러스 네트워크의 토폴로지 정보 및 데이터 서버 정보의 일 예를 나타낸 도면이다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 토러스 네트워크의 토폴로지 정보(81)는 토러스 네트워크(도 1의 400 참조)의 평면의 개수를 나타내는 nPlanes(81a), 행의 개수를 나타내는 nRows(81b), 열의 개수를 나타내는 nColumns(81c) 및 데이터 서버들(도 1의 300 참조)에 대한 위치를 가르키는 테이블 정보인 Server Info(81d) 등을 포함한다.
이때, Server Info(405)는 토러스 네트워크 상에서 평면 좌표를 나타내는 Plane(81e), 행 좌표를 나타내는 Row(81f) 및 열 좌표를 나타내는 Column(81g) 등을 이용하여 토러스 네트워크(도 1의 400 참조)에 존재하는 데이터 서버들(도 1의 300 참조)를 가르킬 수 있다.
본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 토러스 네트워크의 데이터 서버 정보(82)는 각 데이터 서버(도 1의 300 참조)의 식별자를 나타내는 DSID(Data Server ID; 82a) 및 각 DSID(82a)에 상응하는 데이터 서버의 정보를 나타내는 레코드 등을 포함한다.
이때, 각 DSID(82a)에 상응하는 데이터 서버의 정보를 나타내는 레코드는 대상 데이터 서버의 토러스 네트워크 상에서의 토폴로지 정보(82b, 82c 및 82d) 및 대상 데이터 서버에 대한 정보를 담은 대한 DSinfo(82f) 등을 포함할 수 있다. 여기서, 토폴로지 정보는 평면 좌표 정보(82b), 행 좌표 정보(82c) 및 열 좌표 정보(82d) 등이 포함할 수 있고, DSinfo(82f)는 대상 데이터 서버의 네트워크 주소, 장착된 디스크 타입, 개수 및 크기와 같은 디스크 정보를 포함하는 하드웨어 자원 정보 등을 포함할 수 있다.
도 9는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 볼륨 구성 정보의 일 예를 나타낸 도면이다.
도 9를 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 볼륨 구성 정보는 각 볼륨의 식별자나 볼륨명을 볼륨 식별 키(9a)로 구성한다. 여기서, 볼륨은 하나 이상의 데이터 서버들(도 1의 300 참조)로 구성되며, 사용 목적에 따라 단일 티어 또는 다수의 티어를 포함하도록 구성될 수 있다. 예컨대, 아카이빙 목적으로 사용될 볼륨은 아카이브 티어만을 포함하도록 구성될 수 있다. 또한, VOD 서비스를 제공하는 목적으로 사용될 볼륨은 다수의 티어를 포함하도록 구성하여, 성능이 가장 높은 티어에는 사용자가 빈번히 접근하는 데이터를 배치하고, 상대적으로 적게 접근되는 데이터는 그 다음 티어에 배치하고, 오랫동안 접근되지 않는 오래된 데이터들은 아카이브 티어에 저장할 수 있다.
이때, 볼륨 구성 정보는 각 볼륨 식별 키(9a)에 상응하는 볼륨에 대한 구체적인 정보로서, 볼륨 정보(Volume Info; 9b)와 볼륨을 구성하는 티어 구성 정보(9c, 9d, 9e 및 9e)를 포함할 수 있다.
이때, 볼륨 정보(9b)는 볼륨명, 전체 볼륨 크기, 저장된 파일 수, 사용량, 남은 공간 등의 정보를 포함할 수 있다.
이때, 티어 구성 정보는 티어 번호(Tier Number; 9c), 티어 정보(Tier Info; 9d), 가용성 정책 정보(EC info; 9e) 및 데이터 서버 ID 리스트(DS ID List; 9f) 등으로 구성될 수 있다. 여기서, 티어 정보(9d)는 해당 티어에서 해당 볼륨에 할당된 용량, 사용량, 남은 용량등의 정보를 포함할 수 있다. 가용성 정책 정보(9e)는 각 티어의 특성에 따라 설정된 가용성 정책을 나타낸다. 예컨대, 가용성 정책이 “1+2”인 경우는 원본 데이터 하나당 2개의 복제본을 유지함을 나타내며, 가용성 정책이 “8+2”인 경우는 원본 데이터 8개당 패리티 데이터 2개로 구성하는 소거 코딩 정책을 이용함을 나타낼 수 있다. 데이터 서버 ID 리스트(9f)는 해당 티어에서 해당 볼륨에 할당되어 사용되는 데이터 서버들의 ID 리스트를 나타낼 수 있다.
이와 같이 볼륨 구성 정보에 볼륨을 구성하는 티어 구조 정보와 티어에 할당된 데이터 서버 ID 목록이 포함됨에 따라, 토러스 네트워크 기반의 분산 파일 시스템에서 간이하게 분산 파일 시스템의 구조를 파악하여 파일 입출력의 연산을 효과적으로 수행할 수 있다.
도 10은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 아이노드 테이블의 일 예를 나타낸 도면이다.
도 10을 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템(1)의 아이노드 테이블은 아이노드 목록(10a)을 포함하며, 각 아이노드에 대하여 아이노드 정보(Inode Info; 10b)와 청크 정보 리스트(Chunk Info List; 10c) 등의 정보로 구성되어 있다. 여기서, 아이노드는 파일을 구분하기 위한 정보를 의미할 수 있다.
이때, 아이노드 정보(10b)는 시스템에서 요구하는 아이노드 정보를 포함하고, 청크 정보 리스트(10c)는 파일의 데이터를 고정된 크기로 분할하여 저장하는 단위인 청크에 대한 정보를 포함할 수 있다.
이때, 청크에 대한 정보는 볼륨의 각 티어에 설정된 가용성 정책에 따라 다수의 원본 데이터와 다수의 복제본 데이터 또는 패리티 데이터에 대한 정보로 구성될 수 있다. 또한, 각 데이터 블록을 저장하고 있는 데이터 서버들을 식별하기 위한 정보를 포함할 수 있다.
이를 통해 사용자가 요구하는 데이터를 저장하고 있는 청크를 식별하고, 해당 청크를 저장하고 있는 데이터 서버와 해당 데이터 서버에 장착된 저장 장치를 식별할 수 있다.
도 11은 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 데이터 마이그레이션을 수행하는 방법의 일 예를 나타낸 동작 흐름도이다.
도 11을 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 데이터 마이그레이션을 수행하는 방법은, 마이그레이션 수행시 전달된 인자들 중, 마이그레이션 대상 볼륨을 식별하기 위한 볼륨 ID를 획득한다(S1101).
또한, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 데이터 마이그레이션을 수행하는 방법은, 그리고 아이노드 테이블을 스캔하여 해당 볼륨에 속한 아이노드들을 식별한다(S1103).
또한, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 데이터 마이그레이션을 수행하는 방법은, 식별한 아이노드들 중에서 하나씩 마이그레이션 조건을 충족한 아이노드가 존재하는지 판단한다(S1105).
이때, 마이그레이션 조건은 파일의 생성 시간 정보, 마지막으로 파일을 접근한 시간 정보, 파일의 크기, 타입 등에 상응하는 것일 수 있다.
단계(S1105)의 판단 결과 마이그레이션 조건을 충족한 아이노드가 존재하지 않는 경우, 마이그레이션 절차를 종료한다. 만약, 단계(S1103)에서 아이노드 테이블을 스캔하였으나 아이노드가 없는 경우에는 마이그레이션 조건을 충족한 아이노드가 존재하지 않는 것으로 판단할 수 있다.
단계(S1105)의 판단 결과 마이그레이션 조건을 충족한 아이노드가 존재하는 경우, 해당 아이노드에 데이터를 실제로 저장하고 있는 청크에 대한 정보가 존재하는지 판단한다(S1107).
단계(S1107)의 판단 결과 해당 아이노드에 청크 정보가 존재하지 않는 경우, 단계(S1105)로 돌아가 단계(S1103)에서 스캔된 아이노드 중에서 아직 마이그레이션 조건 충족 여부를 판단하지 않는 아이노드에 대하여 마이그레이션 조건 충족 여부를 판단한다.
단계(S1107)의 판단 결과 해당 아이노드에 청크 정보가 존재하는 경우에는, 해당 아이노드에서 청크 정보를 획득하여 해당 청크가 마이그레이션 대상인지 판단한다(S1109). 여기서, 마이그레이션 대상인지의 판단은 해당 청크를 저장하고 있는 데이터 서버가 마이그레이션을 수행할 소스 티어에 존재하는지 여부로 판단할 수 있다.
단계(S1109)의 판단 결과 해당 청크가 마이그레이션 대상이 아닌 경우, 단계(S1107)로 돌아가 아이노드에서 아직 식별하지 않은 청크에 대한 정보가 존재하는지 판단한다.
단계(S1109)의 판단 결과 해당 청크가 마이그레이션 대상인 경우, 해당 청크를 이동할 목적지 티어에 존재하는 데이터 서버를 결정하여 청크를 이동시킨다(S1111). 이때, 해당 볼륨에는 이동할 목적지 티어가 구성이 되어 있어야하며, 해당 티어에서 해당 볼륨에 속한 데이터 서버만을 이동 대상으로 할 수 있다. 그리고, 목적지 데이터 서버가 결정되면 소스 데이터 서버에 이동할 청크 정보와 목적지 데이터 서버 정보를 전달하여 청크 이동을 수행할 수 있다.
또한, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 데이터 마이그레이션을 수행하는 방법은, 청크의 이동이 완료되면 아이노드 정보에서 마이그레이션을 수행한 청크에 대하여 실제로 저장하고 있는 데이터 서버의 정보를 반영하여 청크 정보를 갱신한다(S1113). 그리고, 단계(S1107)로 돌아가 아직 마이그레이션이 처리되지 않은 혹은 아이노드에서 아직 식별하지 않은 청크에 대한 정보가 존재하는지 판단하며, 모든 아이노드와 청크에 대하여 작업이 완료되면 마이그레이션 절차를 종료할 수 있다.
도 12는 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 전력 관리 정책에 따라 운영하는 방법의 일 예를 나타낸 동작 흐름도이다.
토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)는 전력 관리 정책에 따라 주기적으로 혹은 요청시 데이터 서버들(도 1의 300 참조)의 전력 모드를 확인하고 티어별 전력 모드에 따라 관리할 수 있다.
도 12를 참조하면, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 전력 관리 정책에 따라 운영하는 방법은, 데이터 서버의 정보를 스캔한다(S1201).
또한, 본 발명의 일 실시예에 따른 토러스 네트워크 기반의 분산 파일 시스템 관리 서버(100)에서 전력 관리 정책에 따라 운영하는 방법은, 스캔한 데이터 서버들 중에서 이번 전력 관리 절차에 전력 관리가 되지 않은 데이터 서버가 존재하는지 판단한다(S1203). 즉, 주기적으로 또는 요청시마다 수행될 전력 관리 절차마다 식별된 데이터 서버들이 모두 전력 관리가 되었는지 판단한다.
단계(S1203)의 판단 결과 해당 전력 관리 절차에 전력 관리가 안된 데이터 서버가 존재하지 않는 경우, 모든 데이터 서버에 대하여 전력 관리가 이루어졌으므로 해당 전력 관리 절차를 종료하고 정해진 시간만큼 대기한다(S1205). 즉, 일정 시간만큼 대기한 이후에 다음 전력 관리 절차를 진행할 수 있다.
단계(S1203)의 판단 결과 해당 전력 관리 절차에 전력 관리가 안된 데이터 서버가 존재하는 경우, 전력 관리 대상 데이터 서버에 상응하는 데이터 서버 정보를 분석하고, 대상 데이터 서버의 현재 전력 모드가 대상 데이터 서버가 속한 티어의 전력 모드와 같은 검사한다(S1207).
단계(S1207)의 판단 결과 대상 데이터 서버의 전력 모드가 상응하는 티어의 전력 모드와 같은 경우, 대상 데이터 서버에 대한 전력 관리를 종료하고, 단계(S1203)으로 돌아가 아직 전력 관리가 안된 다른 데이터 서버가 존재하는지 판단한다.
단계(S1207)의 판단 결과 대상 데이터 서버의 전력 모드가 상응하는 티어의 전력 모드와 같지 않은 경우, 대상 데이터 서버의 마지막 사용 시간으로부터 기설정된 시간이 도과하였는지 판단한다(S1209). 즉, 대상 데이터 서버에서 데이터 접근을 위한 입출력이 마지막으로 수행된 시간과 현재 시간의 차이를 이용하여 전력 모드를 변경하기 위한 기준 설정 시간을 지났는지 검사할 수 있다.
단계(S1209)의 판단 결과 대상 데이터 서버의 마지막 사용 시간으로부터 기설정된 시간이 도과하지 않은 경우, 단계(S1203)으로 돌아가 아직 전력 관리가 안된 다른 데이터 서버가 존재하는지 판단한다.
단계(S1209)의 판단 결과 대상 데이터 서버의 마지막 사용 시간으로부터 기설정된 시간이 도과한 경우, 대상 데이터 서버의 전력 모드를 상응하는 티어의 전력 모드로 변경하고(S1211), 단계(S1203)으로 돌아가 아직 전력 관리가 안된 다른 데이터 서버가 존재하는지 판단한다.
이와 같이 티어별 전력 모드를 설정하고, 주기적으로 혹은 요청에 따라 데이터 서버들의 전력 모드를 확인하여 기설정된 티어별 전력 모드에 맞추어 관리함으로써, 스토리지 티어를 전력 효율적으로 운영할 수 있다.
본 발명에서 설명하는 특정 실행들은 실시예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
1: 토러스 네트워크 기반의 분산 파일 시스템
100: 관리 서버 110: 제어부
120: 통신부 130: 메모리
140: 시스템 정보 저장부 150: 시스템 관리부
200: 메타데이터 서버 210: 제어부
220: 통신부 230: 메모리
240: 메타데이터 저장부 250: 메타데이터 관리부
300: 데이터 서버 310: 제어부
320: 통신부 330: 메모리
340: 데이터 저장부 350: 데이터 관리부
360: 전력 관리부
400: 토러스 네트워크 500: 클라이언트
600: 스위치

Claims (20)

  1. 토러스 네트워크 기반의 분산 파일 시스템에 대한 시스템 정보를 저장하는 시스템 정보 저장부;
    파일의 메타데이터를 저장하는 하나 이상의 메타데이터 서버와 상기 토러스 네트워크에 포함되어 데이터를 분산 저장하는 복수의 데이터 서버들을 관리하는 시스템 관리부; 및
    상기 토러스 네트워크 내의 제1 평면으로부터 또는 상기 토러스 네트워크 밖으로부터 클라이언트와 연결된 스위치와 통신하고, 상기 메타데이터 서버 및 상기 데이터 서버들과 통신하는 통신부
    를 포함하는 것을 특징으로 하는, 관리 서버.
  2. 청구항 1에 있어서,
    상기 시스템 관리부는
    상기 데이터 서버들에 대한 토폴로지 정보를 관리하고, 상기 토폴로지 정보를 이용하여 상기 데이터 서버들에 대한 복수의 티어들을 구성하고,
    상기 토폴로지 정보는
    상기 토러스 네트워크에서의 각 차원의 축에 대한 위치 정보를 포함하는 것을 특징으로 하는, 관리 서버.
  3. 청구항 2에 있어서,
    상기 시스템 관리부는
    상기 데이터 서버들의 상기 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 티어들을 구성하는 것을 특징으로 하는, 관리 서버.
  4. 청구항 3에 있어서,
    상기 시스템 관리부는
    상기 데이터 서버들에 대하여 하나 이상의 볼륨을 구성하고,
    상기 볼륨은
    용도에 따라 티어의 구성이 결정되고, 소거 코딩에 기반하여 데이터를 분산 저장하는 것을 특징으로 하는, 관리 서버.
  5. 청구항 4에 있어서,
    상기 시스템 관리부는
    복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행하는 것을 특징으로 하는, 관리 서버.
  6. 청구항 5에 있어서,
    상기 시스템 관리부는
    마이그레이션을 수행하는 경우에, 마이그레이션 대상 볼륨에 상응하는 마이그레이션 대상 아이노드를 식별하고, 상기 아이노드로부터 마이그레이션 대상 청크를 식별하고, 마이그레이션 목적지 티어에 위치하는 데이터 서버를 결정하여 데이터를 이동시키고 상기 마이그레이션 대상 아이노드를 갱신하는 것을 특징으로 하는, 관리 서버.
  7. 청구항 4에 있어서,
    상기 시스템 관리부는
    상기 티어들 각각에 상응하는 티어별 전력 모드를 결정하고, 기설정된 주기마다 상기 티어별 전력 모드에 기반하여 상기 데이터 서버들 각각에 상응하는 전력 모드를 관리하는 것을 특징으로 하는, 관리 서버.
  8. 청구항 7에 있어서,
    상기 티어별 전력 모드는
    상기 티어들 각각에 상응하는 성능 또는 접근 빈도 중에서 적어도 하나 이상을 고려하여 결정되는 것을 특징으로 하는, 관리 서버.
  9. 청구항 8에 있어서,
    상기 시스템 관리부는
    대상 데이터 서버의 전력 모드가 상기 대상 데이터 서버에 상응하는 티어의 전력 모드와 상이하고 상기 대상 데이터 서버의 마지막 작업 시간으로부터 기설정된 시간을 도과한 경우, 상기 대상 데이터 서버의 전력 모드를 상기 대상 데이터 서버에 상응하는 티어의 전력 모드로 변경하는 것을 특징으로 하는, 관리 서버.
  10. 토러스 네트워크 기반의 분산 파일 시스템에서 관리하는 데이터를 저장하는 데이터 저장부;
    관리 서버의 데이터 처리 명령에 따라 저장된 데이터를 관리하는 데이터 관리부; 및
    상기 토러스 네트워크 내의 임의의 평면으로부터 직접 또는 다른 데이터 서버들을 통하여 클라이언트와 연결된 스위치와 통신하고, 상기 다른 데이터 서버들 및 상기 관리 서버와 통신하는 통신부
    를 포함하는 것을 특징으로 하는, 데이터 서버.
  11. 청구항 10에 있어서,
    상기 데이터 관리부는
    상기 관리 서버에서 구성한 복수의 티어들, 볼륨 및 상기 볼륨에 상응하는 티어 구성에 따라 데이터를 관리하고,
    상기 복수의 티어들은
    상기 토러스 네트워크에서의 각 차원의 축에 대한 위치 정보를 포함하는 토폴로지 정보를 이용하여 구성되고,
    상기 볼륨에 상응하는 티어 구성은
    상기 볼륨의 용도에 따라 결정되는 것을 특징으로 하는, 데이터 서버.
  12. 청구항 11에 있어서,
    상기 티어들은
    상기 스위치에 대한 인접도 또는 입출력 성능 중에서 적어도 하나 이상을 고려하여 구성되는 것을 특징으로 하는, 데이터 서버.
  13. 청구항 12에 있어서,
    상기 데이터 관리부는
    복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 수행하는 것을 특징으로 하는, 데이터 서버.
  14. 청구항 12에 있어서,
    티어별 전력 모드에 기반하여 전력 모드를 관리하는 전력 관리부
    를 더 포함하고,
    상기 티어별 전력 관리 모드는
    상기 관리 서버에 의하여 결정된 상기 티어들 각각에 상응하는 전력 모드인 것을 특징으로 하는, 데이터 서버.
  15. 청구항 14에 있어서,
    상기 전력 관리부는
    전력 모드가 상응하는 티어의 전력 모드와 상이하고 마지막 작업 시간으로부터 기설정된 시간을 도과한 경우, 전력 모드를 상응하는 티어의 전력 모드로 변경하는 것을 특징으로 하는, 데이터 서버.
  16. 토러스 네트워크 기반의 분산 파일 시스템에서 파일의 메타데이터를 저장하는 하나 이상의 메타데이터 서버와 상기 토러스 네트워크에 포함되어 데이터를 분산 저장하는 복수의 데이터 서버들을 관리하는 관리 서버가, 상기 데이터 서버들에 대한 토폴로지 정보를 관리하는 단계; 및
    상기 관리 서버가, 상기 토폴로지 정보를 이용하여, 상기 데이터 서버들의 클라이언트와 연결된 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 데이터 서버들에 대한 복수의 티어들을 구성하는 단계
    를 포함하는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법.
  17. 청구항 16에 있어서,
    상기 복수의 티어들을 구성하는 단계는
    상기 데이터 서버들의 클라이언트와 연결된 스위치에 대한 인접도 또는 상기 데이터 서버들의 입출력 성능 중에서 적어도 하나 이상을 고려하여 상기 티어들을 구성하는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법.
  18. 청구항 17에 있어서,
    상기 관리 서버가, 상기 데이터 서버들에 대하여 하나 이상의 볼륨을 구성하는 단계
    를 더 포함하고,
    상기 볼륨은
    용도에 따라 티어의 구성이 결정되는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법.
  19. 청구항 18에 있어서,
    상기 관리 서버가, 복수 개의 티어들로 구성된 볼륨 내에서 티어 간의 데이터 이동을 위한 마이그레이션을 요청을 수신하는 단계; 및
    상기 관리 서버가, 상기 마이그레이션 요청을 처리하는 단계
    를 더 포함하는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법.
  20. 청구항 18에 있어서,
    상기 관리 서버가, 상기 티어들 각각에 상응하는 티어별 전력 모드를 결정하는 단계; 및
    상기 관리 서버가, 기설정된 주기마다 상기 티어별 전력 모드에 기반하여 상기 데이터 서버들 각각에 상응하는 전력 모드를 관리하는 단계
    를 더 포함하는 것을 특징으로 하는, 토러스 네트워크 기반의 분산 파일 시스템의 스토리지 티어 구성 방법.
KR1020170156483A 2017-11-22 2017-11-22 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법 KR102178740B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170156483A KR102178740B1 (ko) 2017-11-22 2017-11-22 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법
US16/176,809 US20190155922A1 (en) 2017-11-22 2018-10-31 Server for torus network-based distributed file system and method using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170156483A KR102178740B1 (ko) 2017-11-22 2017-11-22 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법

Publications (2)

Publication Number Publication Date
KR20190058992A true KR20190058992A (ko) 2019-05-30
KR102178740B1 KR102178740B1 (ko) 2020-11-13

Family

ID=66534516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170156483A KR102178740B1 (ko) 2017-11-22 2017-11-22 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법

Country Status (2)

Country Link
US (1) US20190155922A1 (ko)
KR (1) KR102178740B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022098444A1 (en) * 2020-11-09 2022-05-12 Intel Corporation End-to-end data plane offloading for distributed storage using protocol hardware and pisa devices

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10698630B2 (en) * 2018-06-13 2020-06-30 EMC IP Holding Company LLC Intra-cluster migration for elastic cloud storage devices
US11023129B2 (en) 2018-12-03 2021-06-01 EMC IP Holding Company LLC Hybrid intra-cluster migration of data between storage devices using chunk usage efficiency
US11381494B2 (en) 2019-05-07 2022-07-05 Electronics And Telecommunications Research Institute Method and system for providing communication analysis of user equipment based on network data analysis
US11038776B2 (en) 2019-05-07 2021-06-15 Electronics And Telecommunications Research Institute Method and system for providing service experience analysis based on network data analysis
US11582116B2 (en) 2020-01-07 2023-02-14 Electronics And Telecommunications Research Institute Method and apparatus for collecting network data
GB2614083A (en) * 2021-12-21 2023-06-28 Bilbo Lyford Ltd System for assuring cyber security across supply chains

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160301754A1 (en) * 2015-04-09 2016-10-13 Electronics And Telecommunications Research Institute Distributed file system using torus network and method for configuring and operating distributed file system using torus network
KR20160121380A (ko) 2015-04-09 2016-10-19 한국전자통신연구원 토러스 네트워크를 이용하는 분산 파일 시스템 및 토러스 네트워크를 이용하는 분산 파일 시스템의 구성 및 운영 방법
KR20170079137A (ko) * 2015-12-30 2017-07-10 한국전자통신연구원 분산 파일 시스템 및 이의 운영방법
KR20170079141A (ko) * 2015-12-30 2017-07-10 한국전자통신연구원 분산 파일 시스템 및 이의 파일 연산 처리 방법
KR20170089256A (ko) * 2016-01-26 2017-08-03 한국전자통신연구원 분산 파일 시스템 및 이의 데이터 내결함성 지원 방법
KR20170089257A (ko) * 2016-01-26 2017-08-03 한국전자통신연구원 분산 파일 시스템 및 이의 데이터 관리 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583990A (en) * 1993-12-10 1996-12-10 Cray Research, Inc. System for allocating messages between virtual channels to avoid deadlock and to optimize the amount of message traffic on each type of virtual channel
US7941681B2 (en) * 2007-08-17 2011-05-10 International Business Machines Corporation Proactive power management in a parallel computer
US8499222B2 (en) * 2010-12-14 2013-07-30 Microsoft Corporation Supporting distributed key-based processes
US9703500B2 (en) * 2012-04-25 2017-07-11 International Business Machines Corporation Reducing power consumption by migration of data within a tiered storage system
KR20140124674A (ko) * 2013-04-17 2014-10-27 한국전자통신연구원 파일 수준의 데이터 분산 저장 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160301754A1 (en) * 2015-04-09 2016-10-13 Electronics And Telecommunications Research Institute Distributed file system using torus network and method for configuring and operating distributed file system using torus network
KR20160121380A (ko) 2015-04-09 2016-10-19 한국전자통신연구원 토러스 네트워크를 이용하는 분산 파일 시스템 및 토러스 네트워크를 이용하는 분산 파일 시스템의 구성 및 운영 방법
KR20170079137A (ko) * 2015-12-30 2017-07-10 한국전자통신연구원 분산 파일 시스템 및 이의 운영방법
KR20170079141A (ko) * 2015-12-30 2017-07-10 한국전자통신연구원 분산 파일 시스템 및 이의 파일 연산 처리 방법
KR20170089256A (ko) * 2016-01-26 2017-08-03 한국전자통신연구원 분산 파일 시스템 및 이의 데이터 내결함성 지원 방법
KR20170089257A (ko) * 2016-01-26 2017-08-03 한국전자통신연구원 분산 파일 시스템 및 이의 데이터 관리 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김재열, "토러스 네트워크 기반 분산 파일시스템의 입출력 성능 향상을 위한 지연시간 감소화 기법", 경북대학교 공학박사학위논문, 2016.12 1부.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022098444A1 (en) * 2020-11-09 2022-05-12 Intel Corporation End-to-end data plane offloading for distributed storage using protocol hardware and pisa devices

Also Published As

Publication number Publication date
KR102178740B1 (ko) 2020-11-13
US20190155922A1 (en) 2019-05-23

Similar Documents

Publication Publication Date Title
KR102178740B1 (ko) 토러스 네트워크 기반의 분산 파일 시스템을 위한 서버 및 이를 이용한 방법
US9519435B2 (en) Synchronous extent migration protocol for paired storage
US9430321B2 (en) Reconstructing data stored across archival data storage devices
US9436571B2 (en) Estimating data storage device lifespan
US20170013046A1 (en) Data-centric data storage
US9424156B2 (en) Identifying a potential failure event for a data storage device
US11070979B2 (en) Constructing a scalable storage device, and scaled storage device
US9557938B2 (en) Data retrieval based on storage device activation schedules
CN104050248A (zh) 一种文件存储系统及存储方法
US11204941B2 (en) Distributed database system, distributed database management method, and distributed database management program
US9436524B2 (en) Managing archival storage
US9659019B1 (en) Burst buffer appliance with storage tiering control functionality based on user specification
US9891992B2 (en) Information processing apparatus, information processing method, storage system and non-transitory computer readable storage media
US20100057989A1 (en) Method of moving data in logical volume, storage system, and administrative computer
US9430149B2 (en) Pipeline planning for low latency storage system
EP2940587A1 (en) Computer, control device for computer system, and recording medium
US9430152B2 (en) Data device grouping across data storage device enclosures for synchronized data maintenance
US9766677B2 (en) Cascading startup power draws of enclosures across a network
US8447729B1 (en) Techniques for performing indication management
CN106155573B (zh) 用于存储设备扩展的方法、装置以及扩展的存储设备
KR20140060959A (ko) iSCSI 스토리지 시스템을 이용한 네트워크 분산 파일 시스템의 부하 분산 방법 및 시스템
JP2015519623A (ja) データベースシステム、及びデータベース管理方法
JP6683160B2 (ja) ストレージシステム、および通信方法
KR20140060962A (ko) 네트워크 분산 파일 시스템에서 유휴 리소스를 이용한 다중 서비스 제공 시스템 및 방법
CN114090551A (zh) 一种存储数据的方法、装置及系统

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