KR100825721B1 - 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법 - Google Patents

객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법 Download PDF

Info

Publication number
KR100825721B1
KR100825721B1 KR1020060049023A KR20060049023A KR100825721B1 KR 100825721 B1 KR100825721 B1 KR 100825721B1 KR 1020060049023 A KR1020060049023 A KR 1020060049023A KR 20060049023 A KR20060049023 A KR 20060049023A KR 100825721 B1 KR100825721 B1 KR 100825721B1
Authority
KR
South Korea
Prior art keywords
cache
data
metadata
information
file
Prior art date
Application number
KR1020060049023A
Other languages
English (en)
Other versions
KR20070061120A (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 KR1020060049023A priority Critical patent/KR100825721B1/ko
Priority to US11/634,275 priority patent/US7797275B2/en
Publication of KR20070061120A publication Critical patent/KR20070061120A/ko
Application granted granted Critical
Publication of KR100825721B1 publication Critical patent/KR100825721B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/955Object-oriented

Abstract

본 발명은, 객체기반 스토리지 시스템에서 사용자 파일 관리자의 캐쉬 일관성 유지 시스템 및 방법에 관한 것으로, 타이머를 사용하여 시간 기반하에 라이트백(writeback) 캐쉬의 일관성을 유지함으로써 메타데이터와 데이터 정보를 효율적으로 관리하는 캐쉬 일관성 유지 시스템 및 방법에 관한 것이다. 이는 사용자의 접속이 늘어나더라도 각 사용자 파일 관리자들이 캐쉬 일관성 유지비용을 부담함으로써, 객체기반 스토리지 시스템의 전체 성능을 향상시키고, 정보의 일관성 및 효율성을 높이게 된다.
객체 기반 스토리지, 라이트백(writeback) 캐쉬, 캐쉬 일관성, 덴트리(dentry) 정보, 아이노드(inode) 정보

Description

객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의 시간 기반 캐쉬 일관성 유지 시스템 및 방법{System and method of time-based cache coherency maintenance in user file manager of object-based storage system}
도 1은 본 발명에 따른 객체 기반 스토리지 시스템의 일반적 구성에 대한 도면이다.
도 2는 본 발명의 바람직한 일실시예에 따른 사용자 파일 관리자의 내부 구성을 나타내는 도면이다.
도 3은 본 발명의 바람직한 일실시예에 따른 파일 관리자 내 캐쉬 일관성 유지 시스템에 대한 도면이다.
도 4는 본 발명의 바람직한 일실시예에 따른 덴트리정보 제공시 파일 관리자 의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 5는 본 발명의 바람직한 일실시예에 따른 덴트리 정보 제공시 아이노드정보를 활용한 파일관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 6은 도 5에서 파일관리자가 메타데이터 관리 서버로부터 덴트리 정보를 받아오는 과정에 대한 흐름도이다.
도 7은 본 발명의 바람직한 일실시예에 따른 데이터 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 8은 본 발명의 바람직한 일실시예에 따른 데이터 제공시 데이터 캐쉬의 상태 정보에 따른 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 9는 도 8에서 파일관리자가 객체 저장 장치로부터 데이터를 받아오는 과정에 대한 흐름도이다.
도 10은 본 발명의 바람직한 일실시예에 따른 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 11는 본 발명의 바람직한 일실시예에 따른 파일의 잠금 요청 처리시 아이노드정보를 활용한 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
본 발명은, 객체기반 스토리지 시스템 상의 캐쉬 일관성 유지 시스템 및 방법에 관한 것으로, 상세하게는 각각의 사용자 파일 관리자 내에서 시간 기반으로 미반영된 캐쉬를 반영하고 객체기반 스토리지 시스템으로부터 정보를 갱신하므로써 파일 관리자 내의 캐쉬 일관성을 유지하는 시스템 및 방법에 관한 것이다.
현재의 스토리지 기술은 여러 문제에 직면해 있다. 무엇보다도 기업이 이미 보유하고 있는 이질적인 IT 환경으로 인하여 여러 곳에 산재되어 있는 스토리지 저장소들에 존재하는 정보를 관리 및 활용하기가 매우 어렵다는 점이다. DAS(Direct Attached Storage)는 오랫동안 이용된 스토리지 기술이지만 거리 제약, 제한된 확장성 및 연결성으로 인해 고속의 데이터 전송이 필요한 제한된 응용에서 이용되고 있다. 근래에 들어서, Ethernet, Fibre Channel 등과 같은 연결망을 통해 스토리지를 공유하는 Storage Area Network(SAN)과 Network Attached Storage(NAS) 기술이 DAS를 대체해 가고 있는 추세이지만 이 기술들도 여전히 보안, 확장성, 이질적인 플랫 폼 간의 파일 공유 등에 있어 문제점들이 모두 해결되지 않았다. 따라서 기존의 스토리지 기술들이 갖는 문제점을 해소시킬 수 있는 방안으로, 객체에 기반한 스토리지 추상화를 제공하는 새로운 객체 기반 스토리지 기술이 연구되어 왔다.
이러한 객체 스토리지 기술에서의 객체는 파일 시스템과 유사한 인터페이스를 갖는 스토리지 컨테이너로서, 다음과 같은 3가지 구성요소들로 이루어지며 이는 각각 데이터(사용자가 스토리지에 저장시키는 데이터), 사용자 접근 속성 및 디바이스 관리 메타데이터(객체의 물리적인 저장을 관리하여 스토리지 다비이스에서 유지되는 부가 정보)이다. 특히 이러한 객체는 파일 시스템과 메타데이터 사이의 종속성을 제거하여 서로 다른 파일 시스템 간에도 데이터 공유가 가능하며 객체들이 개별적으로 취급되기 때문에 객체 기반 스토리지는 플랫폼 독립적인 데이터 공유와 응용 수준에서 데이터 보안 정책을 제공하며 OSD에 저장된 객체의 속성을 이용하여 자기 관리 등과 같은 지능형 디바이스 기능을 부가적으로 제공할 수 있게 되는 것이다.
일반적인 캐쉬 일관성 유지 서비스에 대해서, 종래에는 중앙 서버의 성능을 향상하기 위해서 수십 개의 고성능 CPU로 구성된 시스템들을 클러스터 형태의 미들 웨어 소프트웨어를 통해서 구현하였다. 또 다른 방식으로 특정한 객체(예, 대용량 멀티미디어 객체) 서비스에 대해서 전용 캐쉬 서버를 독립적으로 두어 효율적인 파일 서비스를 가능하게 하였다. 그러나 특정한 서비스 파일에 대해 최적화된 저장 구조를 가지므로 여러 종류의 파일을 지원할 수 없어서 범용성이 많이 떨어지게 된다. 그리고 기존 객체저장 스토리지 시스템은 사용자 파일 관리자의 캐쉬 일관성을 유지하기 위해서 일반적으로 메타데이터 관리 서버에 위치한 중앙 잠금 서버를 통하게 하므로써, 결국 서버의 네트워크 대역폭과 처리 능력이 객체기반 스토리지 시스템의 전체 성능을 결정하게 되었다.
그래서 하나의 객체 저장 스토리지 시스템의 수용할 수 있는 최대 사용자 수는 중앙 잠금 서버의 최대 처리능력에 의존하게 된다. 본 발명은, 이러한 문제점을 극복하기 위해서 각 사용자 파일 관리자에게 캐쉬 일관성 처리를 분담하게 하므로써 사용자 수에 관계없이 원활한 객체기반 파일 서비스를 제공하게 된다.
Jason Lango 외 4명이 발명하여 Network Appliance Inc.에 의해 미국 특허청에 2004년 10월 14일자로 출원하여 2005년 7월 28일부로 공개된 미국 특허청 공개번호 제 2005-0165828호인 발명은 캐쉬 서버를 독립적으로 두므로써 사용자에게 빠르고 효율적으로 미디어 데이터를 전송하는 방법 및 그 시스템에 관한 것이다. 상기 발명은 캐쉬 서버를 따로 두어야 하므로 추가적인 비용이 들게 되며 특히 캐슁의 대상 데이터가 특정 목적의 파일에 한정되어 대용량 객체 시스템에는 적합하지 않다는 문제점이 있다. 그리고 접속하는 사용자가 많아 지면 질수록 캐쉬 서버의 용량도 함께 증가되어야 하는 부담이 따른다.
본 발명이 이루고자 하는 기술적 과제는 객체기반 스토리지 시스템을 구현함에 있어서, 캐슁된 메타데이터와 데이터의 캐쉬 적재 시간 정보를 활용하여 일정 시간 동안만 캐쉬가 유효한 것으로 간주하여 시간 기반으로 사용자 파일 관리자가 개별적으로 캐쉬의 일관성을 유지할 수 있는 캐쉬 일관성 유지 시스템을 제공하는데 있다. 또 사용자로부터 덴트리정보 요청이나 데이터 요청 또는 파일 잠금의 요청이 있을 시, 사용자 파일관리자 내 시간 기반 캐쉬 일관성을 유지하면서 상기 요청들을 처리하는 방법을 제공하고자 한다.
상기의 기술적 과제를 달성하기 위한 본 발명의 시간 기반의 캐쉬 일관성 유지 시스템의 일실시예로, 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내 캐쉬 일관성 유지 시스템은 메타데이터와 데이터를 저장하는 라이트백(writeback) 캐쉬, 상기 라이트백 캐쉬에 저장시간을 기록하는 타이머, 상기 라이트백 캐쉬에서 일정한 시간이 지난 상기 메타데이터를 메타데이터, 관리 서버로부터 가져오는 메타데이터 캐쉬 제어기 및 상기 라이트백 캐쉬에서 일정한 시간이 지난 상기 데이터를 객체 기반 저장 장치로부터 가져오는 데이터 캐쉬 제어기를 포함하여 구성된다.
상기의 기술적 과제를 달성하기 위한 본 발명의 시간 기반의 캐쉬 일관성 유지 방법의 일실시예로, 덴트리정보 제공시 파일 관리자 내 시간 기반의 캐쉬 일관성 유지 방법은 객체 기반 스토리지 시스템에서 사용자로부터 덴트리정보 요청을 받는 단계, 캐쉬에 상기 요청받은 덴트리정보가 존재하지 않는 경우 메타데이터 관 리 서버로부터 상기 요청받은 덴트리정보를 가져와 상기 캐쉬에 저장하고 저장시간을 기록하는 단계, 상기 캐쉬에 상기 요청받은 덴트리정보가 존재하는 경우 상기 캐쉬에 존재하는 상기 덴트리정보의 저장 시간이 일정한 시간을 경과하였는지 체크하는 단계 및 상기 일정한 시간을 경과한 경우 상기 메타데이터 관리 서버로부터 상기 요청받은 덴트리정보를 새로 받아 상기 캐쉬를 갱신하고 갱신 시간을 기록하는 단계를 포함하여 구성된다.
상기의 기술적 과제를 달성하기 위한 본 발명의 캐쉬 일관성 유지 방법의 일실시예로, 데이터 제공시 파일 관리자 내 시간 기반 캐쉬 일관성 유지 방법은 객체 기반 스토리지 시스템에서 사용자로부터 데이터 요청을 받는 단계, 데이터 캐쉬에 상기 요청받은 데이터가 존재하지 않는 경우 객체 기반 저장 장치로부터 상기 요청받은 데이터를 가져와 상기 데이터 캐쉬에 저장하고 저장시간을 기록하는 단계, 상기 데이터 캐쉬에 상기 요청받은 데이터가 존재하는 경우 상기 데이터 캐쉬에 존재하는 상기 데이터의 저장 시간이 일정한 시간을 경과하였는지 체크하는 단계, 상기 일정한 시간을 경과한 경우 상기 객체 기반 저장장치로부터 상기 요청받은 데이터를 새로 받아 상기 데이터 캐쉬를 갱신하고 갱신 시간을 기록하는 단계를 포함하여 구성된다.
상기의 기술적 과제를 달성하기 위한 본 발명의 캐쉬 일관성 유지 방법의 일실시예로, 파일의 잠금 요청 처리시 파일 관리자 내 시간 기반의 캐쉬 일관성 유지 방법은 객체 기반 스토리지 시스템으로부터 파일의 잠금 요청을 받는 단계, 상기 잠금을 요청받은 파일의 메타데이터가 메타데이터 캐쉬 내에서 미반영(dirty)상 태인 경우 상기 데이터 캐쉬 내의 상기 데이터를 상기 객체 기반 저장 장치로 보내 반영케 하는 단계 및 상기 반영후 상기 잠금을 요청받은 파일의 상기 메타데이터 캐쉬 내 모든 메타데이터와 상기 잠금을 요청받은 파일의 상기 데이터 캐쉬 내 모든 데이터를 무효화시키는 단계를 포함하여 구성된다.
이하에서, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예에 대하여 상세히 설명하기로 한다.
도 1은 본 발명의 따른 객체 기반 스토리지 시스템의 일반적 구성에 관한 도면이다.
도 1를 참조하면, 객체기반 스토리지 시스템은 n개의 사용자 파일 관리자(100~101)와 메타데이터 관리 서버(110) 그리고 n'개의 객체기반 저장 장치(120~121)로 구성된다.
사용자 파일 관리자(100~101)는 사용자의 파일관련 요청(덴트리 정보요청, 데이터 요청, 파일 잠금 요청)을 받는 경우 메타데이터는 메타데이터 관리 서버(110)에게, 파일의 실제 데이터는 객체기반 저장 장치들(120~121)로부터 요구하게 된다. 객체로 구성된 파일의 구성정보를 관리하는 메타데이터 관리 서버는 사용자 파일 관리자의 요청시 그 타당성을 검사하고 요청받은 메타데이터를 네트워크를 통하여 사용자 파일 관리자에게 보낸다. 동일하게 객체를 관리하는 객체기반 저장장치는 사용자 파일 관리자의 요청시 객체 데이터를 사용자 파일 관리자에게 넘겨준다.
도 2는 본 발명의 바람직한 일실시예에 따른 사용자 파일 관리자의 내부 구 성을 나타내는 도면이다.
도 2를 참조하면, 파일시스템 관리자(221)는 파일 시스템 정보를 커널의 가상 파일 시스템(Virtual File System)(210)에 등록하거나 해제하는 기능을 제공하고, Namespace 처리기(222)는 파일 또는 디렉토리의 생성, 삭제, 검색, 이름변경 등과 같은 namespace 처리 기능을 제공한다. 객체처리기(225)는 SCSI(Small Computer System Interface) OSD(Object-based Storage Device) 명령을 통하여 객체기반 저장장치에게 파일을 구성하는 객체에 대한 생성, 삭제 및 입출력 등과 같은 객체의 처리기능을 제공한다. RPC(Remote Procedure Call) 스터브(226)는 RPC 프로토콜을 통하여 메타데이터 관리 서버에서 관리하는 메타데이터 정보를 접근할 수 있는 기능을 제공하고, 파일 접근 제어기(223)는 파일을 접근하는 사용자에 대한 인증 및 접근 제어를 제공하며, 캐쉬(224)는 파일 메타 데이터와 데이터를 캐슁한다.
사용자에 의한 캐슁된 데이터의 변경은 즉시 메타데이터 관리 서버 혹은 객체기반 저장장치에 반영하지 않고, 라이트백(writeback) 형태로 이뤄진다. 즉, 바로 반영하는 것이 아닌 일정한 시간이 흐른 후에 상기 메타데이터 관리 서버나 객체 기반 저장장치로 상기 정보를 반영한다. 또한 각각의 사용자 파일 관리자는 캐슁된 파일의 메타데이터와 파일 데이터에 대한 캐쉬 일관성을 유지시킨다. 끝으로 iSCSI initiator 드라이버(230)은 객체 처리기(225)에서 만들어진 SCSI OSD 명령어를 iSCSI(Internet SCSI) 프로토콜을 통해서 객체기반 저장장치에게 전송하는 역할을 한다. 이를 통하여 필요한 파일의 데이터를 객체 기반 저장장치로부터 가져오거 나 객체 기반 저장장치에 반영하게 된다.
도 3은 본 발명의 바람직한 일실시예에 따른 파일 관리자 내 캐쉬 일관성 유지 시스템에 대한 도면이다.
도 3을 참조하면, 라이트백(writeback) 캐쉬(320)는 메타데이터를 캐슁하는 덴트리(dentry) 캐쉬(321)와 아이노드(inode) 캐쉬(322) 및 파일의 데이터를 캐슁하는 데이터 캐쉬(323)가 존재한다. 메타데이터 캐쉬(321,322)의 일관성을 유지하는 메타 데이터 캐쉬 제어기(330)는 타이머(331)와 연동하여 메타 데이터 캐쉬 무효화시 RPC 스터브(340)를 통하여 메타데이터 관리 서버(350)로부터 새로운 메타데이터를 읽어 들인다. 데이터 캐쉬(323)는 데이터 캐쉬내 데이터가 만료되었을 때, 데이터 캐쉬 제어기(332)에 의해 객체 처리기(341)를 통하여 객체기반 저장장치(351)로부터 데이터를 새로 받아 데이터 캐쉬(323)를 갱신하므로써 데이터 캐쉬(323)의 일관성을 유지한다.
이하 상기 캐쉬 일관성 시스템 내에서 시간 기반의 캐쉬 일관성 유지 방법은 간략히 다음과 같다. 사용자 파일 관리자에서 파일관련 요청시 먼저 캐쉬(321,322)를 검색하며, 캐쉬(321,322)내 없으면 메타데이터는 메타데이터 관리 서버(350)에서 이를 읽어와 메타데이터 캐쉬(321,322)에 저장하고 메타데이터 캐쉬 적재 시간을 함께 저장한다. 마찬가지로 파일 데이터는 캐쉬(323)를 찾아본 후, 캐쉬내 없으면 객체기반 저장장치(351)로부터 이를 읽어 와서 데이터 캐쉬(323)에 저장하고 적재시간을 함께 저장한다. 다음으로 사용자의 메타데이터 요청시, 메타데이터 캐쉬(321,322)를 먼저 검색하는데, 캐쉬(321,322)내 요청된 메타데이터가 존재하고 캐쉬(321,322)가 유효(uptodate)상태이며 캐쉬(321,322)에 적재된 시간이 허용된 시간 이상이면 그 메타데이터는 무효화하고 메타데이터 관리 서버(350)로부터 메타데이터를 다시 읽어 오게 된다.
사용자의 데이터에 대한 요청도 데이터 캐쉬(323)를 먼저 검색하여, 요청받은 데이터가 존재하면 먼저 캐쉬 상태를 검사한다. 이 때 데이터 캐쉬(323)가 유효(uptodate) 상태이고 잠금(locked) 상태가 아니며 캐쉬 적재 시간이 주어진 시간 간격을 넘어서면 캐쉬(323)를 무효화시킨다. 무효화된 캐쉬(323)는 다시 객체기반 저장 장치(351)로부터 새로 읽어 와서 이를 사용자에게 넘겨준다. 마지막으로 사용자가 파일 잠금에 대한 요청이 있을 시에는 위에서와 같은 느슨한(loosely)한 일관성 제어가 아닌 정확한 캐쉬 일관성을 유지하여야 하므로, 읽기 혹은 쓰기 잠금을 얻고자 하는 파일의 캐슁된 미반영(dirty)상태의 메타데이터와 데이터를 메타데이터 관리 서버(350)와 객체기반 저장장치(351)에 각각 반영하고, 캐쉬내 그 파일의 모든 메타데이터와 데이터를 무효화시킨 후 잠금 요청을 처리한다. 아래의 도면에서 이에 대하여 자세히 설명하도록 한다.
도 4는 본 발명의 바람직한 일실시예에 따른 덴트리(dentry)정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
덴트리(dentry)는 디렉토리 엔트리(directory entry)를 이르는 것으로, 디렉토리 항목과 대응하는 파일간 연결에 대한 정보를 저장하고 있는 메타데이터를 말한다. 그리고 아이노드(inode)는 인덱스 노드(index node)로서 파일에 대한 여러 정보를 담고 있는데, 파일 한 개당 해당하는 아이노드(inode)는 한 개이고, 아이노 드(inode)에는 파일이 실제 디스크의 어디에 위치해 있는가,파일의 종류, 파일의 속성, 소유자, 그룹, 최근 수정시간, 접근시간 등의 정보가 포함되어 있다. 이하 각각 덴트리정보와 아이노드정보라 이른다.
도 4를 참조하여, 사용자로부터 덴트리 정보의 요청(400)에 따라 캐쉬 내에 상기 덴트리 정보가 존재하는지 체크하여 상기 캐쉬에 덴트리 정보가 존재하지 않으면(410), 메타데이터 관리 서버로부터 덴트리정보를 가져와(450) 캐쉬에 이를 저장하고 저장시간을 기록한다(460). 상기 캐쉬에 덴트리정보가 존재하는 경우(410)로 캐쉬에 덴트리정보가 적재된 시간이 일정한 시간을 넘어서면(420), 메타데이터 관리 서버로부터 덴트리정보를 새로 받아(430), 캐쉬를 갱신하고 갱신시간을 기록한다(440). 이후 캐쉬내 상기 덴트리 값을 사용자에게 넘겨준다(470).
도 5는 본 발명의 바람직한 일실시예에 따른 덴트리 정보 제공시 아이노드정보를 활용한 파일관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
메타데이터 관리 서버 상의 덴트리정보 삭제 가능성 및 아이노드정보를 고려한 파일관리자의 시간 기반 캐쉬 일관성 유지 방법으로 이하, 도 5를 참조하면 설명하면 다음과 같다.
사용자로부터 덴트리(dentry)정보의 요청(500)에 따라 메타 데이터 캐쉬 제어기는 덴트리(dentry) 캐쉬를 먼저 찾아 본 후, 상기 캐쉬에 덴트리정보가 존재하지 않으면(510), 덴트리 캐쉬에 새로운 덴트리정보를 위한 메모리 공간을 할당한다(551). 메타데이터 관리서버로부터 덴트리정보를 받아(552) 할당한 메모리 공간에 저장하고 타이머(331)로부터 현재시간 값을 받아와 저장시간을 기록한다(553). 캐슁된 덴트리정보는 소속되는 아이노드(inode)정보의 값을 가지고 있어야 하므로 새로운 아이노드정보를 하나 할당하여 덴트리정보와 연결시킨다(554). 그리고 해당 아이노드정보를 메타데이터 관리 서버로부터 읽어 들인다(541~542).
사용자로부터 요청한 덴트리정보가 메타 데이터 캐쉬에 있으면(510), 캐슁된 덴트리정보의 적재 시간 값을 가져온다. 캐쉬 적재 시간이 정해진 시간 간격을 넘어서면(520), 메타데이터 관리 서버로부터 덴트리정보를 다시 읽어 들이게 되는데 이 때 읽어 들인 덴트리정보가 다른 사용자 파일 관리자에 의해 이미 삭제된 것이면(530), 파일관리자의 메타데이터 캐쉬에 있는 덴트리정보의 아이노드를 가져온다(531). 그런 다음, 아이노드를 bad상태로 만들고(532), 할당된 덴트리정보를 삭제한 후 사용자에게 삭제되었다는 것을 통보준다(533).
그러나 메타데이터 관리 서버로부터 가져온 덴트리정보가 삭제되어 있지 않았으면(530), 덴트리정보값과 덴트리 캐쉬 적재 기간을 갱신한다(534). 만약 갱신한 덴트리정보의 아이노드정보가 유효(uptodate) 상태인 경우(540)(즉, 미반영(dirty)상태가 아니면), 메타데이터 관리 서버로부터 새롭게 읽어 들인(541) 아이노드(inode)정보 값으로 아이노드 캐쉬를 갱신한다(542). 그러나 상기 아이노드(inode)정보가 유효(uptodate)상태가 아니면(540), 메타데이터 관리 서버로부터 아이노드정보를 갱신하지 않고 이미 존재하는 덴트리 캐쉬 내 덴트리정보를 그대로 사용자에게 넘겨준다(560).
도 6은 도 5에서 파일관리자가 메타데이터 관리 서버로부터 덴트리 정보를 받아오는 과정에 대한 흐름도이다.
도 6을 참조하면, RPC 스터브(340)에게 사용자가 요청한 덴트리정보를 읽어 오도록 요청한다(600). RPC 서터브(340)는 네트워크를 통해서 요청형태를 RPC 프로토콜 형태로 변형하여 메타데이터 관리 서버(350)에게 전달하면 요청 받은 메타데이터 관리 서버(350)는 접근 권한을 검사하고 요구한 덴트리정보 값을 RPC 형태로 바꿔 요청한 사용자 파일 관리자의 RPC 스터브(340)에게 전달한다(610). RPC 스터브(340)는 메타데이터로부터 RPC 형태의 덴트리정보 값을 사용자 파일 관리자가 인식할 수 있는 데이터 형태로 변환한 후, 덴트리 캐쉬에 적재한다(620).
도 7은 본 발명의 바람직한 일실시예에 따른 데이터 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
도 7을 참조하면, 데이터 요청시(700), 데이터 캐쉬에 상기 요청받은 데이터가 존재하는 경우(710), 데이터 캐쉬의 적재 시간이 일정한 시간을 경과하였는지 체크한다(720). 만약 일정한 시간이 경과한 경우라면, 객체 기반 저장 장치로부터 새로운 데이터를 받아와(730), 데이터 캐쉬를 갱신하고 갱신시간을 기록한다(740). 만약 데이터 캐쉬에 상기 요청받은 데이터가 존재하지 않는 경우(710), 객체 기반 저장장치로부터 데이터를 받아(750) 이를 데이터 캐쉬에 저장하고 저장시간을 기록한다(760). 이후 사용자에게 데이터 캐쉬내 데이터 값을 넘겨준다(770).
도 8은 본 발명의 바람직한 일실시예에 따른 데이터 제공시 데이터 캐쉬의 상태 정보에 따른 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
상기 실시예는 데이터 캐쉬의 상태 정보(dirty, lock 등)에 따른 시간 기반 캐쉬 일관성을 유지하는 방법으로 이하, 도 8을 참조하여 설명하면 다음과 같다.
도 8을 참조하면, 사용자의 데이터 요청시(800), 데이터 캐쉬에서 상기 요청한 데이터가 있는지 찾아 데이터 캐쉬내에 없으면(810), 새로운 데이터 캐쉬 영역을 할당한다(851). 그리고 객체 기반 저장 장치로부터 상기 요청받은 데이터를 가져와(852), 데이터 캐쉬에 저장하고 타이머를 이용하여 저장시간을 기록한다(853).사용자가 요청한 데이터가 데이터 캐쉬에 있으면(810), 먼저 데이터 캐쉬의 적재 시간을 가져와 타이머로부터 얻은 현재시간이 적재된 시간과 정해진 시간간격의 합보다 크지 않으면(820), 사용자에게 데이터 캐쉬내의 데이터 값을 넘겨준다(860). 그러나 현재시간이 적재된 시간과 정해진 시간간격의 합보다 크면 먼저 데이터 캐쉬의 상태 정보를 가져온다(821). 상기 상태 정보가 미반영(dirty) 상태이거나(830) 잠금(locked) 상태 둘 다 아닌 경우(840) 데이터 캐쉬를 무효화시킨다(841). 그런 다음, 요청받은 데이터가 처음부터 데이터 캐쉬에 없었던 경우와 동일하게 처리한다(851~860). 만약 캐슁된 데이터가 미반영 상태이거나 잠금 상태이면, 파일관리자는 데이터 캐쉬 내에 존재하는 데이터 값을 사용자에게 넘겨준다(860).
도 9는 도 8에서 파일관리자가 객체 저장 장치로부터 데이터를 받아오는 과정에 대한 흐름도이다.
도 9를 참조하면, 객체 처리기에게 데이터를 읽어오도록 요청을 하면(900), 객체 처리기는 상기 요청한 데이터를 읽으라는 iSCSI OSD 명령어를 만든 후(910) 이를 iSCSI initiator에서는 iSCSI 프로토콜형태로 네트워크로 해당 객체기반 저장 장치(351)에게 보낸다(920). iSCSI 프로토콜로 연결되어 있는 객체저장 장치(351)는 iSCSI initiator의 iSCSI OSD 명령을 해석한 후, 요청한 객체의 데이터 영역을 iSCSI 프로토콜 형태로 요청한 iSCSI initiator에게 보내준다(930). iSCSI initiator의 명령어 처리가 끝나서 요청한 데이터가 수신될 때까지 기다린 객체 처리기는 수신된(940) 데이터를 할당받은 데이터 캐쉬에 저장한다(950).
도 10은 본 발명의 바람직한 일실시예에 따른 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도이다.
사용자의 파일 잠금(읽기 혹은 쓰기) 요청은 여러 클라이언트(사용자) 사이에 접근에 대한 동기화 도구이므로, 정확한 캐쉬 동기화가 요구된다. 이러한 잠금 요청에 따른 처리는 도 10을 참조하여 설명한다.
사용자의 파일 잠금 요청시(1000), 메타데이터 캐쉬에서 잠금 요청된 파일의 메타데이터를 가져온 후(1010), 그 상태가 미반영(dirty) 상태이면(1020), 메타데이터 관리 서버에 상기 메타데이터를 반영한다(1030). 다음으로 데이터 캐쉬에서 잠금 요청 파일의 데이터를 가져와(1040), 그 상태가 미반영(dirty)이면(1050), 객체 저장 장치에 상기 데이터를 반영한 후(1060), 상기 데이터 캐쉬를 무효화한다(1070). 단 그 상태가 미반영(dirty)가 아니면(1050) 상기 반영 없이, 데이터 캐쉬를 무효화한다. 이후 메타데이터 관리 서버로부터 파일 잠금을 얻어오게 된다(1080).
도 11는 본 발명의 바람직한 일실시예에 따른 파일의 잠금 요청 처리시 아이노드정보를 활용한 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법에 대한 흐름도 이다.
아이노드 정보를 활용하여 파일의 잠금 요청 처리시 시간 기반 캐쉬 일관성을 유지하는 방법으로 이하, 도 11을 참조하여 설명하면 다음과 같다.
사용자의 파일 잠금 요청시(1100) 요청된 파일의 아이노드정보 값을 가져온 후(1110), 아이노드 메타데이터의 캐슁된 상태에 따라 처리한다. 아이노드정보가 미반영(dirty) 상태이면(1120), RPC 스터브에게 아이노드 캐쉬 내 아이노드정보 값을 메타데이터 관리 서버에 반영하도록 요청한다(1121). 메타데이터 관리 서버는 RPC 스터브 요청에 따라 미반영(dirty)상태가 된 아이노드정보 값을 반영한다(1122). 그리고 갱신이 성공이면 사용자 파일 관리자의 RPC 스터브에게 이를 알려준다. RPC 서터브는 파일 관리자에게 아이노드정보의 상태를 유효(uptodate) 상태로 변환하게 한다(1123). 그러나 캐슁된 아이노드정보가 미반영(dirty)상태가 아니면(1120) 바로 데이터 갱신 처리 절차로 넘어가게 된다(1130~1053).
아이노드정보의 메타데이터의 갱신이 끝나면, 아이노드정보가 나타내는 데이터 캐쉬의 갱신을 처리한다. 아이노드정보를 통해 요청된 파일의 데이터가 있을 때까지, 데이터 캐쉬를 하나씩 가져와서 상태에 따라 처리한다(1130). 데이터 캐쉬의 상태가 미반영(dirty)이면(1140), 객체 처리기에게 데이터 캐쉬를 갱신하도록 SCSI OSD 객체 쓰기 명령어를 만들게 한다(1141). 그런 다음, iSCSI initiator에게 해당 객체기반 저장장치에게 이를 반영하도록 명령어와 미반영(dirty)상태인 데이터를 iSCSI 프로토콜 형태로 보낸다(1142). iSCSI initiator에 의해 요청받은 객체기반 저장장치는 데이터를 갱신한다(1143). 객체기반 저장장치에 의해 처리된 데이터 캐 쉬는 무효화하므로써(1144), 파일 잠금시 캐쉬 일관성을 유지하게 된다. 만약 아이노드정보를 통해 요청된 파일의 데이터가 더이상 존재하지 않는 경우(1130), RPC 스터브를 거쳐 메타데이터 관리 서버에 파일 잠금 요청을 한다(1051). 상기 잠금 요청을 받은 메타데이터 관리 서버는 이를 처리하게 됨으로써(1052) 결국 사용자 파일 관리자가 파일 잠금을 얻어 오게 된다.(1053).
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상기와 같이 본 발명은, 객체기반 스토리지 시스템을 구현함에 있어서 단일 중앙 잠금 서버가 아닌 사용자 파일 관리자 내 시간 기반으로 캐쉬 일관성을 유지함으로써 객체기반 스토리지 시스템의 전체 성능을 높이고 비교적 낮은 비용으로 고성능 스토리지 시스템을 실현할 수 있게 한다. 또한, 확장의 측면에 있어서도 각 캐쉬의 일관성 유지 부담이 서버에 집중되지 않으므로 메타데이터 관리 서버와 객체기반 저장장치의 추가적인 확장 없이 다수의 사용자를 처리할 수 있는 고성능 객체기반 스토리지 시스템을 구현할 수 있다.

Claims (18)

  1. 객체 기반 스토리지 시스템 상의 캐쉬 일관성 유지 시스템에 있어서,
    메타데이터와 데이터를 저장하는 라이트백(writeback) 캐쉬;
    상기 라이트백 캐쉬에 상기 메타데이터와 상기 데이터 저장시 저장시간을 기록하는 타이머;
    상기 메타데이터와 상기 데이터에 관한 요청을 받는 경우 상기 라이트백 캐쉬에서 상기 메타데이터가 일정한 시간이 경과하였는지 체크하여 경과되었음이 확인되면 상기 메타데이터를 메타데이터 관리 서버로부터 가져와서 상기 라이트백 캐쉬를 갱신하는 메타데이터 캐쉬 제어기; 및
    상기 메타데이터와 상기 데이터에 관한 요청을 받는 경우 상기 라이트백 캐쉬에서 상기 데이터가 일정한 시간이 경과하였는지 체크하여 경과되었음이 확인되면 상기 데이터를 객체 기반 저장 장치로부터 가져와서 상기 라이트백 캐쉬를 갱신하는 데이터 캐쉬 제어기;를 포함하는 것을 특징으로 하는 파일 관리자 내 시간 기반의 캐쉬 일관성 유지 시스템.
  2. 제 1항에 있어서,
    상기 라이트백(writeback) 캐쉬는 메타데이터 캐쉬와 데이터 캐쉬로 이루어지고, 상기 메타데이터 캐쉬는 덴트리(dentry)정보와 아이노드(inode)정보를 각각 저장하는 덴트리 캐쉬와 아이노드 캐쉬로 이루어지는 것을 특징으로 하는 파일 관리자 내 시간 기반의 캐쉬 일관성 유지 시스템.
  3. 제 1항에 있어서,
    사용자의 파일 잠금(lock) 요청이 있는 경우, 상기 메타데이터 캐쉬 제어기는 상기 메타데이터 캐쉬 내에 존재하는 상기 요청받은 파일의 미반영(dirty)된 메 타데이터를 상기 메타데이터 관리서버로 반영하고 상기 데이터 캐쉬 제어기는 상기 데이터 캐쉬 내에 존재하는 상기 요청받은 파일의 미반영(dirty)된 데이터를 상기 객체 기반 저장 장치로 반영하는 것을 특징으로 하는 파일 관리자 내 시간 기반의 캐쉬 일관성 유지 시스템.
  4. (a) 객체 기반 스토리지 시스템에서 사용자로부터 덴트리정보 요청을 받는 단계;
    (b) 캐쉬에 상기 요청받은 덴트리정보가 존재하지 않는 경우, 메타데이터 관리 서버로부터 상기 요청받은 덴트리정보를 가져와 상기 캐쉬에 저장하고 저장시간을 기록하는 단계;
    (c) 상기 캐쉬에 상기 요청받은 덴트리정보가 존재하는 경우, 상기 캐쉬에 존재하는 상기 덴트리정보의 저장 시간이 일정한 시간을 경과하였는지 체크하는 단계; 및
    (d) 상기 일정한 시간을 경과한 경우, 상기 메타데이터 관리 서버로부터 상기 요청받은 덴트리정보를 새로 받아 상기 캐쉬를 갱신하고 갱신 시간을 기록하는 단계;를 포함하는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  5. 제 4항에 있어서, 상기 단계(d)는
    상기 메타데이터 관리 서버에서 상기 요청받은 덴트리정보가 이미 삭제된 경 우, 상기 캐쉬내 이미 존재하는 상기 덴트리정보를 삭제하고 사용자에게 통보하는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  6. 제 4항에 있어서, 상기 단계(d)는
    상기 캐쉬에 저장된 상기 덴트리정보에 대한 아이노드정보를 상기 메타데이터 관리 서버로부터 가져와 상기 캐쉬에 저장하는 단계;를 더 포함하는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  7. 제 6항에 있어서, 상기 단계(d)는
    상기 캐쉬 내에 존재하는 상기 요청받은 덴트리정보에 대한 아이노드정보가 유효(uptodate) 상태인 경우, 상기 요청받은 덴트리정보에 대한 아이노드정보를 상기 메타데이터 관리 서버로부터 새로 받아 상기 캐쉬를 갱신하는 단계를 더 포함하는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  8. 제 6항에 있어서,
    상기 캐쉬는 덴트리 캐쉬와 아이노드 캐쉬로 이루어져 있으며, 상기 덴트리정보는 상기 덴트리 캐쉬에 저장되고, 상기 아이노드정보는 상기 아이노드 캐쉬에 저장되는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일 관성 유지 방법.
  9. 제 4항에 있어서,
    상기 메타데이터 관리 서버로부터 상기 덴트리정보 또는 상기 아이노드정보를 받아오는 경우 파일 관리자 내 RPC 서터브를 통하여 받는 것을 특징으로 하는 덴트리정보 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  10. (a) 객체 기반 스토리지 시스템에서 사용자로부터 데이터 요청을 받는 단계;
    (b) 데이터 캐쉬에 상기 요청받은 데이터가 존재하지 않는 경우, 객체 기반 저장장치로부터 상기 요청받은 데이터를 가져와 상기 데이터 캐쉬에 저장하고 저장 시간을 기록하는 단계;
    (c) 상기 데이터 캐쉬에 상기 요청받은 데이터가 존재하는 경우, 상기 데이터 캐쉬에 존재하는 상기 데이터의 저장 시간이 일정한 시간을 경과하였는지 체크하는 단계; 및
    (d) 상기 일정한 시간을 경과한 경우, 상기 객체 기반 저장장치로부터 상기 요청받은 데이터를 새로 받아 상기 데이터 캐쉬를 갱신하고 갱신 시간을 기록하는 단계;를 포함하는 것을 특징으로 하는 데이터 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  11. 제 10항에 있어서, 상기 (d)단계에서,
    상기 일정한 시간을 경과한 경우로 상기 데이터 캐쉬 내에 이미 존재하는 상기 데이터의 상태가 미반영(dirty)상태이거나 잠금(lock)상태인 경우 상기 데이터 캐쉬를 갱신하지 않는 것을 특징으로 하는 데이터 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  12. 제 10항에 있어서,
    상기 객체 기반 저장 장치로부터 상기 요청받은 데이터를 새로 받아 오는 경우, 파일 관리자의 객체 처리기 및 iSCSI 이니시에이터(initiator)를 통하여 받는 것을 특징으로 하는 데이터 제공시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  13. (a) 객체 기반 스토리지 시스템에서 사용자로부터 파일의 잠금 요청을 받는 단계;
    (b) 상기 잠금을 요청받은 파일의 메타데이터가 메타데이터 캐쉬 내에서 미반영(dirty)상태인 경우 상기 메타데이터 캐쉬 내의 상기 메타데이터를 상기 메타데이터 관리 서버로 보내 반영케 하는 단계;
    (c) 상기 잠금을 요청받은 파일의 데이터가 데이터 캐쉬내에서 미반영(dirty)상태인 경우, 상기 데이터 캐쉬 내의 상기 데이터를 상기 객체 기반 저장 장치로 보내 반영케 하는 단계; 및
    (d) 상기 반영 후 상기 잠금을 요청받은 파일의 상기 메타데이터 캐쉬 내 모 든 메타데이터와 상기 잠금을 요청받은 파일의 상기 데이터 캐쉬내 모든 데이터를 무효화시키는 단계;를 포함하는 것을 특징으로 하는 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  14. 제 13항에 있어서, 상기 단계(b)에서,
    상기 메타데이터를 상기 메타데이터 관리 서버로 보내 반영케 한 후 반영된 메타데이터의 상태를 유효(uptodate)상태로 변경하는 것을 특징으로 하는 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  15. 제 13항에 있어서,
    상기 메타데이터는 아이노드정보이며 상기 메타데이터 캐쉬는 아이노드 캐쉬인 것을 특징으로 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  16. 제 13항에 있어서,
    상기 잠금이 요청된 파일의 데이터는 상기 파일의 아이노드정보를 이용하여 상기 데이터 캐쉬로부터 가져오는 것을 특징으로 하는 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  17. 제 13항에 있어서,
    상기 단계(a)에서 상기 메타데이터를 상기 메타데이터 관리 서버에 반영시 상기 파일 관리자 내 RPC 서터브를 통하여 상기 메타데이터 관리 서버에 반영하고,
    상기 단계(b)에서 상기 데이터를 상기 객체 기반 저장 장치에 반영시 상기 파일 관리자 내 객체처리기와 iSCSI 이니시에이터(initiator)를 통하여 상기 객체 기반 저장 장치에 반영하는 것을 특징으로 하는 파일의 잠금 요청 처리시 파일 관리자의 시간 기반 캐쉬 일관성 유지 방법.
  18. 제 4항 내지 제 17항 중 어느 한 항에 기재된 상기 시간 기반 캐쉬 일관성 유지 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020060049023A 2005-12-08 2006-05-30 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법 KR100825721B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060049023A KR100825721B1 (ko) 2005-12-08 2006-05-30 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법
US11/634,275 US7797275B2 (en) 2005-12-08 2006-12-05 System and method of time-based cache coherency maintenance in user file manager of object-based storage system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20050119273 2005-12-08
KR1020050119273 2005-12-08
KR1020060049023A KR100825721B1 (ko) 2005-12-08 2006-05-30 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20070061120A KR20070061120A (ko) 2007-06-13
KR100825721B1 true KR100825721B1 (ko) 2008-04-29

Family

ID=38174997

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060049023A KR100825721B1 (ko) 2005-12-08 2006-05-30 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법

Country Status (2)

Country Link
US (1) US7797275B2 (ko)
KR (1) KR100825721B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101376320B1 (ko) * 2011-04-01 2014-03-21 (주)네오위즈게임즈 웹 환경에서 캐싱 효율을 높인 서버, 단말기 및 그 방법
KR20230075954A (ko) 2021-11-23 2023-05-31 (주)비아이매트릭스 데이터 캐싱을 수행하는 기법

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5393977B2 (ja) * 2007-12-27 2014-01-22 ソニー株式会社 情報処理装置、情報処理方法、コンテンツ授受システム、およびコンピュータプログラム
KR101453425B1 (ko) * 2008-12-18 2014-10-23 한국전자통신연구원 메타데이터 서버 및 메타데이터 관리 방법
US8209307B2 (en) * 2009-03-31 2012-06-26 Commvault Systems, Inc. Systems and methods for data migration in a clustered file system
KR101231135B1 (ko) * 2009-12-18 2013-02-15 한국전자통신연구원 시간 기반 메타데이터 캐시 일관성 제어 시스템 및 그 방법
US8880636B2 (en) * 2010-03-25 2014-11-04 Telefonaktiebolaget L M Ericsson (Publ) Caching in mobile networks
US8832061B2 (en) * 2010-07-02 2014-09-09 Salesforce.Com, Inc. Optimizing data synchronization between mobile clients and database systems
US8438335B2 (en) * 2010-09-28 2013-05-07 Intel Corporation Probe speculative address file
US8510510B1 (en) 2011-01-31 2013-08-13 Symantec Corporation File cache optimization using element prioritization
US8433694B1 (en) 2011-01-31 2013-04-30 Symantec Corporation File cache optimization using element de-prioritization
US9164922B2 (en) 2012-06-05 2015-10-20 Google Inc. Technique for passive cache compaction using a least recently used cache algorithm
US9560134B1 (en) * 2012-06-27 2017-01-31 Netapp, Inc. Storage array side write locking
KR101471879B1 (ko) * 2012-10-31 2014-12-11 삼성에스디에스 주식회사 하이퍼바이저 기반 서버 이중화 시스템, 그 방법 및 서버 이중화 컴퓨터 프로그램이 기록된 기록매체
US9280469B1 (en) * 2012-12-28 2016-03-08 Emc Corporation Accelerating synchronization of certain types of cached data
US9176877B2 (en) 2013-04-15 2015-11-03 International Business Machines Corporation Provision of early data from a lower level cache memory
US11416444B2 (en) * 2014-03-18 2022-08-16 Netapp, Inc. Object-based storage replication and recovery
WO2016118559A1 (en) * 2015-01-20 2016-07-28 Ultrata Llc Object based memory fabric
US11023538B2 (en) 2015-08-25 2021-06-01 International Business Machines Corporation System and methods for dynamic generation of object storage datasets from existing file datasets
US10474570B2 (en) * 2015-11-24 2019-11-12 Cisco Technology, Inc. Flashware usage mitigation
WO2017113351A1 (zh) 2015-12-31 2017-07-06 华为技术有限公司 写数据方法和装置以及系统
CN115470026A (zh) * 2018-06-25 2022-12-13 创新先进技术有限公司 数据缓存及缓存容灾方法和系统、缓存系统
KR20220025405A (ko) 2020-08-24 2022-03-03 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342151A (ja) 2001-05-16 2002-11-29 Nec Corp Wwwキャッシュシステム及びwwwデータ先読み方法
JP2003150444A (ja) 2001-11-19 2003-05-23 Fujitsu Ltd キャッシュメモリシステム
US20040186861A1 (en) 2003-01-17 2004-09-23 Phatak Shirish Hemant Method and system for use of storage caching with a distributed file system
JP2004334434A (ja) * 2003-05-06 2004-11-25 Hitachi Ltd 双方向コピー制御機能を有する記憶装置システム
US20050216658A1 (en) 2004-03-23 2005-09-29 Yoshiaki Muto Storage apparatus

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7730213B2 (en) * 2000-12-18 2010-06-01 Oracle America, Inc. Object-based storage device with improved reliability and fast crash recovery
US7320023B2 (en) * 2001-02-23 2008-01-15 Sun Microsystems, Inc. Mechanism for caching dynamically generated content
US6813690B1 (en) * 2001-06-12 2004-11-02 Network Appliance, Inc. Caching media data using content-sensitive identifiers
US6615318B2 (en) * 2002-01-22 2003-09-02 International Business Machines Corporation Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries
WO2005043279A2 (en) * 2003-10-31 2005-05-12 Disksites Research And Development Ltd. Device, system and method for storage and access of computer files

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342151A (ja) 2001-05-16 2002-11-29 Nec Corp Wwwキャッシュシステム及びwwwデータ先読み方法
JP2003150444A (ja) 2001-11-19 2003-05-23 Fujitsu Ltd キャッシュメモリシステム
US20040186861A1 (en) 2003-01-17 2004-09-23 Phatak Shirish Hemant Method and system for use of storage caching with a distributed file system
JP2004334434A (ja) * 2003-05-06 2004-11-25 Hitachi Ltd 双方向コピー制御機能を有する記憶装置システム
US20050216658A1 (en) 2004-03-23 2005-09-29 Yoshiaki Muto Storage apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101376320B1 (ko) * 2011-04-01 2014-03-21 (주)네오위즈게임즈 웹 환경에서 캐싱 효율을 높인 서버, 단말기 및 그 방법
KR20230075954A (ko) 2021-11-23 2023-05-31 (주)비아이매트릭스 데이터 캐싱을 수행하는 기법

Also Published As

Publication number Publication date
US7797275B2 (en) 2010-09-14
KR20070061120A (ko) 2007-06-13
US20070143340A1 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
KR100825721B1 (ko) 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법
US7552223B1 (en) Apparatus and method for data consistency in a proxy cache
JP4824085B2 (ja) ネットワークファイルシステムをキャッシュするシステム、及び方法
JP4547264B2 (ja) プロキシ・キャッシュに関する装置および方法
US8566299B2 (en) Method for managing lock resources in a distributed storage system
JP4547263B2 (ja) データをネットワーク中で処理する装置および方法
EP2176756B1 (en) File system mounting in a clustered file system
US6973542B1 (en) Detecting when to prefetch inodes and then prefetching inodes in parallel
US7765189B2 (en) Data migration apparatus, method, and program for data stored in a distributed manner
TWI232382B (en) A distributed storage system for data-sharing among client computers running different operating system types
US7464116B2 (en) Method and apparatus for cloning filesystems across computing systems
US7386674B1 (en) Method and apparatus to provide a unified readahead scheme for multiple sources
JP2021525926A (ja) ファイルシステムデータアクセス方法およびファイルシステム
US20200081867A1 (en) Independent evictions from datastore accelerator fleet nodes
CN110750507B (zh) 面向dfs的全局命名空间下的持久客户端缓存方法及系统
CN112653730A (zh) 一种用户态网络文件存储方法和系统
JP2005148962A (ja) ファイルシステム
US10387384B1 (en) Method and system for semantic metadata compression in a two-tier storage system using copy-on-write
US20080133609A1 (en) Object-based storage system for defferring elimination of shared file and method thereof
JP4327869B2 (ja) 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
US10055139B1 (en) Optimized layout in a two tier storage
US11341163B1 (en) Multi-level replication filtering for a distributed database
US7761418B2 (en) Method and product for sharing logged data objects within a distributed storage system
KR100785774B1 (ko) 객체 기반 파일 입출력 시스템 및 방법
US11853319B1 (en) Caching updates appended to an immutable log for handling reads to the immutable log

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
FPAY Annual fee payment

Payment date: 20110411

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee