KR100938183B1 - 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 - Google Patents

병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 Download PDF

Info

Publication number
KR100938183B1
KR100938183B1 KR1020070105625A KR20070105625A KR100938183B1 KR 100938183 B1 KR100938183 B1 KR 100938183B1 KR 1020070105625 A KR1020070105625 A KR 1020070105625A KR 20070105625 A KR20070105625 A KR 20070105625A KR 100938183 B1 KR100938183 B1 KR 100938183B1
Authority
KR
South Korea
Prior art keywords
file
deleted
deletion
search
files
Prior art date
Application number
KR1020070105625A
Other languages
English (en)
Other versions
KR20090040054A (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 KR1020070105625A priority Critical patent/KR100938183B1/ko
Publication of KR20090040054A publication Critical patent/KR20090040054A/ko
Application granted granted Critical
Publication of KR100938183B1 publication Critical patent/KR100938183B1/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/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/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket

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

본 발명은 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법에 관한 것으로서, 사용자에 의하여 지정된 디렉토리 목록을 복수 개의 검색 그룹으로 분할하는 제1단계, 제1단계에서 분할된 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 제2단계, 상기 삭제 대상 파일 목록을 복수 개의 삭제 그룹으로 분할하는 제3단계, 및 상기 제3단계에서 분할된 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 제4단계를 포함함에 기술적 특징이 있다.
본 발명에 의하면, 스크래치 디스크 내의 불필요한 파일의 삭제시 병렬 처리 방식을 이용하여 삭제 대상 파일에 대한 검색 및 검색된 파일에 대한 삭제를 수행함으로써 불필요한 파일의 삭제에 걸리는 시간을 절감할 수 있는 효과가 있다.
병렬화, 스크래치 디스크, 검색, 삭제

Description

병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법과 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체{Method and apparatus for deleting files in a scratch disk using parallelization and computer readeable record medium for the same}
본 발명은 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법에 관한 것으로서, 보다 상세하게는 병렬 처리 방식을 이용하여 삭제 대상 파일에 대한 검색 및 검색된 파일에 대한 삭제를 수행함으로써 불필요한 파일의 삭제에 걸리는 시간이 단축되도록 한 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법에 관한 것이다.
대형 컴퓨터는 메인프레임 컴퓨터(main frame computer)라고도 하며, 빠른 속도로 작동되며 많은 입출력 장치를 신속하게 제어함으로써 많은 사용자가 함께 사용할 수 있는 컴퓨터이다. 일반적으로 이러한 대형 컴퓨터는 대부분 복수의 마이크로프로세서를 갖추고 복수의 처리 장치를 구비함으로써 하나의 프로그램상의 서로 다른 작업들을 동시에 처리할 수 있어 하나의 마이크로프로세서만을 가지는 개인용 컴퓨터에 비해 매우 빠른 처리 속도를 가진다.
한편, 용량이 큰 그래픽 작업 또는 대량의 데이터 작업 등으로 인하여 컴퓨터 프로그램이 요구하는 데이터의 크기가 점차 커지고 파일의 수가 증가함에 따라 프로그램을 원활하게 수행하기 위해서는 기본적인 홈디렉토리 이외에 별도의 대용량의 스크래치 디스크가 필요하게 되었다.
스크래치 디스크는 대용량의 데이터를 필요로 하는 프로그램을 실행하기 위하여 사용자가 작업 중 생성되는 임시데이터 등을 저장할 수 있는 큰 저장 공간으로서, 일반적으로 시스템에 연결된 디스크 내부의 하나의 파티션을 스크래치 디스크로 지정하거나 별도의 디스크를 연결하여 스크래치 디스크로 사용할 수 있다.
스크래치 디스크를 이용함으로써 사용자는 데이터의 크기에 구애받지 않고 대형 컴퓨터 상에서 필요한 작업을 수행할 수 있게 되었다. 그러나, 이러한 다수의 사용자가 이용하는 스크래치 디스크의 용량 또한 물리적으로 한계가 있으므로, 관리 정책에 따라 불필요한 파일을 적절하게 삭제함으로써 공동의 사용자가 함께 사용할 스크래치 디스크의 용량을 확보할 필요가 있다.
이러한 필요에 따라, 시스템 관리자는 스크래치 디스크의 불필요한 파일을 검색하여 이를 삭제하는 프로그램을 이용하여 스크래치 디스크를 주기적으로 정리하여 왔다. 그러나 기존의 삭제 프로그램은 대부분 하나의 디스크를 처음부터 끝까지 하나의 프로세스로 처리하는 방식으로서, 디스크의 용량이 점점 증대됨에 따라 파일의 검색 및 삭제에 많은 시간이 소요되는 문제점이 발생하였다. 특히 대형 컴퓨터에서 사용되는 스크래치 디스크는 많은 사용자가 계속하여 작업을 수행하고 있는 경우가 많으므로, 이러한 상황에서 디스크 정리를 위해 많은 시간이 소요된다면 시스템의 부하가 가중되고 자칫 사용자 입출력 파일이 손상될 위험성이 있다. 따라서 이와 같은 스크래치 디스크의 불필요한 파일 검색 및 삭제에 걸리는 시간을 절감하기 위한 기술이 요구되었다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법에 있어서, 병렬 처리 방식을 이용하여 삭제 대상 파일에 대한 검색 및 검색된 파일에 대한 삭제를 수행함으로써 불필요한 파일의 삭제에 걸리는 시간이 단축되도록 한 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및 이를 이용한 파일 삭제 방법을 제공하기 위한 것이다.
상기 목적을 달성하기 위한 본 발명은, 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법으로서, 사용자에 의하여 지정된 디렉토리 목록을 복수 개의 검색 그룹으로 분할하는 제1단계; 제1단계에서 분할된 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 제2단계; 상기 삭제 대상 파일 목록을 복수 개의 삭제 그룹으로 분할하는 제3단계; 제3단계에서 분할된 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 제4단계; 를 포함하는 것을 특징으로 한다.
여기서, 상기 복수 개의 검색 그룹은, 상기 디렉토리 목록에 포함된 디렉토리 중 최상위의 디렉토리 목록을 기준으로 균등하게 분할된 것을 특징으로 한다.
또한, 상기 제2단계는, 상기 검색 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 검색 그룹을 할당하는 제21단계; 상기 생성된 각각의 프로세스 내에서 상기 할당된 검색 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하여, 삭제 대상 파일인 경우 상기 파일에 대한 정보를 삭제 대상 파일 목록에 추가하는 제22단계; 를 포함하여 구성될 수 있으며, 상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것이 바람직하다.
한편, 상기 제22단계는, 상기 할당된 검색 그룹에 속한 디렉토리 중 어느 하나의 디렉토리를 선택하는 제22-1단계; 상기 선택된 디렉토리에 속한 파일 중 어느 하나의 파일을 선택하는 제22-2단계; 상기 파일이 삭제 대상 파일인지의 여부를 판단하여, 삭제 대상 파일인 경우 상기 파일을 삭제 대상 파일 목록에 추가하는 제22-3단계; 제22-1단계에서 선택된 디렉토리에 속한 모든 파일에 대하여 상기 제22-2단계 및 제22-3단계를 반복하여 수행하는 제22-4단계; 상기 할당된 검색 그룹에 속한 모든 디렉토리에 대하여 상기 제22-1단계 내지 제22-3단계의 과정을 반복하여 수행하는 제22-5단계; 를 포함하여 구성될 수 있다.
이 때, 상기 파일이 삭제 대상 파일인지의 여부를 판단하는 단계는,
상기 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단하는 제1판단 단계; 상기 제1판단 결과 상기 파일의 소유자가 삭제 예외 사용자일 경우 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 파일의 소유자가 삭제 예외 사용자가 아닐 경우, 상기 파일이 작업중인지 여부를 판단하는 제2판단 단계; 상기 제2판단 결과 상기 파일이 작업중인 경우 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 파일이 작업중이지 않은 경우, 상기 파일의 저장기간이 설정된 보존기간을 초과하는지 여부를 판단하는 제3판단 단계; 상기 제3판단 결과 상기 파일의 저장기간이 설정된 보존기간을 초과하지 않은 경우 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 파일의 저장기간이 설정된 보존기간을 초과하는 경우, 상기 파일은 삭제 대상 파일인 것으로 판단하는 단계;를 포함하는 것이 바람직하다.
또한, 상기 제4단계는, 상기 삭제 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 삭제 그룹을 할당하는 제41단계; 상기 생성된 각각의 프로세스 내에서 상기 할당된 삭제 그룹에 포함된 삭제 대상 파일을 삭제하는 제42단계; 를 포함하여 구성될 수 있으며, 상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것이 바람직하다.
한편, 상기 제1단계 내지 제4단계는 사용자에 의해 설정된 소정의 주기로 자동 실행될 수 있다.
상기 목적을 달성하기 위한 또 다른 본 발명은, 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치로서, 사용자에 의하여 지정된 디렉토리 목록 및 파일 검색부에서 생성된 삭제 대상 파일 목록을 각각 복수 개의 검색 그룹 및 삭제 그룹으로 분할하는 분할부; 상기 분할부에서 분할된 상기 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 파일 검색부; 상기 분할부에서 분할된 상기 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 파일 삭제부; 상기 분할부, 파일 검색부 및 파일 삭제부 각각의 실행을 제어하는 제어부; 상기 스크래치 디스크와 연결되어 상기 스크래치 디스크와의 통신을 수행하는 디스크 인터페이스부; 및 상기 제어부와 연결되며, 상기 파일 삭제 장치의 실행을 위한 파라미터를 사용자로부터 입력받기 위한 사용자 인터페이스부; 를 포함하는 것을 특징으로 한다.
여기서, 상기 분할부는, 상기 디렉토리 목록에 포함된 디렉토리 중 최상위의 디렉토리를 기준으로 상기 디렉토리 목록을 분할하여 복수 개의 검색 그룹을 형성하는 것을 특징으로 한다.
또한, 상기 파일 검색부는, 상기 검색 그룹의 갯수만큼의 독립된 프로세스들을 생성하고 각각의 프로세스마다 하나의 검색 그룹을 할당하며, 상기 생성된 각각의 프로세스는 병렬 처리 방식으로 동시에 수행되어 할당된 검색 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하고, 삭제 대상 파일인 경우 상기 파일에 대한 정보를 삭제 대상 파일 목록에 추가하도록 구성될 수 있다.
이 때, 상기 파일 검색부에서 생성된 각각의 프로세스는, 상기 할당된 검색 그룹 내의 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단하는 제1판단부; 상기 할당된 검색 그룹 내의 파일의 소유자가 삭제 예외 사용자가 아닐 경우, 상기 파일이 사용중인지 여부를 판단하는 제2판단부; 상기 할당된 검색 그룹 내의 파일의 저장기간이 사용자에 의해 설정된 보존기간을 초과하는지 여부를 판단하는 제3판단부;를 포함하도록 구성될 수 있다.
또한, 본 발명은 스크래치 디스크의 파일 삭제 장치를 사용자에 의해 설정된 소정의 주기마다 자동으로 실행하기 위한 자동 실행부를 더 포함하는 것이 바람직하다.
상기와 같은 본 발명에 의하면, 스크래치 디스크 내의 불필요한 파일의 삭제시 병렬 처리 방식을 이용하여 삭제 대상 파일에 대한 검색 및 검색된 파일에 대한 삭제를 수행함으로써 불필요한 파일의 삭제에 걸리는 시간을 절감하고 시스템의 불필요한 부하를 감소시킬 수 있는 효과가 있다.
본 발명의 상기 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하의 상세한 설명에 의하여 보다 명확하게 이해될 것이다.
본 발명의 설명에 앞서 본 발명과 관련된 공지 기능 또는 구성에 대한 구체적인 기술은 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략하기로 한다.
또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자 및 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 그러한 정의는 본 명세서 전반에 걸쳐 기재된 내용을 바탕으로 판단되어야 할 것이다.
도 1은 본 발명에 따른 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 의 구성도이다.
도시된 바와 같이, 본 발명에 따른 스크래치 디스크(1)의 파일 삭제 장치(2)는, 사용자에 의하여 지정된 디렉토리 목록 및 파일 검색부(22)에서 생성된 삭제 대상 파일 목록을 각각 복수 개의 검색 그룹 및 삭제 그룹으로 분할하는 분할부(21), 상기 분할부(21)에서 분할된 상기 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 파일 검색부(22), 상기 분할부(21)에서 분할된 상기 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 파일 삭제부(23), 상기 분할부(21), 파일 검색부(22) 및 파일 삭제부(23) 각각의 실행을 제어하는 제어부(24), 상기 스크래치 디스크(1)와의 통신을 수행하는 디스크 인터페이스부(25), 및 상기 파일 삭제 장치의 실행을 위한 파라미터를 사용자로부터 입력받기 위한 사용자 인터페이스부(26)을 포함하여 구성된다.
한편, 도면에는 도시되지 않았으나 본 발명에 따른 스크래치 디스크(1)의 파일 삭제 장치(2)는 사용자가 설정한 소정의 주기마다 자동으로 프로그램을 실행하기 위한 자동 실행부를 더 포함하여 구성될 수 있다.
상기 분할부(21)는, 상기 파일 검색부(22) 및 파일 삭제부(23)로 입력되는 정보를 복수 개의 그룹으로 분할하기 위한 것이다. 먼저, 사용자가 삭제할 파일이 포함되어 있는 대상 디렉토리의 목록을 지정하면 상기 분할부(21)는 이를 복수 개의 검색 그룹으로 분할한다. 분할되는 검색 그룹의 숫자는 본 발명의 사용자에 의 하여 지정이 가능하다. 검색 그룹의 숫자를 늘리면 파일 검색을 위한 프로세스가 그만큼 많아지므로 검색 속도는 감소하나 프로세스가 증가함에 따라 CPU 사용량이 증가하므로, 본 발명의 사용자는 이를 고려하여 적정한 갯수의 그룹으로 대상 디렉토리 목록을 분할할 수 있다.
상기 분할부(21)의 디렉토리 목록 분할은 지정된 디렉토리 목록 중 최상위 디렉토리만을 기준으로 균등하게 이루어진다. 예를 들어, 스크래치 디스크의 최상위 최상위 디렉토리가 6개이고, 각각의 디렉토리는 서로 다른 갯수의 서브디렉토리를 가질 경우, 만약 설정된 분할 수가 3이라면 서브디렉토리에 속한 파일의 숫자는 무시되고 최상위 디렉토리만을 기준으로 각각의 그룹마다 2개씩의 최상위 디렉토리 및 그에 따르는 서브디렉토리들의 파일이 할당된다.
상기 분할부(21)에서 분할된 디렉토리 목록을 이용하여 파일 검색부(22)에서 삭제 대상 파일을 검색하여 삭제 대상 파일 목록을 형성하면, 분할부(21)에서는 상기 삭제 대상 파일 목록을 다시 복수 개의 삭제 그룹으로 분할한다. 이 경우는 디렉토리 목록의 분할과는 달리 각각의 삭제 그룹이 동일한 수의 삭제 대상 파일을 포함하도록 균등하게 배분하게 된다. 또한 검색 그룹과 삭제 그룹이 항상 동일한 갯수일 필요는 없으며, 삭제 그룹의 숫자 또한 사용자가 검색 또는 삭제 속도 및 CPU 사용량을 고려하여 적정하게 설정할 수 있다.
파일 검색부(22)는, 상기 분할부(21)에서 분할된 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성한다. 구체적으로, 상 기 파일 검색부(22)는 분할부(21)에서 분할된 검색 그룹의 갯수만큼의 독립된 프로세스를 생성하여 각각의 프로세스마다 하나의 검색 그룹을 할당한다. 상기 프로세스들은 병렬 처리 방식으로 동시에 수행되어 해당 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하게 된다. 상기 각각의 프로세스에서 해당 파일이 삭제 대상 파일인지의 여부를 판단하는 구체적인 방법에 대해서는 도 3에서 후술하기로 한다.
파일 삭제부(23)는, 상기 분할부(21)에서 분할된 복수 개의 삭제 그룹에 포함된 파일을 삭제하는 기능을 수행한다. 파일 삭제부(23) 또한 파일 검색부(22)와 마찬가지로 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 수행된다.
제어부(24)는, 상기 분할부(21), 파일 검색부(22), 파일 삭제부(23) 각각의 실행을 제어하며, 각각의 구성요소들을 순서에 맞게 실행함으로써 본 발명이 원활히 수행될 수 있도록 하는 기능을 수행한다.
사용자 인터페이스부(26)는 본 발명의 실행을 위한 파라미터를 사용자로부터 입력받기 위한 부분이며, 텍스트 또는 그래픽 사용자 인터페이스를 가진다. 본 발명의 실행을 위해 필요한 파라미터로는 대상 디렉토리 목록, 파일 검색부(22) 및 파일 삭제부(23)에서 생성되는 프로세스의 갯수, 삭제 예외 사용자 정보, 스크래치 디스크(1) 내 파일의 보존 기간, 본 발명의 실행 주기 등이 있으며, 본 발명의 사용자는 사용자 인터페이스부(26)를 이용하여 상기 파라미터를 설정할 수 있다.
도 2는 본 발명에 따른 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법을 순차적으로 나타낸 흐름도이며, 도 3은 본 발명에 따른 스크래치 디스크의 파일 삭제 방법 중 삭제 대상 파일의 검색 과정을 구체적으로 나타낸 흐름도이다.
먼저, 본 발명의 사용자에 의하여 본 발명의 실행에 필요한 파라미터들을 설정한다(S200). 이와 같은 실행 환경의 설정은 본 발명의 실행시마다 반드시 필요한 것은 아니며, 별도의 변경이 없을 경우 이전 실행에서 설정된 파라미터들이 그대로 적용된다.
이후, 분할부(21)에 의하여 대상 디렉토리 목록은 복수 개의 검색 그룹으로 분할한다(S210). 앞서 언급한 바와 같이 상기 분할 과정은 상기 디렉토리 목록에 포함된 디렉토리 중 최상위의 디렉토리를 기준으로 하여 수행된다.
다음으로, 상기 S210 단계에서 분할된 복수 개의 검색 그룹에 대하여 파일 검색부(22)에서 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성한다(S220). 상술한 바와 같이, 상기 단계는 분할된 검색 그룹의 갯수만큼의 독립된 프로세스를 형성하여 병렬 처리 방식으로 수행된다.
본 단계의 실행에 있어 삭제 대상 파일의 검색 중 해당 파일이 삭제 대상 파일인지의 여부를 판단하기 위한 구체적인 과정을 도 3에 나타내었다.
먼저, 해당 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단한다(S221).
만약 상기 파일의 소유자가 삭제 예외 사용자일 경우 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고 다음 파일로 진행하며(S226), 상기 파일의 소유자가 삭제 예외 사용자가 아닐 경우, 다음으로 상기 파일의 소유자가 현재 작업 중인지 여부를 판단한다(S222).
상기 S222단계에서의 판단 결과 상기 파일의 소유자가 작업중인 경우, 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고 다음 파일로 진행하며(S226), 상기 파일의 소유자가 작업중이지 않은 경우, 마지막으로 상기 파일의 저장기간이 스크래치 디스크 사용정책에 의한 보존기간을 초과하는지 여부를 판단한다(S223).
상기 S223단계에서의 판단 결과 상기 파일의 저장기간이 설정된 보존기간을 초과하지 않은 경우 상기 파일은 삭제 대상 파일이 아닌 것으로 판단하고 다음 파일로 진행하며(S226), 상기 파일의 저장기간이 설정된 보존기간을 초과하는 경우, 상기 파일은 삭제 대상 파일인 것으로 판단되어 해당 파일의 정보를 삭제 대상 파일 목록에 업데이트한다(S224). 상기 과정은 해당 검색 그룹 내의 모든 파일에 대하여 수행된다(S225).
상기 S220 단계를 모두 수행하면 삭제 대상 파일 목록이 생성되며(S230), 분할부(21)에서는 상기 삭제 대상 파일 목록을 복수 개의 삭제 그룹으로 분할하게 된다(S240). 상기 삭제 대상 파일의 분할은 각각의 삭제 그룹이 동일한 갯수의 삭제 대상 파일을 포함하도록 균등하게 이루어진다.
다음으로, 상기 S240 단계에서 분할된 복수 개의 삭제 그룹에 대하여 파일 삭제부(23)에서 해당 그룹에 포함된 파일을 삭제한다(S250). 상기 단계는 대상 파일 검색 단계와 마찬가지로 분할된 삭제 그룹의 갯수만큼의 독립된 프로세스를 형성하여 병렬 처리 방식으로 수행된다.
이상, 본 발명의 구체적인 실시 형태에 대하여 상세하게 기술하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서도 다른 구체적인 형태로 실시할 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 본 발명은 본 상세한 설명에 기재된 것에 한정되는 것은 아닌 것으로 이해되어야만 한다. 본 발명의 권리범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 실시형태는 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
도 1은 본 발명에 따른 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치의 구성도.
도 2는 본 발명에 따른 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법을 순차적으로 나타낸 흐름도.
도 3은 본 발명에 따른 스크래치 디스크의 파일 삭제 방법 중 삭제 대상 파일의 검색 과정을 구체적으로 나타낸 흐름도.

Claims (19)

  1. 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법으로서,
    사용자에 의하여 지정된 디렉토리 목록을 복수 개의 검색 그룹으로 분할하는 제1단계;
    제1단계에서 분할된 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 제2단계;
    상기 삭제 대상 파일 목록을 복수 개의 삭제 그룹으로 분할하는 제3단계;
    제3단계에서 분할된 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 제4단계;
    를 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  2. 제1항에 있어서,
    상기 복수 개의 검색 그룹은,
    상기 디렉토리 목록에 포함된 디렉토리 중 최상위의 디렉토리 목록을 기준으로 균등하게 분할된 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 제2단계는,
    상기 검색 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 검색 그룹을 할당하는 제21단계;
    상기 생성된 각각의 프로세스 내에서 상기 할당된 검색 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하여, 삭제 대상 파일인 경우 상기 삭제 대상 파일에 대한 정보를 삭제 대상 파일 목록에 추가하는 제22단계;
    를 포함하며,
    상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  4. 제3항에 있어서,
    상기 제22단계는,
    상기 할당된 검색 그룹에 속한 디렉토리 중 어느 하나의 디렉토리를 선택하는 제22-1단계;
    상기 선택된 디렉토리에 속한 파일 중 어느 하나의 파일을 선택하는 제22-2단계;
    선택된 파일이 삭제 대상 파일인지의 여부를 판단하여, 삭제 대상 파일인 경우 상기 선택된 파일을 삭제 대상 파일 목록에 추가하는 제22-3단계;
    제22-1단계에서 선택된 디렉토리에 속한 모든 파일에 대하여 상기 제22-2단계 및 제22-3단계를 반복하여 수행하는 제22-4단계;
    상기 할당된 검색 그룹에 속한 모든 디렉토리에 대하여 상기 제22-1단계 내지 제22-3단계의 과정을 반복하여 수행하는 제22-5단계;
    를 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  5. 제4항에 있어서,
    선택된 파일이 삭제 대상 파일인지의 여부를 판단하는 단계는,
    상기 선택된 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단하는 제1판단 단계;
    상기 제1판단 결과 상기 선택된 파일의 소유자가 삭제 예외 사용자일 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일의 소유자가 삭제 예외 사용자가 아닐 경우, 상기 선택된 파일이 작업중인지 여부를 판단하는 제2판단 단계;
    상기 제2판단 결과 상기 선택된 파일이 작업중인 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일이 작업중이지 않은 경우, 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하는지 여부를 판단하는 제3판단 단계;
    상기 제3판단 결과 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하지 않은 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하는 경우, 상기 선택된 파일은 삭제 대상 파일인 것으로 판단하는 단계;
    를 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  6. 제1항에 있어서,
    상기 제4단계는,
    상기 삭제 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 삭제 그룹을 할당하는 제41단계;
    상기 생성된 각각의 프로세스 내에서 상기 할당된 삭제 그룹에 포함된 삭제 대상 파일을 삭제하는 제42단계;
    를 포함하며,
    상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  7. 제1항에 있어서,
    상기 제1단계 내지 제4단계는 사용자에 의해 설정된 소정의 주기로 자동 실행됨을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 방법.
  8. 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치로서,
    사용자에 의하여 지정된 디렉토리 목록 및 파일 검색부에서 생성된 삭제 대상 파일 목록을 각각 복수 개의 검색 그룹 및 삭제 그룹으로 분할하는 분할부;
    상기 분할부에서 분할된 상기 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 파일 검색부;
    상기 분할부에서 분할된 상기 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 파일 삭제부;
    상기 분할부, 파일 검색부 및 파일 삭제부 각각의 실행을 제어하는 제어부;
    상기 스크래치 디스크와 연결되어 상기 스크래치 디스크와의 통신을 수행하는 디스크 인터페이스부; 및
    상기 제어부와 연결되며, 상기 파일 삭제 장치의 실행을 위한 파라미터를 사용자로부터 입력받기 위한 사용자 인터페이스부;
    를 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치.
  9. 제8항에 있어서,
    상기 분할부는,
    상기 디렉토리 목록에 포함된 디렉토리를 최상위의 디렉토리를 기준으로 균등하게 분할하여 복수 개의 검색 그룹을 형성하는 것을 특징으로 하는 병렬화를 이 용한 스크래치 디스크의 파일 삭제 장치.
  10. 제8항 또는 제9항에 있어서,
    상기 파일 검색부는, 상기 검색 그룹의 갯수만큼의 독립된 프로세스들을 생성하고 각각의 프로세스마다 하나의 검색 그룹을 할당하며,
    상기 생성된 각각의 프로세스는 병렬 처리 방식으로 동시에 수행되어 할당된 검색 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하고, 삭제 대상 파일인 경우 상기 삭제 대상 파일에 대한 정보를 삭제 대상 파일 목록에 추가하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치.
  11. 제10항에 있어서,
    상기 파일 검색부에서 생성된 각각의 프로세스는,
    상기 할당된 검색 그룹 내의 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단하는 제1판단부;
    상기 할당된 검색 그룹 내의 파일이 사용중인지 여부를 판단하는 제2판단부;
    상기 할당된 검색 그룹 내의 파일의 저장기간이 사용자에 의해 설정된 보존기간을 초과하는지 여부를 판단하는 제3판단부;
    를 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치.
  12. 제8항에 있어서,
    상기 스크래치 디스크의 파일 삭제 장치를 사용자에 의해 설정된 소정의 주기마다 자동으로 실행하기 위한 자동 실행부를 더 포함하는 것을 특징으로 하는 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치.
  13. 병렬화를 이용하여 스크래치 디스크의 파일을 삭제하기 위한 컴퓨터로 읽을 수 있는 기록매체로서,
    사용자에 의하여 지정된 디렉토리 목록을 복수 개의 검색 그룹으로 분할하는 제1단계;
    제1단계에서 분할된 복수 개의 검색 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일의 존재 여부를 검색하고, 검색된 삭제 대상 파일의 목록을 생성하는 제2단계;
    상기 삭제 대상 파일 목록을 복수 개의 삭제 그룹으로 분할하는 제3단계;
    제3단계에서 분할된 복수 개의 삭제 그룹에 대하여 병렬 처리 방식을 이용하여 복수 개의 프로세스로 동시에 삭제 대상 파일을 삭제하는 제4단계;
    을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  14. 제13항에 있어서,
    상기 복수 개의 검색 그룹은,
    상기 디렉토리 목록에 포함된 디렉토리 중 최상위의 디렉토리 목록을 기준으로 균등하게 분할된 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  15. 제13항 또는 제14항에 있어서,
    상기 제2단계는,
    상기 검색 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 검색 그룹을 할당하는 제21단계;
    상기 생성된 각각의 프로세스 내에서 상기 할당된 검색 그룹 내의 파일이 삭제 대상 파일인지의 여부를 검색하여, 삭제 대상 파일인 경우 상기 삭제 대상 파일에 대한 정보를 삭제 대상 파일 목록에 추가하는 제22단계;
    를 포함하며,
    상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  16. 제15항에 있어서,
    상기 제22단계는,
    상기 할당된 검색 그룹에 속한 디렉토리 중 어느 하나의 디렉토리를 선택하는 제22-1단계;
    상기 선택된 디렉토리에 속한 파일 중 어느 하나의 파일을 선택하는 제22-2단계;
    선택된 파일이 삭제 대상 파일인지의 여부를 판단하여, 삭제 대상 파일인 경우 상기 선택된 파일을 삭제 대상 파일 목록에 추가하는 제22-3단계;
    제22-1단계에서 선택된 디렉토리에 속한 모든 파일에 대하여 상기 제22-2단계 및 제22-3단계를 반복하여 수행하는 제22-4단계;
    상기 할당된 검색 그룹에 속한 모든 디렉토리에 대하여 상기 제22-1단계 내지 제22-3단계의 과정을 반복하여 수행하는 제22-5단계;
    를 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  17. 제16항에 있어서,
    선택된 파일이 삭제 대상 파일인지의 여부를 판단하는 단계는,
    상기 선택된 파일의 소유자가 사용자에 의해 설정된 삭제 예외 사용자에 해당하는지 여부를 판단하는 제1판단 단계;
    상기 제1판단 결과 상기 선택된 파일의 소유자가 삭제 예외 사용자일 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일의 소유자가 삭제 예외 사용자가 아닐 경우, 상기 선택된 파일이 작업중인지 여부를 판단하는 제2판단 단계;
    상기 제2판단 결과 상기 선택된 파일이 작업중인 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일이 작업중이지 않은 경우, 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하는지 여부를 판단하는 제3판단 단계;
    상기 제3판단 결과 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하지 않은 경우 상기 선택된 파일은 삭제 대상 파일이 아닌 것으로 판단하고, 상기 선택된 파일의 저장기간이 설정된 보존기간을 초과하는 경우, 상기 선택된 파일은 삭제 대상 파일인 것으로 판단하는 단계;
    를 포함하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  18. 제13항에 있어서,
    상기 제4단계는,
    상기 삭제 그룹의 갯수만큼의 독립된 프로세스들을 생성하고, 각각의 프로세스마다 하나의 삭제 그룹을 할당하는 제41단계;
    상기 생성된 각각의 프로세스 내에서 상기 할당된 삭제 그룹에 포함된 삭제 대상 파일을 삭제하는 제42단계;
    를 포함하며,
    상기 프로세스들은 병렬 처리 방식으로 동시에 수행되는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  19. 제13항에 있어서,
    상기 제1단계 내지 제4단계는 사용자에 의해 설정된 소정의 주기로 자동 실행됨을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020070105625A 2007-10-19 2007-10-19 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 KR100938183B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070105625A KR100938183B1 (ko) 2007-10-19 2007-10-19 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070105625A KR100938183B1 (ko) 2007-10-19 2007-10-19 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Publications (2)

Publication Number Publication Date
KR20090040054A KR20090040054A (ko) 2009-04-23
KR100938183B1 true KR100938183B1 (ko) 2010-01-21

Family

ID=40763653

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070105625A KR100938183B1 (ko) 2007-10-19 2007-10-19 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

Country Status (1)

Country Link
KR (1) KR100938183B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506136A (zh) * 2017-08-07 2017-12-22 成都华为技术有限公司 一种垃圾回收的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970705795A (ko) * 1994-08-31 1997-10-09 아든 에스. 부커 데이타베이스 검색을 위한 병렬 처리 시스템(parallel processing system for traversing a data base)
KR19990013792A (ko) * 1997-07-11 1999-02-25 제프리 엘. 포맨 바이트 범위 API 로킹(byte range ATI locking)을 갖춘 병렬 파일 시스템 및 방법
JP2004287963A (ja) 2003-03-24 2004-10-14 Nec Corp 検索要求を並列処理する検索装置、検索方法、及びプログラム
KR20060038361A (ko) * 2005-10-27 2006-05-03 니트젠테크놀러지스 주식회사 스트리밍 기반의 컨텐츠 분산형 네트워크 시스템과 파일분할, 병합 및 재생 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970705795A (ko) * 1994-08-31 1997-10-09 아든 에스. 부커 데이타베이스 검색을 위한 병렬 처리 시스템(parallel processing system for traversing a data base)
KR19990013792A (ko) * 1997-07-11 1999-02-25 제프리 엘. 포맨 바이트 범위 API 로킹(byte range ATI locking)을 갖춘 병렬 파일 시스템 및 방법
JP2004287963A (ja) 2003-03-24 2004-10-14 Nec Corp 検索要求を並列処理する検索装置、検索方法、及びプログラム
KR20060038361A (ko) * 2005-10-27 2006-05-03 니트젠테크놀러지스 주식회사 스트리밍 기반의 컨텐츠 분산형 네트워크 시스템과 파일분할, 병합 및 재생 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506136A (zh) * 2017-08-07 2017-12-22 成都华为技术有限公司 一种垃圾回收的方法和装置

Also Published As

Publication number Publication date
KR20090040054A (ko) 2009-04-23

Similar Documents

Publication Publication Date Title
US11281377B2 (en) Method and apparatus for managing storage system
US8122116B2 (en) Storage management method and management server
US6477535B1 (en) Method and apparatus for concurrent DBMS table operations
JP4699837B2 (ja) ストレージシステム、管理計算機及びデータ移動方法
US8478731B1 (en) Managing compression in data storage systems
EP1826662A2 (en) Storage control device, and data migration method using storage control device
CN104268295B (zh) 一种数据查询方法及装置
CN104301360A (zh) 一种日志数据记录的方法、日志服务器及系统
US20160085750A1 (en) Storage apparatus and storage apparatus control method
JP2014500531A (ja) 効率的なデータストレージのためのファイル配置方法及びコンピュータシステム
CN103761053A (zh) 一种数据处理方法和装置
US9448727B2 (en) File load times with dynamic storage usage
CN102289451A (zh) 文件或文件夹查找方法和装置
US20140297983A1 (en) Method of arranging data, information processing apparatus, and recording medium
US9177274B2 (en) Queue with segments for task management
US20140304226A1 (en) Storage system
KR100938183B1 (ko) 병렬화를 이용한 스크래치 디스크의 파일 삭제 장치 및이를 이용한 파일 삭제 방법과 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
CN108804571B (zh) 一种数据存储方法、装置以及设备
US20080127194A1 (en) Job allocation program and job allocation method
KR101694299B1 (ko) 클라우드 스토리지의 저장장치를 관리하기 위한 방법 및 메타데이터 서버
KR101792189B1 (ko) 빅 데이터 처리 장치 및 방법
CN116069263B (zh) 文件系统的优化方法、装置、服务器、设备及存储介质
JP7050540B2 (ja) 論理記憶領域の配置制御装置、論理記憶領域の配置制御システム、論理記憶領域の配置制御方法、及び、論理記憶領域の配置制御プログラム
Herodotou Towards a distributed multi-tier file system for cluster computing
WO2021019746A1 (ja) 階層型ストレージ管理システム、階層型ストレージ制御装置、階層型ストレージ管理方法、及びプログラム

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
LAPS Lapse due to unpaid annual fee