KR20150074571A - Tape storage system and method of controlling the same - Google Patents
Tape storage system and method of controlling the same Download PDFInfo
- Publication number
- KR20150074571A KR20150074571A KR1020130162475A KR20130162475A KR20150074571A KR 20150074571 A KR20150074571 A KR 20150074571A KR 1020130162475 A KR1020130162475 A KR 1020130162475A KR 20130162475 A KR20130162475 A KR 20130162475A KR 20150074571 A KR20150074571 A KR 20150074571A
- Authority
- KR
- South Korea
- Prior art keywords
- tape
- file
- content
- tape cartridge
- library
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0686—Libraries, e.g. tape libraries, jukebox
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)
- Library & Information Science (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
Description
본 발명은 테이프 스토리지 시스템 및 이의 제어 방법에 관한 것이다.
The present invention relates to a tape storage system and a control method thereof.
종래의 Near-line 테이프 스토리지는 순차적 액세스 속도가 빠르다는 장점을 가지는 반면, 랜덤 액세스 속도가 느리다는 단점을 가지고 있다. 즉, Near-line 테이프 스토리지는 Tape 카트리지를 교체하는데 소요되는 시간, Tape 카트리지에 저장된 컨텐츠의 시작 위치로 접근하는데 소요되는 시간, Tape 카트리지의 특정 위치에서 다른 위치로 이동하는데 소요되는 시간 등으로 인하여 랜덤 엑세스 속도가 느리다. 예를 들어, Tape 카트리지에 저장된 컨텐츠의 시작 위치로 접근하기 위한 시간이 평균 17.5초 ~ 2분정도 소요된다.Conventional near-line tape storage has the advantage of high sequential access speed, but has a disadvantage of low random access speed. In other words, near-line tape storage has a problem in that the time required to replace the tape cartridge, the time required to access the starting position of the contents stored in the tape cartridge, the time required to move from the specific position of the tape cartridge to another position, The access speed is slow. For example, it takes an average of 17.5 seconds to 2 minutes to access the start position of content stored in the tape cartridge.
그래서, Near-line 테이프 스토리지는 아주 경제적이라는 장점을 가지고 있지만, 미디어 컨텐츠 서비스를 위한 저장 매체로 사용되지 못하는 문제점이 있다.
Thus, although near-line tape storage has an advantage of being very economical, it has a problem that it can not be used as a storage medium for media content service.
본 발명은 하나의 컨텐츠를 복수의 테이프 드라이브의 카트리지에 분할 저장하고, 분할 저장된 컨텐츠의 각 파일들을 동시에 병렬로 로딩하여 병합하는 테이프 스토리지 시스템을 제안하는 것이다.
The present invention proposes a tape storage system that divides one content into cartridges of a plurality of tape drives and simultaneously loads and merges the respective files of the divided and stored contents in parallel.
본 발명의 일 측면에 따르면, 테이프 스토리지 시스템이 개시된다.According to an aspect of the present invention, a tape storage system is disclosed.
본 발명의 실시예에 따른 테이프 스토리지 시스템은 사용자 입력에 따라 선택된 컨텐츠에 대한 저장 또는 조회를 요청하는 사용자 어플리케이션, 복수의 테이프 드라이버 및 테이프 카트리지를 포함하며, 상기 테이프 카트리지를 상기 테이프 드라이버에 마운트 또는 언마운트시키고, 조회 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지로부터 로딩하거나 저장 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지에 저장시키는 테이프 라이브러리 및 상기 저장 요청에 따라 상기 선택된 컨텐츠의 분할된 컨텐츠 파일이 각각 복수의 테이프 카트리지에 분할 저장되고, 상기 조회 요청에 따라 상기 선택된 컨텐츠의 분할 저장된 복수의 컨텐츠 파일이 각 테이프 카트리지로부터 병렬로 로딩되도록 테이프 라이브러리를 제어하고, 로딩된 복수의 컨텐츠 파일을 순서에 따라 병합하여 병합 파일을 상기 사용자 어플리케이션으로 전달하는 라이브러리 제어기를 포함한다.A tape storage system according to an embodiment of the present invention includes a user application for requesting storage or inquiry of selected contents according to user input, a plurality of tape drivers and a tape cartridge, and the tape cartridge is mounted or unfastened A tape library that mounts the content file and mounts the content file from the mounted tape cartridge or stores the content file requested to be stored in the mounted tape cartridge and the divided content file of the selected content in accordance with the storage request, Wherein the control unit controls the tape library so that a plurality of divided content files of the selected content are loaded in parallel from each tape cartridge in accordance with the inquiry request, And a library controller for merging the files in order and transferring the merge file to the user application.
상기 사용자 어플리케이션은 상기 사용자 입력에 따라 상기 선택된 컨텐츠의 파일 청크(chunk) 개수 및 파일 분할 크기를 결정하고, 상기 라이브러리 제어기는 상기 파일 청크 개수만큼의 테이프 카트리지가 마운트 되도록 제어하고, 상기 파일 분할 크기에 따라 상기 선택된 컨텐츠의 컨텐츠 파일을 분할한다.Wherein the user application determines a number of file chunks and a file partition size of the selected content according to the user input, the library controller controls to mount a tape cartridge as many as the number of file chunks, And divides the content file of the selected content.
상기 라이브러리 제어기는 상기 마운트된 각 테이프 카트리지에 상기 선택된 컨텐츠에 대한 폴더가 동일하게 생성되도록 제어한다.The library controller controls to create a folder for the selected contents in each of the mounted tape cartridges.
상기 라이브러리 제어기는 상기 컨텐츠 파일의 분할 저장이 완료되면, 저장 정보 테이블을 생성하되, 상기 저장 정보 테이블은 사용자명, 폴더명, 파일명, 파일 청크 개수, 파일 분할 크기, 테이프 라이브러리 번호, 테이프 카트리지 번호를 포함한다.Wherein the library controller generates a storage information table when the divided and stored contents files are completed, wherein the storage information table includes a user name, a folder name, a file name, a number of file chunks, a file partition size, a tape library number, .
상기 라이브러리 제어기는 상기 조회 요청에 따라 상기 저장 정보 테이블을 조회하여 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 라이브러리와 테이프 카트리지를 확인하고, 상기 확인한 테이프 카트리지의 마운트 여부를 확인한다.The library controller inquires the storage information table according to the inquiry request, identifies a tape library and a tape cartridge in which a folder requested to be inquired and a content file are stored, and confirms whether the confirmed tape cartridge is mounted.
상기 라이브러리 제어기는 상기 파일 청크 개수만큼의 각 테이프 카트리지로부터 상기 파일 분할 크기 단위의 각 컨텐츠 파일이 동시에 병렬 로딩되도록 제어한다.The library controller controls each of the content files of the file division size unit to be simultaneously loaded in parallel from each tape cartridge corresponding to the number of file chunks.
본 발명의 다른 측면에 따르면, 복수의 테이프 드라이버 및 테이프 카트리지를 포함하는 테이프 라이브러리의 제어기가 상기 테이프 라이브러리를 제어하는 방법이 개시된다.According to another aspect of the present invention, a method is provided for a controller of a tape library including a plurality of tape drivers and a tape cartridge to control the tape library.
본 발명의 실시예에 따른 테이프 라이브러리 제어 방법은 사용자 어플리케이션으로부터 선택된 컨텐츠에 대한 저장 요청을 받는 단계, 상기 선택된 컨텐츠의 분할된 컨텐츠 파일이 저장되는 복수의 테이프 카트리지를 마운트시키는 단계, 상기 선택된 컨텐츠의 컨텐츠 파일을 분할하고, 상기 분할된 컨텐츠 파일을 각 테이프 카트리지에 저장하는 단계, 사용자 어플리케이션으로부터 선택된 컨텐츠에 대한 조회 요청을 받는 단계, 상기 선택된 컨텐츠의 분할 저장된 복수의 컨텐츠 파일을 각 테이프 카트리지로부터 병렬로 로딩하는 단계 및 상기 로딩된 복수의 컨텐츠 파일을 순서에 따라 병합하여 병합 파일을 상기 사용자 어플리케이션으로 전달하는 단계를 포함한다.A method of controlling a tape library according to an exemplary embodiment of the present invention includes receiving a request for storing content selected from a user application, mounting a plurality of tape cartridges storing divided content files of the selected content, Storing the divided content files in respective tape cartridges, receiving an inquiry request for contents selected from a user application, loading a plurality of divided content files of the selected contents in parallel from each tape cartridge, And merging the loaded plurality of content files in order to transfer the merged file to the user application.
상기 저장 요청을 받는 단계는 상기 사용자 어플리케이션이 상기 사용자 입력에 따라 상기 선택된 컨텐츠의 파일 청크(chunk) 개수 및 파일 분할 크기를 결정하는 단계를 포함하고, 상기 복수의 테이프 카트리지를 마운트시키는 단계는 상기 파일 청크 개수만큼의 테이프 카트리지가 마운트 되도록 제어하는 단계를 포함하고, 상기 분할된 컨텐츠 파일을 각 테이프 카트리지에 저장하는 단계는 상기 파일 분할 크기에 따라 상기 선택된 컨텐츠의 컨텐츠 파일을 분할하는 단계를 포함한다.Wherein the step of receiving the storage request includes a step of the user application determining a number of file chunks and a file partition size of the selected content according to the user input, Wherein the step of storing the divided content files in each tape cartridge includes dividing the content file of the selected content according to the file division size.
상기 컨텐츠 파일의 분할 저장이 완료되면, 저장 정보 테이블을 생성하는 단계를 더 포함하되, 상기 저장 정보 테이블은 사용자명, 폴더명, 파일명, 파일 청크 개수, 파일 분할 크기, 테이프 라이브러리 번호, 테이프 카트리지 번호를 포함한다.The storage information table may further include a user name, a folder name, a file name, a number of file chunks, a file partition size, a tape library number, a tape cartridge number, .
상기 조회 요청에 따라 상기 저장 정보 테이블을 조회하여 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 라이브러리와 테이프 카트리지를 확인하는 단계 및 상기 확인한 테이프 카트리지의 마운트 여부를 확인하는 단계를 더 포함한다.Checking the storage information table according to the inquiry request, checking the tape library and the tape cartridge storing the folder and the content file requested to be inquired, and checking whether the tape cartridge is mounted.
상기 병렬로 로딩하는 단계는 상기 파일 청크 개수만큼의 각 테이프 카트리지로부터 상기 파일 분할 크기 단위의 각 컨텐츠 파일이 동시에 병렬 로딩되도록 제어한다.
The parallel loading step controls the parallel loading of the respective content files of the file division size unit from each tape cartridge as many as the number of file chunks.
본 발명은 테이프 스토리지 시스템에서 하나의 컨텐츠를 복수의 테이프 드라이브의 카트리지에 분할 저장하고, 분할 저장된 컨텐츠의 각 파일들을 동시에 병렬로 로딩하여 병합함으로써, 컨텐츠 액세스 시간을 단축할 수 있다.
The present invention can shorten a content access time by dividing one content into cartridges of a plurality of tape drives in a tape storage system and simultaneously loading and merging the respective files of the divided and stored contents in parallel.
도 1 및 도 2는 일반적인 테이프 스토리지 시스템에서 컨텐츠를 저장 및 조회하는 것을 나타낸 도면.
도 3은 테이프 스토리지 시스템의 구성을 개략적으로 예시한 도면.
도 4는 복수의 테이프 카트리지에 분할 저장된 컨텐츠 파일을 예시한 도면.
도 5는 도 3의 테이프 스토리지 시스템에서의 컨텐츠 저장 방법을 나타낸 흐름도.
도 6은 도 3의 테이프 스토리지 시스템에서의 컨텐츠 조회 방법을 나타낸 흐름도.Figures 1 and 2 illustrate storage and retrieval of content in a typical tape storage system.
3 schematically illustrates a configuration of a tape storage system;
4 is a diagram illustrating a content file divided and stored in a plurality of tape cartridges;
FIG. 5 is a flowchart illustrating a content storage method in the tape storage system of FIG. 3. FIG.
FIG. 6 is a flowchart illustrating a content inquiry method in the tape storage system of FIG. 3. FIG.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the present invention has been described in connection with certain exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and similarities. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. In addition, numerals (e.g., first, second, etc.) used in the description of the present invention are merely an identifier for distinguishing one component from another.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.Also, in this specification, when an element is referred to as being "connected" or "connected" with another element, the element may be directly connected or directly connected to the other element, It should be understood that, unless an opposite description is present, it may be connected or connected via another element in the middle.
이하, 본 발명의 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate a thorough understanding of the present invention, the same reference numerals are used for the same means regardless of the number of the drawings.
도 1 및 도 2는 일반적인 테이프 스토리지 시스템에서 컨텐츠를 저장 및 조회하는 것을 나타낸 도면이다.1 and 2 illustrate storage and retrieval of contents in a general tape storage system.
우선, 도 1을 참조하면, 테이프 라이브러리(Tape Library)(20)는 사용자 어플리케이션(10)으로부터 컨텐츠 저장 요청을 받으면, 테이프 드라이버에 마운트된 테이프 카트리지의 저장 용량을 산출하고, 저장 요청받은 컨텐츠에 대한 저장 용량의 확보 가능 여부를 판단한다. 이어, 테이프 라이브러리(20)는 저장 용량이 확보 가능한 경우, 마운트된 하나의 테이프 카트리지에 해당 컨텐츠 파일을 순차적으로 저장시킨다.Referring to FIG. 1, when a
그리고, 테이프 라이브러리(20)는 저장 용량이 확보 가능하지 않은 경우, 확보 가능한 테이프 카트리지를 테이프 드라이버에 마운트시키고, 마운트된 테이프 카트리지에 해당 컨텐츠 파일을 순차적으로 저장시킨다.If the storage capacity can not be secured, the
다음으로, 도 2를 참조하면, 테이프 라이브러리(20)는 사용자 어플리케이션(10)으로부터 컨텐츠 조회 요청을 받으면, 조회 요청받은 컨텐츠가 저장된 테이프 카트리지가 테이프 드라이버에 마운트되어 있는지 여부를 판단한다. 이어, 테이프 라이브러리(20)는 요청 컨텐츠가 저장된 테이프 카트리지가 마운트되어 있는 경우, 요청 컨텐츠가 저장된 테이프 카트리지로부터 요청 컨텐츠의 파일들을 순차적으로 로딩하여 사용자 어플리케이션(10)으로 전달한다.2, when the
그리고, 테이프 라이브러리(20)는 요청 컨텐츠가 저장된 테이프 카트리지가 마운트되어 있지 않은 경우, 요청 컨텐츠가 저장된 테이프 카트리지를 검색하여 테이프 드라이버에 마운트시키고, 마운트된 테이프 카트리지로부터 요청 컨텐츠의 파일들을 순차적으로 로딩하여 사용자 어플리케이션(10)으로 전달한다.If the tape cartridge in which the requested content is stored is not mounted, the
이와 같이, 일반적인 테이프 라이브러리(20)는 컨텐츠를 순차적으로 저장 및 로딩함에 따라 액세스 시간이 많이 소요될 수 있다.
As described above, the
도 3은 테이프 스토리지 시스템의 구성을 개략적으로 예시한 도면이다.3 schematically illustrates a configuration of a tape storage system.
도 3을 참조하면, 테이프 스토리지 시스템은 사용자 어플리케이션(10), 테이프 라이브러리(20) 및 라이브러리 제어기(30)를 포함한다.Referring to FIG. 3, the tape storage system includes a
사용자 어플리케이션(10)은 사용자 입력에 따라 선택된 컨텐츠의 파일 청크(chunk) 개수 및 파일 분할 크기를 결정하고, 선택된 컨텐츠의 저장 및 로딩을 테이프 라이브러리(20)로 요청한다. 예를 들어, 사용자 어플리케이션(10)은 테이프 라이브러리(20) 및/또는 라이브러리 제어기(30)에 연결된 사용자 단말에 설치되어, 테이프 라이브러리(20)에 대한 데이터 관리 기능을 제공하는 프로그램일 수 있다.The
테이프 라이브러리(20)는 복수의 테이프 드라이버 및 테이프 카트리지를 포함하며, 라이브러리 제어기(30)의 제어에 의하여 테이프 카트리지를 테이프 드라이버에 마운트 또는 언마운트시키고, 조회 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지로부터 로딩하거나 저장 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지에 저장시킨다.The
특히, 테이프 라이브러리(20)는 라이브러리 제어기(30)의 제어에 의하여 하나의 컨텐츠의 분할된 복수의 컨텐츠 파일을 복수의 테이프 카트리지에 분할 저장하고, 분할 저장된 복수의 컨텐츠 파일을 동시에 병렬로 로딩할 수 있다. 예를 들어, 도 4를 참조하면, 도 4는 복수의 테이프 카트리지에 분할 저장된 컨텐츠 파일을 예시한 도면이다. 도 4에 도시된 바와 같이, 하나의 컨텐츠에 대한 복수의 컨텐츠 파일이 각 테이프 카트리지에 분할 저장될 수 있다.In particular, under the control of the
라이브러리 제어기(30)는 하나의 컨텐츠의 분할된 복수의 컨텐츠 파일이 복수의 테이프 카트리지에 분할 저장되고, 분할 저장된 복수의 컨텐츠 파일이 동시에 병렬로 로딩되도록 테이프 라이브러리(20)를 제어한다. 이에 대해서는, 이하 도 5 및 도 6을 참조하여 상세히 후술한다.
The
도 5는 도 3의 테이프 스토리지 시스템에서의 컨텐츠 저장 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a content storage method in the tape storage system of FIG.
S510 단계에서, 사용자 어플리케이션(10)은 사용자 입력에 따라 라이브러리 제어기(30)로 컨텐츠 저장 요청을 한다. 예를 들어, 사용자 어플리케이션(10)은 사용자 입력에 따라 선택된 컨텐츠의 파일 청크 개수 및 파일 분할 크기를 결정하고, 결정된 파일 청크 개수 및 파일 분할 크기에 따른 컨텐츠 분할 저장을 라이브러리 제어기(30)로 요청할 수 있다.In step S510, the
S520 단계에서, 라이브러리 제어기(30)는 사용자 어플리케이션(10)의 컨텐츠 저장 요청에 따라 컨텐츠를 저장하기 위한 테이프 카트리지가 마운트 되도록 테이프 라이브러리(20)로 마운트 요청을 한다. 예를 들어, 라이브러리 제어기(30)는 파일 청크 개수만큼 테이프 카트리지가 마운트 되도록 테이프 라이브러리(20)로 마운트 요청을 할 수 있다.In step S520, the
S530 단계에서, 테이프 라이브러리(20)는 마운트 요청에 따라 복수의 테이프 드라이버에 각각 테이프 카트리지를 마운트한다.In step S530, the
S540 단계에서, 라이브러리 제어기(30)는 하나의 컨텐츠 파일을 복수의 컨텐츠 파일로 분할한다. 예를 들어, 라이브러리 제어기(30)는 파일 분할 크기에 따라 하나의 컨텐츠 파일을 복수개의 컨텐츠 파일로 순차적으로 분할할 수 있다.In step S540, the
S550 단계에서, 라이브러리 제어기(30)는 테이프 라이브러리(20)로 분할된 복수의 컨텐츠 파일의 분할 저장을 요청한다. 이때, 라이브러리 제어기(30)는 각 테이프 카트리지에 해당 컨텐츠에 대한 폴더가 동일하게 생성되도록 테이프 라이브러리(20)를 제어할 수 있다.In step S550, the library controller 30 requests division and storage of a plurality of content files divided into the
S560 단계에서, 테이프 라이브러리(20)는 분할 저장 요청에 따라 분할된 컨텐츠 파일을 각각 테이프 카트리지에 저장시킨다. 이때, 테이프 라이브러리(20)는 라이브러리 제어기(30)의 제어에 따라 각 테이프 카트리지에 해당 컨텐츠에 대한 폴더를 동일하게 생성시킬 수 있다.In step S560, the
S570 단계에서, 라이브러리 제어기(30)는 컨텐츠 파일의 분할 저장이 완료됨에 따라 저장 정보 테이블을 생성하여 저장한다. 예를 들어, 저장 정보 테이블은 사용자명, 폴더명, 파일명, 파일 청크 개수, 파일 분할 크기, 테이프 라이브러리 번호, 테이프 카트리지 번호를 포함할 수 있다.
In step S570, the
도 6은 도 3의 테이프 스토리지 시스템에서의 컨텐츠 조회 방법을 나타낸 흐름도이다.6 is a flowchart illustrating a content inquiry method in the tape storage system of FIG.
S610 단계에서, 사용자 어플리케이션(10)은 사용자 입력에 따라 라이브러리 제어기(30)로 컨텐츠 조회 요청을 한다. 예를 들어, 사용자 어플리케이션(10)은 사용자 입력에 따라 조회할 폴더 및 컨텐츠 파일을 선택하여 라이브러리 제어기(30)로 컨텐츠 조회 요청을 할 수 있다.In step S610, the
S620 단계에서, 라이브러리 제어기(30)는 컨텐츠 조회 요청에 따라 저장 정보 테이블을 조회한다. 이를 통해, 라이브러리 제어기(30)는 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 라이브러리(20)와 테이프 카트리지를 확인할 수 있다.In step S620, the
S630 단계에서, 라이브러리 제어기(30)는 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 카트리지의 마운트 여부를 테이프 라이브러리(20)에서 확인한다. 만약, 해당 테이프 카트리지가 마운트되지 않은 경우, 라이브러리 제어기(30)는 테이프 라이브러리(20)로 해당 테이프 카트리지의 마운트를 요청한다.In step S630, the
S640 단계에서, 라이브러리 제어기(30)는 분할 저장된 복수의 컨텐츠 파일을 테이프 라이브러리(20)로부터 병렬 로딩한다. 예를 들어, 라이브러리 제어기(30)는 파일 청크 개수만큼의 각 테이프 카트리지로부터 파일 분할 크기 단위의 각 컨텐츠 파일이 동시에 병렬 로딩되도록, 테이프 라이브러리(20)로 로딩 요청하여 분할된 컨텐츠 파일을 로딩받을 수 있다.In step S640, the
S650 단계에서, 라이브러리 제어기(30)는 각 테이프 카트리지로부터 병렬 로딩된 컨텐츠 파일을 병합한다. 예를 들어, 라이브러리 제어기(30)는 파일 청크 개수만큼의 테이프 카트리지로부터 로딩된 각 컨텐츠 파일을 순서에 따라 병합할 수 있다.In step S650, the
S660 단계에서, 라이브러리 제어기(30)는 분할된 컨텐츠 파일이 병합된 병합 파일을 사용자 어플리케이션(10)으로 전달한다.
In step S660, the
한편, 본 발명의 실시예에 따른 컨텐츠 저장 방법과 컨텐츠 조회 방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조등을 단독으로 또는 조합하여 포함할 수 있다. Meanwhile, the content storing method and the content inquiring method according to the embodiment of the present invention may be implemented in a form of a program command which can be executed through a variety of means for processing information electronically and recorded in a storage medium. The storage medium may include program instructions, data files, data structures, and the like, alone or in combination.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. Program instructions to be recorded on the storage medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of software. Examples of storage media include magnetic media such as hard disks, floppy disks and magnetic tape, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, magneto-optical media and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. The above-mentioned medium may also be a transmission medium such as a light or metal wire, wave guide, etc., including a carrier wave for transmitting a signal designating a program command, a data structure and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as devices for processing information electronically using an interpreter or the like, for example, a high-level language code that can be executed by a computer.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention as defined in the appended claims. It will be understood that the invention may be varied and varied without departing from the scope of the invention.
10: 사용자 어플리케이션
20: 테이프 라이브러리
30: 라이브러리 제어기10: User application
20: Tape Library
30: Library controller
Claims (12)
복수의 테이프 드라이버 및 테이프 카트리지를 포함하며, 상기 테이프 카트리지를 상기 테이프 드라이버에 마운트 또는 언마운트시키고, 조회 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지로부터 로딩하거나 저장 요청받은 컨텐츠 파일을 마운트된 테이프 카트리지에 저장시키는 테이프 라이브러리; 및
상기 저장 요청에 따라 상기 선택된 컨텐츠의 분할된 컨텐츠 파일이 각각 복수의 테이프 카트리지에 분할 저장되고, 상기 조회 요청에 따라 상기 선택된 컨텐츠의 분할 저장된 복수의 컨텐츠 파일이 각 테이프 카트리지로부터 병렬로 로딩되도록 테이프 라이브러리를 제어하고, 로딩된 복수의 컨텐츠 파일을 순서에 따라 병합하여 병합 파일을 상기 사용자 어플리케이션으로 전달하는 라이브러리 제어기를 포함하는 테이프 스토리지 시스템.
A user application for requesting storage or retrieval of selected content according to user input;
A plurality of tape drivers and a tape cartridge, wherein the tape cartridge is mounted or unmounted in the tape driver, the content file requested to be read is loaded from a mounted tape cartridge, or the stored content file is stored in a mounted tape cartridge A tape library; And
The content files of the selected content are divided and stored in a plurality of tape cartridges in accordance with the storage request, and the plurality of content files, in which the selected content is divided and stored, are loaded in parallel from each tape cartridge, And a library controller for merging the loaded plurality of content files in order and transferring the merged file to the user application.
상기 사용자 어플리케이션은 상기 사용자 입력에 따라 상기 선택된 컨텐츠의 파일 청크(chunk) 개수 및 파일 분할 크기를 결정하고,
상기 라이브러리 제어기는 상기 파일 청크 개수만큼의 테이프 카트리지가 마운트 되도록 제어하고, 상기 파일 분할 크기에 따라 상기 선택된 컨텐츠의 컨텐츠 파일을 분할하는 것을 특징으로 하는 테이프 스토리지 시스템.
The method according to claim 1,
Wherein the user application determines a number of file chunks and a file partition size of the selected content according to the user input,
Wherein the library controller controls the tape cartridges as many as the number of file chunks to be mounted and divides the content file of the selected content according to the file partition size.
상기 라이브러리 제어기는 상기 마운트된 각 테이프 카트리지에 상기 선택된 컨텐츠에 대한 폴더가 동일하게 생성되도록 제어하는 것을 특징으로 하는 테이프 스토리지 시스템.
3. The method of claim 2,
Wherein the library controller controls to create a folder for the selected content in each of the mounted tape cartridges.
상기 라이브러리 제어기는 상기 컨텐츠 파일의 분할 저장이 완료되면, 저장 정보 테이블을 생성하되,
상기 저장 정보 테이블은 사용자명, 폴더명, 파일명, 파일 청크 개수, 파일 분할 크기, 테이프 라이브러리 번호, 테이프 카트리지 번호를 포함하는 것을 특징으로 하는 테이프 스토리지 시스템.
3. The method of claim 2,
Wherein the library controller generates a storage information table when the content file is divided and stored,
Wherein the storage information table includes a user name, a folder name, a file name, a number of file chunks, a file partition size, a tape library number, and a tape cartridge number.
상기 라이브러리 제어기는 상기 조회 요청에 따라 상기 저장 정보 테이블을 조회하여 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 라이브러리와 테이프 카트리지를 확인하고, 상기 확인한 테이프 카트리지의 마운트 여부를 확인하는 것을 특징으로 하는 테이프 스토리지 시스템.
5. The method of claim 4,
Wherein the library controller inquires the storage information table according to the inquiry request to identify the tape library and the tape cartridge in which the folder requested to be inquired and the content file are stored and confirms whether the tape cartridge is mounted or not. system.
상기 라이브러리 제어기는 상기 파일 청크 개수만큼의 각 테이프 카트리지로부터 상기 파일 분할 크기 단위의 각 컨텐츠 파일이 동시에 병렬 로딩되도록 제어하는 것을 특징으로 하는 테이프 스토리지 시스템.
3. The method of claim 2,
Wherein the library controller controls the respective content files of the file division size unit to be simultaneously loaded in parallel from each tape cartridge corresponding to the number of file chunks.
사용자 어플리케이션으로부터 선택된 컨텐츠에 대한 저장 요청을 받는 단계;
상기 선택된 컨텐츠의 분할된 컨텐츠 파일이 저장되는 복수의 테이프 카트리지를 마운트시키는 단계;
상기 선택된 컨텐츠의 컨텐츠 파일을 분할하고, 상기 분할된 컨텐츠 파일을 각 테이프 카트리지에 저장하는 단계;
사용자 어플리케이션으로부터 선택된 컨텐츠에 대한 조회 요청을 받는 단계;
상기 선택된 컨텐츠의 분할 저장된 복수의 컨텐츠 파일을 각 테이프 카트리지로부터 병렬로 로딩하는 단계; 및
상기 로딩된 복수의 컨텐츠 파일을 순서에 따라 병합하여 병합 파일을 상기 사용자 어플리케이션으로 전달하는 단계를 포함하는 테이프 라이브러리 제어 방법.
A method of controlling a tape library controller comprising a plurality of tape drivers and a tape cartridge, the method comprising:
Receiving a storage request for content selected from a user application;
Mounting a plurality of tape cartridges storing divided contents files of the selected contents;
Dividing the content file of the selected content and storing the divided content file in each tape cartridge;
Receiving an inquiry request for content selected from a user application;
Loading a plurality of divided content files of the selected content in parallel from each tape cartridge; And
And merging the loaded plurality of content files in order to transfer the merged file to the user application.
상기 저장 요청을 받는 단계는
상기 사용자 어플리케이션이 상기 사용자 입력에 따라 상기 선택된 컨텐츠의 파일 청크(chunk) 개수 및 파일 분할 크기를 결정하는 단계를 포함하고,
상기 복수의 테이프 카트리지를 마운트시키는 단계는
상기 파일 청크 개수만큼의 테이프 카트리지가 마운트 되도록 제어하는 단계를 포함하고,
상기 분할된 컨텐츠 파일을 각 테이프 카트리지에 저장하는 단계는
상기 파일 분할 크기에 따라 상기 선택된 컨텐츠의 컨텐츠 파일을 분할하는 단계를 포함하는 것을 특징으로 하는 테이프 라이브러리 제어 방법.
8. The method of claim 7,
The step of receiving the storage request
Wherein the user application determines a number of file chunks and a file partition size of the selected content according to the user input,
Wherein mounting the plurality of tape cartridges comprises:
And controlling the tape cartridges as many as the number of file chunks to be mounted,
The step of storing the divided content files in each tape cartridge
And dividing the contents file of the selected contents according to the file division size.
상기 컨텐츠 파일의 분할 저장이 완료되면, 저장 정보 테이블을 생성하는 단계를 더 포함하되,
상기 저장 정보 테이블은 사용자명, 폴더명, 파일명, 파일 청크 개수, 파일 분할 크기, 테이프 라이브러리 번호, 테이프 카트리지 번호를 포함하는 것을 특징으로 테이프 라이브러리 제어 방법.
9. The method of claim 8,
When the content file is divided and stored, generating a storage information table,
Wherein the storage information table includes a user name, a folder name, a file name, a number of file chunks, a file partition size, a tape library number, and a tape cartridge number.
상기 조회 요청에 따라 상기 저장 정보 테이블을 조회하여 조회 요청된 폴더 및 컨텐츠 파일이 저장된 테이프 라이브러리와 테이프 카트리지를 확인하는 단계; 및
상기 확인한 테이프 카트리지의 마운트 여부를 확인하는 단계를 더 포함하는 테이프 라이브러리 제어 방법.
10. The method of claim 9,
Inquiring the storage information table according to the inquiry request and checking a tape library and a tape cartridge in which a folder requested to be inquired and a content file are stored; And
And confirming whether or not the identified tape cartridge is mounted.
상기 병렬로 로딩하는 단계는
상기 파일 청크 개수만큼의 각 테이프 카트리지로부터 상기 파일 분할 크기 단위의 각 컨텐츠 파일이 동시에 병렬 로딩되도록 제어하는 것을 특징으로 하는 테이프 라이브러리 제어 방법.
9. The method of claim 8,
The step of loading in parallel
And controls to concurrently load the respective content files in units of the file division size from the respective tape cartridges as many as the number of file chunks in parallel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130162475A KR102172317B1 (en) | 2013-12-24 | 2013-12-24 | Tape storage system and method of controlling the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130162475A KR102172317B1 (en) | 2013-12-24 | 2013-12-24 | Tape storage system and method of controlling the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150074571A true KR20150074571A (en) | 2015-07-02 |
KR102172317B1 KR102172317B1 (en) | 2020-10-30 |
Family
ID=53787666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130162475A KR102172317B1 (en) | 2013-12-24 | 2013-12-24 | Tape storage system and method of controlling the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102172317B1 (en) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6152760A (en) * | 1984-08-22 | 1986-03-15 | Hitachi Ltd | Input/output control system |
JPH10232800A (en) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | Magnetic tape storage device |
JP2003216460A (en) * | 2002-01-21 | 2003-07-31 | Hitachi Ltd | Hierarchical storage device and its controller |
JP2006092124A (en) * | 2004-09-22 | 2006-04-06 | Fujitsu Ltd | Storage device, storage control method and storage control program |
JP2009230212A (en) * | 2008-03-19 | 2009-10-08 | Fujitsu Ltd | Virtual tape device and control method for virtual tape device |
KR101023585B1 (en) * | 2008-12-08 | 2011-03-21 | 주식회사 케이티 | Method for managing a data according to the frequency of client requests in object-based storage system |
JP2011233009A (en) * | 2010-04-28 | 2011-11-17 | Hitachi Ltd | Storage device and data hierarchy management method in storage device |
KR20120032920A (en) * | 2010-09-29 | 2012-04-06 | 엔에이치엔비즈니스플랫폼 주식회사 | System and method for distributely processing file volume for chunk unit |
US20130044386A1 (en) * | 2011-08-16 | 2013-02-21 | Fujitsu Limited | Tape drive device, tape library device, and data storing method |
JP5342888B2 (en) * | 2009-01-30 | 2013-11-13 | 株式会社日立製作所 | File server and file management method |
-
2013
- 2013-12-24 KR KR1020130162475A patent/KR102172317B1/en active IP Right Grant
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6152760A (en) * | 1984-08-22 | 1986-03-15 | Hitachi Ltd | Input/output control system |
JPH10232800A (en) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | Magnetic tape storage device |
JP2003216460A (en) * | 2002-01-21 | 2003-07-31 | Hitachi Ltd | Hierarchical storage device and its controller |
JP2006092124A (en) * | 2004-09-22 | 2006-04-06 | Fujitsu Ltd | Storage device, storage control method and storage control program |
JP2009230212A (en) * | 2008-03-19 | 2009-10-08 | Fujitsu Ltd | Virtual tape device and control method for virtual tape device |
KR101023585B1 (en) * | 2008-12-08 | 2011-03-21 | 주식회사 케이티 | Method for managing a data according to the frequency of client requests in object-based storage system |
JP5342888B2 (en) * | 2009-01-30 | 2013-11-13 | 株式会社日立製作所 | File server and file management method |
JP2011233009A (en) * | 2010-04-28 | 2011-11-17 | Hitachi Ltd | Storage device and data hierarchy management method in storage device |
KR20120032920A (en) * | 2010-09-29 | 2012-04-06 | 엔에이치엔비즈니스플랫폼 주식회사 | System and method for distributely processing file volume for chunk unit |
US20130044386A1 (en) * | 2011-08-16 | 2013-02-21 | Fujitsu Limited | Tape drive device, tape library device, and data storing method |
Non-Patent Citations (1)
Title |
---|
㈜이포텍, "PC Data의 Archiving 기술접목을 통한 Storage 최적화 기술 개발" (2004.8.31.) 1부.* * |
Also Published As
Publication number | Publication date |
---|---|
KR102172317B1 (en) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101700667B1 (en) | Storage network data allocation | |
JP4767057B2 (en) | Hash value generation program, storage management program, determination program, and data change verification device | |
CN102137157A (en) | Cloud memory system and implementation method thereof | |
US20080244619A1 (en) | External storage device and method of automatically operating the same | |
US9165006B2 (en) | Method and system for managing data storage and access on a client device | |
US8332584B2 (en) | Method of combining and managing file systems for memory space and a computer system | |
JP5414943B2 (en) | System and method for managing a virtual tape library domain | |
US20160004715A1 (en) | Minimizing Metadata Representation In A Compressed Storage System | |
US9916096B2 (en) | Increasing data storage capacity | |
US10311026B2 (en) | Compressed data layout for optimizing data transactions | |
KR20150074571A (en) | Tape storage system and method of controlling the same | |
US10254965B2 (en) | Method and apparatus for scheduling block device input/output requests | |
WO2022233202A1 (en) | Tape reposition management in tape data storage drive | |
US20180157425A1 (en) | Storage control apparatus, storage apparatus, and non-transitory computer-readable recording medium having control program stored therein | |
CN105591749B (en) | A kind of authorization processing method, device and system | |
JP2013089275A (en) | Data library device | |
CN113127415A (en) | Method, device, medium and electronic equipment for processing real-time stream file | |
CN110688057B (en) | Distributed storage method and device | |
US8302154B2 (en) | Automatic and adjustable system and method for synchronizing security mechanisms in database drivers with database servers | |
KR102170180B1 (en) | Method and system for providing mass storage | |
US8656070B2 (en) | Striping with SCSI I/O referrals | |
CN104333803A (en) | Method, equipment and system for preventing frame loss in process of video editing | |
US20110320473A1 (en) | Dynamic determination of migration data | |
EP2725477B1 (en) | Method and system for managing data storage and access on a client device | |
US11316945B2 (en) | Vehicle multimedia system and memory management method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |