Abstract:
본 발명은 공유 디스크(Shared-disk) 모델을 사용하는 다중 서버 데이터베이스 관리시스템(database management system, DBMS)에서의 버퍼 일관성 관리방법에 관한 것으로서, 해결하고자 하는 기술적 과제는 버퍼 일관성 문제를 발생시키는 페이지만을 서버 프로세서의 버퍼에서 선택적으로 삭제함으로써, 불필요한 작업을 줄여 버퍼의 사용을 효율적으로 하고, 다수의 서버 프로세스의 버퍼들 간의 일관성을 유지할 수 있는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리 시스템과 이를 이용한 버퍼 일관성 관리 방법을 제공하는 데 있다. 이를 위해, 본 발명에 따른 공유 디스크 모델을 사용하는 다중 서버 DBMS에서 버퍼 일관성 관리방법은, 서버 프로세스가 트랜잭션 수행 중 버퍼 페이지를 디스크로 쓰기(write-out)하는 경우 수정한 버퍼 페이지에 대한 정보인 페이지 정보(page-info)를 서버 프로세스 내의 페이지 정보 리스트(page-info list)에 저장하는 트랜잭션 수행 단계와, 서버 프로세스가 트랜잭션 수행 중 볼륨 로크를 획득한 경우 일관성 볼륨(coherency volume) 내의 페이지 정보(page-info) 페이지를 읽어서 버퍼의 내용을 데이터베이스와 일치시키는 볼륨 로크 획득단계 및 트랜잭션 수행단계 또는 볼륨 로크 획득단계를 수행한 후 트랜잭션 종료시에 서버 프로세스의 페이지 정보 리스트(page-info list)에 저장되어 있는 수정된 페이지 정보(page-info)를 일관성 볼륨(coherency volume)에 저장하는 트랜잭션 종료단계를 포함하는 것을 특징으로 한다. 다중 서버 데이터베이스 관리시스템(database management system, DBMS), 공유 디스크(Shared-disk), 버퍼, 일관성, 페이지
Abstract:
A two-level n-gram inverted index structure and a configuration method, and a query processing method and an index deriving method thereof are provided to reduce size and increase query processing performance by eliminating duplication of location information present in an n-gram inverted index. The n-gram inverted index is represented as relation following the first normal form(S310). It is confirmed that the duplication of the location information is presented by non-trivial MVD(Multi-Valued Dependency) of the represented relation(S320). The represented relation is decomposed into two relations following the fourth normal form to remove the duplication of the confirmed location information(S330). Two relations are respectively represented as a front-end inverted index and a back-end inverted index(S340).
Abstract:
본 발명은 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하기 위한 방법에 관한 것으로서, 특히 다사용자 저장 시스템의 버퍼 관리자에서 버퍼 해시 테이블의 해시 엔트리에 지속적으로 래치를 유지하지 않는 대신 올리려는 페이지에만 래치를 잡음으로써 교착 상태를 방지하기 위한 기술에 관한 것이다. 본 발명에 의하면, 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하는 방법에 있어서, 새로운 페이지 P 1 에 매뉴얼 듀레이션 로크를 설정하는 제 1단계와; 상기 새로운 페이지 P 1 에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 설정한 상태에서 해당 해시 체인에 P 1 이 존재하는 지를 확인하는 제 2단계와; 상기 확인 결과, 새로운 페이지 P 1 이 해시 체인에 존재하지 않으면, 설정된 래치를 해지한 후 희생자를 선정하는 제 3단계와; 상기 희생자로 선정된 페이지를 P 2 라 할 때, P 2 에 매뉴얼 듀레이션 로크를 설정하는 제 4단계; 및 상기 희생자가 연결되어 있던 해시 체인으로부터 P 2 를 분리하기 위하여 해당 래치를 요청하는 제 5단계를 포함하는 교착 상태 방지방법을 제시한다.
Abstract:
본 발명은 n-gram 역색인에 존재하는 위치 정보의 중복을 제거하여 n-gram에 비해 그 크기를 줄이고 질의 처리 성능을 향상시킬 수 있는 2단계 n-gram 역색인 구조 및 그 구성 방법과 질의 처리 방법 및 그 색인 도출 방법을 제공한다. 본 발명의 역색인은 문서로부터 추출된 서브시퀀스들을 용어로 사용하는 백-엔드 역색인 및 상기 서브시퀀스로부터 추출된 n-gram들을 용어로 사용하는 프런트-엔드 역색인으로 구성되며,상기 백-엔드 역색인은 문서로부터 서로 n-1(n : n-gram의 길이)씩 겹치도록 추출된 소정 길이의 서브시퀀스들을 용어로서 사용하고, 각 서브시퀀스에 대한 포스팅 리스트에는 그 서브시퀀스가 문서상에서 나타난 위치 정보들을 저장하며, 상기 프런트-엔드 역색인은 상기 서브시퀀스로부터 1-슬라이딩 방식으로 추출된 소정 길이의 n-gram들을 용어로서 사용하고, 각 n-gram에 대한 포스팅 리스트에는 그 n-gram이 서브시퀀스 상에서 나타난 위치 정보들을 저장하는 것을 특징으로 한다. 역색인, n-gram, 데이터베이스, 문자열, 서브시퀀스, 프런트-엔드 역색인, 백-엔드 역색인
Abstract:
본 발명은 다사용자 저장 시스템에서 희생자 버퍼 페이지를 선택하기 위한 재기회 희생자 버퍼 페이지 선정방법에 관한 것으로써, 특히 다사용자 환경에서 저장 시스템의 버퍼 교체 정책 중, 희생자 버퍼 페이지를 찾기 위해 사용되는 재기회(second chance) 희생자 버퍼 페이지 선정방법에 관한 것이다. 본 발명에 의하면, 희생자 선정을 위해 검색할 첫번째 버퍼 페이지를 지정하는 글로벌 변수의 값을 1만큼 증가시키는 제 1단계와; 임시로 선정된 희생자 버퍼 페이지를 다른 프로세스가 사용하고 있는지를 확인하는 제 2단계와; 최근에 참조된 버퍼 페이지의 재사용 가능성을 고려하여 희생자 버퍼 페이지를 선정하기 위해 상기 임시로 선정된 희생자 버퍼 페이지의 참조 비트가 참조 상태(1)인지 확인하는 제 3단계와; 상기 희생자로 선정된 버퍼에 페이지에 대한 후처리를 위해 선정된 버퍼 페이지의 정보를 다른 프로세스가 접근하지 못하도록 버퍼 페이지에 래치를 설정하는 제 4단계와; 상기 희생자로 선정된 버퍼 페이지를 다른 프로세스가 액세스하여 사용하고 있는지 검사하는 제 5단계와; 상기 검사결과, 선정된 버퍼 페이지가 다른 프로세스에 의해 사용 중이면 버퍼 페이지에 설정된 래치를 풀고 새로운 희생자를 찾기 위해 제 1단계부터 수행을 반복하는 제 6단계를 포함하는 것을 특징으로 하는 다사용자 저장 시스템에서의 개선된 재기회 희생자 버퍼 페이지 선정방법을 제시한다. 다사용자 환경, 저장시스템, 버퍼교체 정책, 재기회 선정, 희생자 버퍼페이지
Abstract:
본 발명은 저장 시스템이 익스텐트를 지원하여 페이지를 할당하는데 있어서 익스텐트 테이블 등의 추가적인 자료 구조를 사용하지 않고, 비트 맵만을 이용하여 페이지를 할당하는 방법에 관한 것이다. 저장 시스템은 디스크 내의 저장 공간을 일정한 크기의 페이지 단위로 관리하고, 비트 맵을 이용하여 페이지의 사용 여부를 나타낸다. 익스텐트는 물리적으로 인접된 페이지들의 집합으로서, 연속적으로 액세스 될 가능성이 있는 데이터들을 같은 익스텐트 내에 저장함으로써 연속된 디스크 페이지들을 읽고 쓰는 경우 디스크의 탐색 시간을 줄여 시스템의 성능을 크게 높일 수 있다. 그 기술적 해결 수단은 파일의 첫 번째 페이지 할당 시에는 수열을 사용하여 파일의 첫 번째 페이지 위치를 볼륨 내에서 균일하게 분포시키고, 파일의 첫 번째 이외의 페이지 할당 시에는 nearPageId를 이용하여 가능한 연관된 페이지들이 같은 익스텐트에 존재하도록 한다. 이와 같은 방법으로 페이지를 할당하는 경우, 익스텐트 테이블 등의 추가적인 자료 구조는 사용되지 않고, 단지 페이지의 사용 여부를 알기 위해서 비트 맵만이 이용된다. nearPageId는 새로 할당될 페이지가 nearPageId가 나타내는 페이지와 가능한 인접한 위치에 존재하도록 알려주는 파라미터이다.
Abstract:
본 발명은 다사용자 저장 시스템에서 희생자 버퍼 페이지를 선택하기 위한 재기회 희생자 버퍼 페이지 선정방법에 관한 것으로써, 특히 다사용자 환경에서 저장 시스템의 버퍼 교체 정책 중, 희생자 버퍼 페이지를 찾기 위해 사용되는 재기회(second chance) 희생자 버퍼 페이지 선정방법에 관한 것이다. 본 발명에 의하면, 희생자 선정을 위해 검색할 첫번째 버퍼 페이지를 지정하는 글로벌 변수의 값을 1만큼 증가시키는 제 1단계와; 임시로 선정된 희생자 버퍼 페이지를 다른 프로세스가 사용하고 있는지를 확인하는 제 2단계와; 최근에 참조된 버퍼 페이지의 재사용 가능성을 고려하여 희생자 버퍼 페이지를 선정하기 위해 상기 임시로 선정된 희생자 버퍼 페이지의 참조 비트가 참조 상태(1)인지 확인하는 제 3단계와; 상기 희생자로 선정된 버퍼에 페이지에 대한 후처리를 위해 선정된 버퍼 페이지의 정보를 다른 프로세스가 접근하지 못하도록 버퍼 페이지에 래치를 설정하는 제 4단계와; 상기 희생자로 선정된 버퍼 페이지를 다른 프로세스가 액세스하여 사용하고 있는지 검사하는 제 5단계와; 상기 검사결과, 선정된 버퍼 페이지가 다른 프로세스에 의해 사용 중이면 버퍼 페이지에 설정된 래치를 풀고 새로운 희생자를 찾기 위해 제 1단계부터 수행을 반복하는 제 6단계를 포함하는 것을 특징으로 하는 다사용자 저장 시스템에서의 개선된 재기회 희생자 버퍼 페이지 선정방법을 제시한다.
Abstract:
본 발명은 저장 시스템이 익스텐트를 지원하여 페이지를 할당하는데 있어서 익스텐트 테이블 등의 추가적인 자료 구조를 사용하지 않고, 비트 맵만을 이용하여 페이지를 할당하는 방법에 관한 것이다. 저장 시스템은 디스크 내의 저장 공간을 일정한 크기의 페이지 단위로 관리하고, 비트 맵을 이용하여 페이지의 사용 여부를 나타낸다. 익스텐트는 물리적으로 인접된 페이지들의 집합으로서, 연속적으로 액세스 될 가능성이 있는 데이터들을 같은 익스텐트 내에 저장함으로써 연속된 디스크 페이지들을 읽고 쓰는 경우 디스크의 탐색 시간을 줄여 시스템의 성능을 크게 높일 수 있다. 그 기술적 해결 수단은 파일의 첫 번째 페이지 할당 시에는 수열을 사용하여 파일의 첫 번째 페이지 위치를 볼륨 내에서 균일하게 분포시키고, 파일의 첫 번째 이외의 페이지 할당 시에는 nearPageId를 이용하여 가능한 연관된 페이지들이 같은 익스텐트에 존재하도록 한다. 이와 같은 방법으로 페이지를 할당하는 경우, 익스텐트 테이블 등의 추가적인 자료 구조는 사용되지 않고, 단지 페이지의 사용 여부를 알기 위해서 비트 맵만이 이용된다. nearPageId는 새로 할당될 페이지가 nearPageId가 나타내는 페이지와 가능한 인접한 위치에 존재하도록 알려주는 파라미터이다. 저장 시스템, 비트 맵, 익스텐트, 페이지 할당
Abstract:
PURPOSE: A buffer consistency management method for a multi-server DBMS(Database Management System) is provided to improve the performance of the multi-serve DBMS by processing buffer consistency based on the minimum information about the page amended and the storage and data structure of the limited size. CONSTITUTION: If a server process writes out a buffer page to a disk in transaction, the page information of the changed buffer page is stored to a page information list of the server process. If the server process gets a volume lock in the transaction, the content of buffer reads the page information page within the coherent volume, and equalizes the page to the database. If the transaction is finished, the changed page information stored in the page information list is stored to the coherent volume.
Abstract:
본 발명은 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하기 위한 방법에 관한 것으로서, 특히 다사용자 저장 시스템의 버퍼 관리자에서 버퍼 해시 테이블의 해시 엔트리에 지속적으로 래치를 유지하지 않는 대신 올리려는 페이지에만 래치를 잡음으로써 교착 상태를 방지하기 위한 기술에 관한 것이다. 본 발명에 의하면, 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하는 방법에 있어서, 새로운 페이지 P 1 에 매뉴얼 듀레이션 로크를 설정하는 제 1단계와; 상기 새로운 페이지 P 1 에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 설정한 상태에서 해당 해시 체인에 P 1 이 존재하는 지를 확인하는 제 2단계와; 상기 확인 결과, 새로운 페이지 P 1 이 해시 체인에 존재하지 않으면, 설정된 래치를 해지한 후 희생자를 선정하는 제 3단계와; 상기 희생자로 선정된 페이지를 P 2 라 할 때, P 2 에 매뉴얼 듀레이션 로크를 설정하는 제 4단계; 및 상기 희생자가 연결되어 있던 해시 체인으로부터 P 2 를 분리하기 위하여 해당 래치를 요청하는 제 5단계를 포함하는 교착 상태 방지방법을 제시한다. 다사용자, 저장시스템, 버퍼 관리자, 교착 방지, 버퍼 테이블, 해시 엔트리