KR101816630B1 - 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템 - Google Patents

저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템 Download PDF

Info

Publication number
KR101816630B1
KR101816630B1 KR1020140007179A KR20140007179A KR101816630B1 KR 101816630 B1 KR101816630 B1 KR 101816630B1 KR 1020140007179 A KR1020140007179 A KR 1020140007179A KR 20140007179 A KR20140007179 A KR 20140007179A KR 101816630 B1 KR101816630 B1 KR 101816630B1
Authority
KR
South Korea
Prior art keywords
storage devices
client
storage device
output
file
Prior art date
Application number
KR1020140007179A
Other languages
English (en)
Other versions
KR20150086937A (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 KR1020140007179A priority Critical patent/KR101816630B1/ko
Publication of KR20150086937A publication Critical patent/KR20150086937A/ko
Application granted granted Critical
Publication of KR101816630B1 publication Critical patent/KR101816630B1/ko

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따른 하이브리드 분산 스토리지 시스템은 복수의 저장장치로의 파일 입출력을 관리하는 데이터 서버, 파일의 메타 데이터를 관리하는 메타데이터 서버, 및 상기 파일 입출력을 요청하고 상기 복수의 저장장치 중 상기 파일 입출력을 담당할 저장장치를 선정하는 기능을 내장하는 클라이언트를 포함한다.

Description

저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템{HYBRID DISTRIBUTED STORAGE SYSTEM WITH STORAGE DEVICE SELECTION FUNCTION}
본 발명은 클라이언트에서 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템에 관한 것이다.
데이터 저장을 위한, 고속 저장 장치는 성능이 좋은 대신 용량이 작고 가격이 비싼 반면에, 저속 저장 장치는 성능 대비 용량과 가격에 장점이 있어, 이들 저장 장치를 적절히 조합하여 분산 스토리지 형태로 구성한 하이브리드 분산 스토리지 시스템이 활용되고 있다
이러한 하이브리드 분산 스토리지 시스템에서는 고속 저장 장치와 저속 저장 장치를 그 특성에 알맞도록 활용해야 최대의 효율을 얻을 수 있는데, 통상 고속 저장 장치의 성능 특성을 활용하기 위해 캐시 형태로 사용하는 것이 일반적이다. 하지만, 캐시는 특정 워크로드에서는 원하는 속도를 보이는 반면, 단순 데이터 입력과 같은 워크로드의 경우에는 그 성능이 낮아지게 된다.
이러한 워크로드와 같은 사항들에 대응하기 위해서는, 클라이언트 측에서의 워크로드 정보가 분산 스토리지 시스템에도 공유되어야 하지만, 분산 스토리지 형태의 특성상 관련 정보를 얻기가 쉽지 않다.
KR 101179472 A
본 발명의 목적은 하이브리드 분산 스토리지 시스템 환경에서 클라이언트가 효율적으로 파일 접근을 수행할 수 있도록 하는 방법을 제공하는 데 있다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재들로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 하이브리드 분산 스토리지 시스템은 복수의 저장장치로의 파일 입출력을 관리하는 데이터 서버, 파일의 메타 데이터를 관리하는 메타데이터 서버, 및 상기 파일 입출력을 요청하고 상기 복수의 저장장치 중 상기 파일 입출력을 담당할 저장장치를 선정하는 기능을 내장하는 클라이언트를 포함한다.
상기 복수의 저장 장치는 동종 또는 이종의 고속 저장장치 또는 저속 저장장치로 구성될 수 있다.
상기 클라이언트는 상기 메타데이터 서버를 통해 상기 입출력 대상 파일의 저장 상태 정보나 상기 복수의 저장장치의 타입 정보 등을 전달받아, 상기 저장장치 선정에 활용할 수 있다.
상기 클라이언트는 상기 메타데이터 서버를 통해 상기 복수의 저장 장치에 대한 정보를 전달받아 저장할 수 있다.
상기 클라이언트는 상기 복수의 저장장치를 선정하는 기준을 저장할 수 잇다.
상기 클라이언트는 상기 복수의 저장장치 별로 수행 시간 정보를 관리할 수 있다.
본 발명의 일 실시예에 따른 시스템 및 방법은 고속 저장 장치와 저속 저장 장치로 구성된 하이브리드 분산 스토리지 시스템에서, 클라이언트가 효율적으로 파일접근을 수행할 수 있도록 한다.
도 1은 본 발명의 일 실시예에 따른 시스템을 보여주는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 클라이언트의 내부 모듈을 구체적으로 보여주는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 클라이언트를 통한 저장장치 선택 방법을 보여주는 흐름도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 실시예의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다.
도 1은 본 발명의 일 실시예에 따른 하이브리드 분산 스토리지 시스템을 보여주는 블록도이다
도 1을 참조하면, 본 발명에 따른 시스템은 크게 클라이언트(100), 메타 데이터 서버(200), 데이터 서버(300_1~n), 고속저장장치(400_1~n), 저속저장장치(500_1~n)를 포함한다. 본 발명은 이러한 구성에 한정되는 것은 아니고, 본 발명의 사상에 따른 하이브리드 분산 스토리지 시스템으로 볼 수 있는 시스템이라면, 일부 구성을 배제하거나 일부 구성들이 더 추가되더라도 무방하다.
본 발명의 일 실시예에 따른 하비브리드 분산 스토리지 시스템은 다수의 저장장치가 네트워크를 통해 여러 곳에 분산 배치되어 있고, 클라이언트는 메타데이터 서버와 데이터 서버를 통해 파일을 입/출력할 수 있는 기본 구조를 지니고 있다.
우선, 클라이언트(100)는 파일 입/출력을 요청하고, 후술하겠지만 메타 데이터 서버(200)로 파일의 메타데이터에 관한 요청을 수행하고, 데이터 서버를 통해 파일 입/출력을 수행하고, 그 결과를 표시하는 기본적인 역할을 수행한다. 여기에 추가하여, 본 발명의 일 실시예에 따른 클라이언트(100)에는 저장하고자 하는 저장장치를 선정할 수 있는 추가 기능이 부가되며, 이에 대해서는 후술하기로 한다.
메타 데이터 서버(200)는 전체 시스템 내의 메타 데이터를 관리하고, 시스템 내의 복수의 데이터 서버(300_1~300_n)를 관리하는 기능을 수행한다. 그리고, 각각의 데이터 서버에 장착된 복수의 저장장치(400_1~400_n, 500_1~500_n)의 모델, 사양 등의 타입 정보를 관리한다. 여기에 추가하여, 클라이언트(100)로부터 파일의 메타데이터에 관한 요청을 접수하면, 이에 대한 응답을 수행한다.
복수의 데이터 서버(300_1~300_n)는 각각 자신에게 장착된 복수의 저장장치들을 구분하여 관리하며, 개별 저장장치들로의 파일 입/출력을 관리한다.
복수의 데이터 서버(300_1~300_n)에 장착되는 저장장치는 속도에 따른 구분으로 고속저장장치(400_1~400_n)와 저속저장장치(500_1~500_n)으로 구분할 수 있다. 본 발명의 다른 실시예에서는 다른 기능이나 성능 기준에 따른 구분도 가능하다.
본 발명의 일 실시예는 클라이언트(100)가 하이브리드 분산 파일 시스템 내의 복수의 저장장치(400_1~400_n, 500_1~500_n) 중에 어떤 저장장치와 파일 입출력 업무를 수행할 지를 선정할 수 있는 기능을 부여할 수 있다.
도 2는 본 발명의 일 실시예에 따른 기능을 수행하기 위해, 클라이언트(100)의 내부에 구비되어야 할 내부 구성요소를 설명하는 블록도이다.
우선, 클라이언트(100)는 통상의 파일 시스템에 접근하여 파일을 검색하거나 업로드하거나 다운로드 하는 등의 통상의 업무를 수행하는데 필요한 기능을 모두 구비하고 있는 것으로 가정한다. 본 명세서에는 이들 기능에 대해서는 상세한 설명을 생략하기로 한다.
도 2를 참조하면, 클라이언트(100)가 저장장치를 선정할 수 있도록 하기 위해서는, 클라이언트(100)는 제어부(100) 내에 저장장치 관리부(112), 입출력 정보 관리부(114), 선정 기준 관리부(116), 수행시간 정보 관리부(118)을 추가로 구비할 수 있다. 여기서는 클라이언트(100)의 구성요소들의 전반적인 기능을 관리하는 제어부(110)내에 이들 구성요소들이 포함되는 것으로 설명하고 있으나, 본 발명의 다른 실시예에 따라서는 이들 구성요소들은 그 일부 또는 전부가 별도의 구성요소로 분리되어 배치될 수도 있다.
또한, 클라이언트(100)는 추가로 외부 장치 또는 사용자와의 파일 입출력을 관리하는 파일 입출력 인터페이스(120)를 구비할 수 있다.
저장장치 관리부(112)는 메타데이터 서버(200)로부터 시스템 내의 저장장치들(400_1~400_n, 500_1~500_n)에 대한 정보를 수신하여 저장하고 있으며, 필요시 해당 정보를 갱신하는 관리를 수행할 수 있다. 저장장치 관리부(112)는 해당 정보를 해당 파일의 입출력 동작 전후에 일시적으로 저장할 수도 있고, 일정 기간 동안 저장하고 있을 수도 있다.
입출력 정보 관리부(114)는 클라이언트(100)가 하이브리드 분산 파일 시스템과 함께 수행한 업무(또는 프로세스)에 대한 입출력 정보를 저장 관리하는데, 예를 들어 특정 업무를 시스템 내의 저장장치들(400_1~400_n, 500_1~500_n)중에 어떤 저장장치와 수행 했는지에 대한 과거 이력 정보를 포함할 수 있다.
선정 기준 관리부(116)는 클라이언트(100)가 시스템 내의 저장장치들(400_1~400_n, 500_1~500_n)중 특정 저장장치를 선정하는 기준을 저장하고 관리한다. 예를 들어, 선정 기준이 저장장치 별 처리 속도일 수도 있고, 나아가 특정 업무별 각각의 저장장치의 처리 속도일 수도 있다. 그리고, 이러한 선정 기준은 단순히 처리 속도에 국한되지 않고 다양한 저장 장치의 성능 요소들을 포함할 수 있으며, 이들 선정 기준은 생성, 갱신, 삭제 등의 관리 대상이 될 수 있다.
수행시간 정보 관리부(118)는 선정 기준 관리부(116)에 따른 선정기준에 따라 해당 업무의 각 저장장치 별 수행 시간 정보를 저장 관리하는 기능을 수행하는데, 예를 들어 예상 수행시간 정보나 과거 실제 수행 시간 등의 정보를 모두 포함할 수 있다.
도 3은 본 발명의 일 실시예에 따른 클라이언트(100)를 통한 저장장치 선택 방법을 보여주는 흐름도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 저장장치 선택 방법은 입출력 요청 수락 단계(S301), 메타데이터 서버에 파일 정보 요청 단계(S302), 저장 장치 타입 확인 단계(S303), 입출력 선정 기준 검색 단계(S304), 입출력 저장 장치 선정 단계(S305), 파일 입출력 수행 단계(S306), 메타데이터 갱신 요청 단계(S307), 입출력 수행 시간 저장 단계(S308), 입출력 결과 반환 단계(S309)를 포함할 수 있다.
이하에서, 도 1 및 도 2를 참조하여 상술한 S301 내지 S309 단계를 구체적으로 설명한다.
먼저, S301 단계에서, 클라이언트(100)가 사용자의 입력에 따라 파일 입출력 요청을 수락하는 것에서 본 동작이 시작된다.
S302 단계에서, 클라이언트(100)는 해당 파일에 대한 레이아웃 정보를 포함하는 관련 메타 데이터 정보를 메타 데이터 서버(200)로 요청한다. 예를 들어, 클라이언트(100)가 하이브리드 분산 파일 시스템 내의 복수의 저장장치(400_1~400_n, 500_1~500_n)에 저장된 파일에 접속하는 요청을 한 경우에, 클라이언트(100)는 메타 데이터 서버(200)로부터 해당 파일이 저장되어 있는 현황에 대한 정보를 수신할 수 있다. 또는 신규 파일의 경우 가용 장치 정보를 수신할 수도 있다.
S303 단계에서, 클라이언트(100)는 메타 데이터 서버(200)로부터 수신받은 파일에 대한 정보를 기초로, 해당 파일이 하나의 저장 장치에 저장된 상태인지, 복수개의 저장 장치에 저장되어 있는 지를 확인한다. 하이브리드 분산 파일 시스템에서는 동일한 파일이 신뢰성 보장 등을 이유로 여러 저장 장치에 분산되어 저장되어 있을 수 있다.
여기서, 만약 하나의 저장 장치에 저장된 것으로 확인된다면(NO), S306으로 넘어가서 바로 파일 입출력을 수행한다.
하지만, 2개 이상의 저장장치에 저장된 것으로 확인된다면(YES), 선정 기준 관리부(116)를 통해 선정 기준을 검색하고(S304), 해당 선정 기준에 따라서 저장 장치를 선정한다(S305). 하지만, 이 과정에서 입출력 정보 관리부(114) 및 수행시간 정보 관리부(118)에 저장된 과거 이력이나 장치의 성능 등의 정보 등을 참조하여 선정할 수 있다.
S306 단계에서, 정해진 저장 장치와 관련된 데이터 서버 모듈(300_1~300_n)를 통해 파일 입출력을 수행하고, S307 단계에서 해당 파일에 대한 메타데이터를 갱신하도록 메타데이터 서버(200)에 관련 정보를 전송한다.
S308 단계에서 해당 업무에 대한 수행 시간 등의 정보를 저장하고, 그 결과를 S309에서 클라이언트(100)를 통해 사용자에게 보여준다.
한편, 본 발명은 위에서 논의된 다양한 실시예가 하나 이상의 컴퓨터 또는 프로세서에 의해 실행되는 경우 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 클라이언트 110: 제어부
112: 저장장치 관리부 114: 입출력 정보 관리부
116: 선정기준 관리부 118: 수행시간 정보 관리부
120: 파일 입출력 인터페이스 200: 메타 데이터 서버
300: 데이터 서버 400: 고속 저장장치
500: 저속 저장 장치

Claims (6)

  1. 복수의 저장장치로의 파일 입출력을 관리하는 데이터 서버;
    파일의 메타 데이터를 관리하는 메타데이터 서버; 및
    상기 파일 입출력을 요청하고 상기 복수의 저장장치 중 상기 파일 입출력을 담당할 저장장치를 선정하는 기능을 내장하는 클라이언트를 포함하되,
    상기 클라이언트는 상기 메타데이터 서버를 통해 상기 입출력 요청된 파일의 저장 상태 정보 또는 상기 복수의 저장장치의 타입 정보를 전달받아, 상기 저장장치 선정에 이용하는 하이브리드 분산 스토리지 시스템.
  2. 제 1 항에 있어서,
    상기 복수의 저장장치는 동종 또는 이종의 저장장치로 구성되는 것을 특징으로 하는 하이브리드 분산 스토리지 시스템.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 클라이언트는 상기 메타데이터 서버를 통해 상기 복수의 저장 장치에 대한 정보를 전달받아 저장하는 것을 특징으로 하는 하이브리드 분산 스토리지 시스템.
  5. 제 1 항에 있어서,
    상기 클라이언트는 상기 복수의 저장장치를 선정하는 기준을 저장하는 것을 특징으로 하는 하이브리드 분산 스토리지 시스템.
  6. 제 1 항에 있어서,
    상기 클라이언트는 상기 복수의 저장장치 별로 수행 시간 정보를 관리하는 것을 특징으로 하는 하이브리드 분산 스토리지 시스템.
KR1020140007179A 2014-01-21 2014-01-21 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템 KR101816630B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140007179A KR101816630B1 (ko) 2014-01-21 2014-01-21 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140007179A KR101816630B1 (ko) 2014-01-21 2014-01-21 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템

Publications (2)

Publication Number Publication Date
KR20150086937A KR20150086937A (ko) 2015-07-29
KR101816630B1 true KR101816630B1 (ko) 2018-01-09

Family

ID=53876368

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140007179A KR101816630B1 (ko) 2014-01-21 2014-01-21 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템

Country Status (1)

Country Link
KR (1) KR101816630B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529780B1 (en) 2005-12-30 2009-05-05 Google Inc. Conflict management during data object synchronization between client and server

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529780B1 (en) 2005-12-30 2009-05-05 Google Inc. Conflict management during data object synchronization between client and server

Also Published As

Publication number Publication date
KR20150086937A (ko) 2015-07-29

Similar Documents

Publication Publication Date Title
JP6423468B2 (ja) 記憶階層の動的選択
US9742845B2 (en) Multi-service cloud storage decision optimization process
US11861405B2 (en) Multi-cluster container orchestration
US10210054B1 (en) Backup optimization in hybrid storage environment
US20130227047A1 (en) Methods for managing content stored in cloud-based storages
US10120920B2 (en) Increasing storage space for processes impacting data storage systems
US9590859B2 (en) Discovering resources of a distributed computing environment
US11003658B2 (en) Selectively retrieving data from remote share nothing computer clusters
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
US10242102B2 (en) Network crawling prioritization
US20150381754A1 (en) Unifying cloud services for online sharing
US20090327303A1 (en) Intelligent allocation of file server resources
US10956430B2 (en) User-driven adaptation of rankings of navigation elements
US10693939B2 (en) Providing modified protocol responses
US10423785B2 (en) Data scanning within distributed computing components
US9430530B1 (en) Reusing database statistics for user aggregate queries
US10346424B2 (en) Object processing
US20150007046A1 (en) Management of an application for an electronic device
US10942866B1 (en) Priority-based cache
JP2021513137A (ja) 階層型ストレージ管理システムにおけるデータ・マイグレーション
US10554770B2 (en) Dynamic cognitive optimization of web applications
KR101816630B1 (ko) 저장 장치 선정이 가능한 하이브리드 분산 스토리지 시스템
US10747748B2 (en) Generating mobile data schema to support disconnected operations
US11275800B2 (en) Gauging credibility of digital content items
WO2022111877A1 (en) Efficient spatial indexing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
GRNT Written decision to grant