KR100194589B1 - T-Tree Rollback Method in Distributed Main Memory Database Management System - Google Patents

T-Tree Rollback Method in Distributed Main Memory Database Management System Download PDF

Info

Publication number
KR100194589B1
KR100194589B1 KR1019960038021A KR19960038021A KR100194589B1 KR 100194589 B1 KR100194589 B1 KR 100194589B1 KR 1019960038021 A KR1019960038021 A KR 1019960038021A KR 19960038021 A KR19960038021 A KR 19960038021A KR 100194589 B1 KR100194589 B1 KR 100194589B1
Authority
KR
South Korea
Prior art keywords
tree
rollback
relation
dbms
main memory
Prior art date
Application number
KR1019960038021A
Other languages
Korean (ko)
Other versions
KR19980019780A (en
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 KR1019960038021A priority Critical patent/KR100194589B1/en
Publication of KR19980019780A publication Critical patent/KR19980019780A/en
Application granted granted Critical
Publication of KR100194589B1 publication Critical patent/KR100194589B1/en

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 ATM교환기 시스템의 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서 T-트리 색인 구조를 롤백하는 방법에 관한 것으로서, 본 발명은 분산 실시간 시스템인 ATM교환기의 DBMS가 사용자의 질의 요구를 처리하는 과정에서 트랜잭션의 중지가 발생하였을 때 기 작성된 로그를 역으로 이용하여 메타 데이터베이스 및 릴레이션을 롤백한 후 T-트리 색인 구조를 효과적으로 롤백시킴으로써, T-트리 롤백 프로세스로 인하여 사용자의 트랜잭션 중지 요구에 보다 빨리 응답할 수 있어 교환기 응용 프로그램의 성능을 향상시킬 수가 있는 것이다.The present invention relates to a method for rolling back a T-tree index structure in a distributed main memory database management system (DBMS) of an ATM switch system. The present invention relates to a process in which a DBMS of an ATM switch, which is a distributed real-time system, processes a user's query request. Responds to a user's request to abort a transaction more quickly because the T-tree rollback process rolls back the meta-database and relations and then rolls back the meta-database and relations using the previously written log in reverse when a transaction aborts. This can improve the performance of the exchange application.

Description

분산 주기억장치 데이터 베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법T-Tree Rollback Method in Distributed Main Memory Database Management System (DBMS)

제1도는 본 발명에서 적용되는 ATM교환기 시스템의 분산구조를 갖는 주기억장치 DBMS의 구조도.1 is a structural diagram of a main memory DBMS having a distributed structure of an ATM switch system applied in the present invention.

제2도는 본 발명에서 원형 큐의 구조를 갖는 롤백 큐의 구성도.2 is a block diagram of a rollback queue having a structure of a circular queue in the present invention.

제3도는 본 발명에 따른 MMDB의 구성을 나타낸 것이다.3 shows the configuration of the MMDB according to the present invention.

제4도는 본 발명의 ATM교환기 시스템의 데이터베이스에 접근하는 응용 프로그램을 수행하는 프로세스가 트랜잭션의 중지시 MMDB의 롤백을 수행하는 흐름도.4 is a flowchart in which a process executing an application program that accesses a database of an ATM switch system of the present invention performs a rollback of an MMDB upon aborting a transaction.

제5도는 본 발명의 ATM교환기 시스템의 데이터베이스에서 T-트리 색인 구조를 재구성해주는 프로세스의 수행과정을 나타낸 흐름도.5 is a flowchart illustrating a process of reconstructing a T-tree index structure in a database of an ATM switch system of the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 메타 데이터베이스 영역 2 : 릴레이션 영역1: Meta Database Area 2: Relation Area

3 : T-트리 구조영역 10, 221, 321 : 로컬 데이터 베이스(LDB)3: T-tree structure area 10, 221, 321: Local database (LDB)

20, 222, 322 : 데이터 베이스 관리 시스템(DBMS)20, 222, 322: Database Management System (DBMS)

21 : DBKG(Datebase Kernel Group) 22 : DBBG(Datebase Backup Group)21: DBK (Datebase Kernel Group) 22: DBBG (Datebase Backup Group)

23 : DBSG(Datebase Supporting Group) 24 : DBTG(Datebase Transaction Group)23: DBA (Datebase Supporting Group) 24: DBTG (Datebase Transaction Group)

25 : DBQG(Datebase Query Group) 100 : 중앙교환 서브시스템(ACS)25: DBQG (Datebase Query Group) 100: Central Exchange Subsystem (ACS)

110 : 운용보전 프로세서(OMP) 115 : 모듈간 인터페이스 링크(Inter-Module Interface Link)110: operation maintenance processor (OMP) 115: Inter-Module Interface Link

120 : 중앙스위치 네트워트 모듈(CSNM) 130 : 디스크(disk)120: central switch network module (CSNM) 130: disk (disk)

200, 300 : 접속교환 서브시스템(ALS/S0, ALS/S1) 210, 310 : 액세스 스위치 네트워크 모듈(ASNM)200, 300: connection exchange subsystem (ALS / S0, ALS / S1) 210, 310: access switch network module (ASNM)

본 발명은 분산 주기억장치 데이터 베이스 관리시스템(DBMS)에서의 T-트리 롤백(rollback)방법에 관한 것으로서, 특히 분산 실시간 시스템인 ATM교환기의 DBMS가 사용자의 질의 요구를 처리하는 과정에서 트랜잭션 중지(abort)가 발생하였을 때 기 작성된 로그를 역으로 적용하여 메타 데이타베이스 및 릴레이션을 롤백한 후 T-트리 색인 구조를 효과적으로 롤백시키기 위하여 DBMS에 T-트리 롤백 프로세스를 따로 유지하는 방법에 관한 것이다.The present invention relates to a T-tree rollback method in a distributed main memory database management system (DBMS). In particular, the DBMS of an ATM exchange, which is a distributed real-time system, processes a user's query request. ), A method of maintaining a T-tree rollback process in a DBMS to effectively roll back the T-tree index structure after rolling back the meta database and relation by applying the previously written log in reverse.

종래의 분산된 환경에서 동작하는 주기억장치 데이터베이스 관리 시스템(DBMS; Database Management System)은 호 처리, 운용, 보전, 과금 및 통계 기능을 수행하는 응용 프로그램들의 데이터 조작을 지원하는 과정에서 트랜잭션 단위로 처리한다.A main memory database management system (DBMS) operating in a conventional distributed environment processes in a transaction unit in the process of supporting data manipulation of applications that perform call processing, operation, maintenance, billing and statistics functions. .

트랜잭션이 성공적으로 수행되지 못하여 롤백시키는 즉, 트랜잭션 내에서의 데이터 조작을 모두 트랜잭션 이전의 상태로 되돌리는 중지(abort)의 경우도 있다.There is also an abort that causes a transaction to fail successfully and rolls back, meaning that all data operations within the transaction are returned to their pre-transaction state.

일반적인 주기억장치 데이터베이스 관리 시스템에서는 데이터베이스에 접근하는 가장 효과적인 색인 구조로 T-트리 구조를 제공한다.The general main database management system provides the T-tree structure as the most effective index structure to access the database.

그리고 응용 프로그램 내에서 데이터베이스 내의 내용을 갱신하는 경우에 트랜잭션의 단위로 T-트리 구조를 포함하여 주기억장치의 모든 변경된 내용에 대한 정보를 주기억장치에 따로 저장한 후, 트랜잭션이 완료(commit)되면 그 내용을 디스크에 옮기고, 트랜잭션이 중지(abort)되면 그 내용을 이용하여 데이터베이스를 롤백시킨다.When updating the contents in the database in the application program, all information about the changed contents of the main memory, including the T-tree structure, is stored in the main memory separately after the transaction is completed. Move the contents to disk and use the contents to roll back the database when the transaction aborts.

트랜잭션 내에서 데이터베이스내의 내용 변경에 관한 정보의 저장은 그림자(shadow)페이지를 이용하거나 안정된 주기억장치(stable memory)를 사용하여 로그를 저장하거나 하는 다양한 기법으로 연구되었다.The storage of information about changes in the database within a transaction has been studied using various techniques such as using shadow pages or storing logs using stable memory.

그러나 데이터 변경에 관한 정보의 작성시 T-트리 구조와 실제 사용자의 메타 데이터베이스 및 릴레이션과는 구분하지 않는다는 점에서는 모두 공통적이다.However, the creation of information about data changes is common in that it does not distinguish between the T-tree structure and the actual user's meta database and relations.

따라서 트랜잭션이 중지되면 저장된 정보를 역으로 반영하여 롤백시키는 것으로 T-트리 구조와 메타 데이터베이스 및 릴레이션의 롤백을 마치게 된다.Therefore, when the transaction is aborted, rolling back by reflecting the stored information is completed to finish the rollback of the T-tree structure, meta database, and relation.

그러나 ATM교환기 시스템은 일반적인 분산 시스템의 구조와는 달리 각 서브 시스템에서 안정된 기억장치를 사용하지 않으면서 데이터베이스를 위한 주기억장치 영역이 충분히 크지않아 그림자 영역을 사용하지 못하고 in-place 갱신을 수행해야만 한다.Unlike the structure of a general distributed system, however, the ATM switch system does not use stable storage in each subsystem and the main memory area for the database is not large enough to use the shadow area and perform in-place update.

더욱이, 교환기의 구조적인 특성상 하나의 서브 시스템에만 디스크가 있으므로 그 서브 시스템에만 디스크가 있으므로 그 서브 시스템의 프로세서가 전체 시스템내 분산된 모든 서브 시스템으로부터 로그를 전송받아 디스크에 저장하여야 하는 부담이 있다. 그러므로 ATM교환기용 DBMS에서는 주기억장치 메타 데이터베이스, 릴레이션 그리고 T-트리 영역을 두고, 디스크에는 메타 데이터베이스 및 릴레이션만을 유지한다.In addition, since there is a disk only in one subsystem because of the structural characteristics of the exchange, there is a burden that the processor of the subsystem receives a log from all the subsystems distributed in the entire system and stores the disk in the disk. Therefore, the DBMS for the ATM exchange has a main memory meta database, a relation and a T-tree area, and only a meta database and a relation on the disk.

주기억장치 데이터베이스의 변경에 대한 로그는 메타 데이터베이스 및 릴레이션 영역의 변경 사항에 대해서만 작성한다.Logs for changes in the main memory database are created only for changes in the meta database and relation area.

교환기요 분산 데이터베이스에서는 트랜잭션이 중지될 때마다 로그를 이용하여 메타 데이터베이스 및 릴레이션만을 롤백시킨다.In the distributed database, whenever a transaction is stopped, the log is used to roll back only the meta database and the relation.

따라서 T-트리 구조를 위한 로그가 존재하지 않으므로 T-트리 구조만을 따로 롤백시키기 위한 효과적인 방법이 절실히 요구되었다.Therefore, since there is no log for the T-tree structure, an effective method for rolling back only the T-tree structure is urgently needed.

이에 따라 안출된 본 발명은 분산 실시간 시스템인 ATM교환기의 DBMS가 사용자의 질의 요구를 처리하는 과정에서 트랜잭션 중지가 발생하였을 때 T-트리 색인 구조를 롤백시켜 사용자의 트랜잭션 중지 요구에 보다 빨리 응답함으로써 교환기 응용 프로그램의 성능을 향상시키는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention has been proposed to roll back the T-tree index structure when a DBMS of an ATM exchange, which is a distributed real-time system, processes a user's query request, thereby responding to the user's transaction suspension request more quickly. Its purpose is to provide a T-tree rollback method in a distributed main memory database management system (DBMS) that improves the performance of applications.

상기 목적을 달성하기 위한 본 발명은, ATM교환기 시스템에서 주기억장치에 메타 데이터베이스, 릴레이션 그리고 T-트리의 영역을 갖는 데이터베이스 관리 시스템(DBMS)에 접근하는 응용 프로그램에 의해 수행되는 트랜잭션의 중지 발생시 T-트리 색인 구조를 갖는 릴레이션 정보를 롤백 큐에 롤백시키는 T-트리 롤백방법에 있어서, 상기 DBMS에서 사용자 응용 프로그램의 트랜잭션 수행 중에 작성한 로그를 이용하여 메타 데이터베이스 및 릴레이션을 그 트랜잭션 발생 이전의 상태로 복구시키는 단계와, 그 복구된 릴레이션이 T-트리 색인 구조를 갖는 릴레이션 정보일 경우 롤백 큐에 저장하는 단계와, 상기 해당 릴레이션에 대해 T-트리 롤백을 마칠때까지 다른 응용 프로그램의 프로세스도 접근을 금지시키는 단계로 이루어진 특징이 있다.In order to achieve the above object, the present invention provides a T-T when a transaction is interrupted by an application program accessing a database management system (DBMS) having an area of a meta database, a relation, and a T-tree in a main memory in an ATM exchange system. A T-tree rollback method for rolling back relation information having a tree index structure to a rollback queue, wherein the DBMS recovers a meta database and a relation to a state before the transaction occurs by using a log created during a transaction of a user application. Storing the restored relation in the rollback queue if the recovered relation is relation information having a T-tree index structure, and preventing other applications from accessing the process until the T-tree rollback is completed for the relation. There is a characteristic consisting of steps.

또 다른 본 발명의 특징은, 상기 롤백 큐에 롤백을 수행할 릴레이션 정보가 없을 경우 일정시간 동안 롤백 프로세스를 멈추었다가 다시 롤백 큐를 조사하는 단계와, 상기 롤백 큐에 릴레이션 정보가 존재할 경우 그 정보를 인출하는 단계와, 그 인출한 정보를 이용하여 해당 릴레이션의 T-트리 색인 구조를 롤백시키는 단계와, 상기 해당 릴레이션에 대한 접근 금지를 해지하는 단계로 이루어진 것을 특징으로 한다.Another feature of the present invention is to stop the rollback process for a predetermined period of time when there is no relation information to perform a rollback in the rollback queue, and then examine the rollback queue again, and if the relation information exists in the rollback queue, Fetching, rolling back the T-tree index structure of the relation using the retrieved information, and terminating access to the relation.

이와 같은 본 발명은 응용 프로그램의 트랜잭션 처리속도를 증가시키고 그로 인하여 교환기 시스템의 성능을 높일 수가 있는 것이다.As such, the present invention can increase the transaction processing speed of an application program and thereby increase the performance of the exchange system.

이하, 본 발명을 첨부된 도면에 의거하여 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도는 ATM교환기 시스템의 분산 구조를 갖는 주기억장치(main memory)DBMS의 구성도이다.1 is a configuration diagram of a main memory DBMS having a distributed structure of an ATM switch system.

이 ATM교환기는 중앙교환 서브시스템(ACS; ATM Centrl Switching Subsystem, 100)과 접속교환 서브시스템(ALS; ATM Local Switching Subsystem, 200)의 2개의 서브시스템을 구비한다.The ATM switch has two subsystems: an ATM Centrl Switching Subsystem (ACS) 100 and an ATM Local Switching Subsystem 200 (ALS).

중앙교환 서브시스템(100)은 시스템을 운용하고 유지 및 관리하는 기능과 다양한 트래픽 정보, 통계 및 과금 정보를 유지하는 기능 등을 수행하며 운용보전 프로세서(OMP; Operation and Maintenance Processor, 110)를 구비하고 있다.The central switching subsystem 100 performs a function of operating, maintaining, and managing the system, and maintaining various traffic information, statistics, and billing information, and includes an operation and maintenance processor (OMP) 110. have.

그리고 이 운용보전 프로세서(OMP, 110)는 로컬 데이터베이스(Local Database, LDB)(10)와, 후술할 주기억장치 데이터베이스(DBMS, 20)를 구비하고 있다.The operation maintenance processor (OMP) 110 includes a local database (LDB) 10 and a main memory database DBMS 20 to be described later.

접속교환 서브시스템(200, 300)은 일반 가입자의 접속처리를 수행하는 프로세서로서 가입자 정합회로와 함께 가입자 서비스 요구에 따른 접속 제어를 수행하며, 접속 수락제어, 적체 제아(congestion control) 등의 트래픽 제어 기능을 수행한다. 또한 접속교환 서브시스템(200, 300)은 가입자에 따라 다수로 설치되며, 호 연결 제어 프로세서(CCCP; Call Connection Control Processor)(220, 320)를 구비하고 있다.Access exchange subsystem (200, 300) is a processor that performs the access processing of the general subscriber, and performs the access control according to the subscriber service request together with the subscriber matching circuit, traffic control such as access acceptance control, congestion control, etc. Perform the function. In addition, the connection exchange subsystems 200 and 300 are installed in plurality according to the subscribers, and include call connection control processors (CCCPs) 220 and 320.

한편, 상기 중앙교환 서브시스템(100)에 구비된 중앙 스위치 네트워크 모듈(CSNM; Central Switch Network Module, 120)은 상기 각 접속교환 서브시스템(ALS/S0, S1; 200, 300)의 각 액세스 스위치 네트워크 모듈(ASNM; Acess Switch Network Module)(210, 310)에 대한 스위칭을 담당한다.On the other hand, the central switch network module (CSNM) 120 provided in the central switching subsystem 100 is connected to each access switch network of each of the connection switching subsystems (ALS / S0, S1; 200, 300). It is responsible for the switching for the module ASNM (Acess Switch Network Module) (210, 310).

그리고, 액세스 스위치 네트워크 모듈(ASNM, 210, 310)은 각 ALS(210, 310)내의 가입자 스위치를 담당하는데, 운용보전 프로세서(110)는 CSNM(120)의 한 포트에 그리고 각 호 연결 제어 프로세서(220, 320)는 각 액세스 스위치 네트워크 모듈(ASNM, 210, 310)의 한 포트에 각각 모듈간 인터페이스(IMI; Inter-Module Interface) 링크(115)를 통해 연결되어 메시지를 송수신한다.And, the access switch network module (ASNM, 210, 310) is responsible for the subscriber switch in each ALS (210, 310), the operation maintenance processor 110 is connected to one port of the CSNM (120) and each call connection control processor ( 220 and 320 are connected to one port of each access switch network module (ASNM) 210 and 310 through an inter-module interface (IMI) link 115 to transmit and receive messages.

이때, 호 연결 제어 프로세서(220, 320)들간의 통신은 ASNM-CSNM-ASNM의 3단 구조이고, 운용보전 프로세서(OMP, 110)와 호 연결 제어 프로세서(220, 320)간의 통신은 CSNM-ASNM의 2단 구조이다.At this time, the communication between the call connection control processor (220, 320) is a three-stage structure of ASNM-CSNM-ASNM, the communication between the operation maintenance processor (OMP, 110) and the call connection control processor (220, 320) is CSNM-ASNM It is a two-stage structure.

ATM DBMS는 여러 프로세서에 분산되어 있는 데이터를 관리하기 위하여 각 프로세서에 분산되어 존재하고 실시간 처리를 위해서 주기억장치에 상주하며 데이터를 검색 및 변경하는 기능, 원격 데이터 처리 기능, 중복 데이터 처리 기능, 데이터 백업기능, 데이터 회복 기능, 동시성 제어 기능, 트랜잭션 관리 기능 등을 제공하고 있다.ATM DBMS is distributed to each processor to manage data distributed to multiple processors, resides in main memory for real time processing, retrieves and modifies data, remote data processing, duplicate data processing, data backup It provides features, data recovery, concurrency control, and transaction management.

상기 설명된 프로세서들 중 운용보전 프로세서(OMP, 110)내의 DBMS(20)는 DBKG(DataBase Kernel Group)(21), DBBG((DataBase Backup Group)(22), DBSG((DataBase Supporting Group)(23), DBTG((DataBase Transaction Group)(24)그리고 DBQG((DataBase Query Group)(25)의 5개 블록을 구비하고, 호 연결 프로세서(220, 320)의 DBMS(22, 322)는 DBKG(21), DBSG(23), DBTG(24) 세 개의 블록을 구비한다.Among the above-described processors, the DBMS 20 in the operation preservation processor (OMP) 110 may include a Database Kernel Group (DBKG) 21, a Database Backup Group (DBBG) 22, and a Database Supporting Group (DBSG) 23. 5 blocks of DBTG (DataBase Transaction Group) 24 and DBQG (DataBase Query Group) 25, and DBMSs 22 and 322 of call connection processors 220 and 320 are DBKG (21). ), DBSG 23, and DBTG 24 are provided with three blocks.

호 연결 제어 프로세서(220, 320)와 비교하여 운용보전 프로세서(110)만의 차이점은 디스크가 장착되어 있다는 점과 운용자로부터 입력을 받을 수 있는 기능을 수행한다는 점이다. 따라서 운용보전 프로세서만이 디스크(130)의 접근을 수행하는 DBBG(22)블럭과, 운용자 터미널과 ATM교환기 시스템과의 인터페이스를 수행하는 DBQG(25)블럭을 구비한다.The difference between the operation preservation processor 110 and the call connection control processor 220 or 320 is that the disk is mounted and performs a function of receiving an input from an operator. Therefore, only the operation maintenance processor is provided with a DBBG 22 block for accessing the disk 130 and a DBQG 25 block for interfacing the operator terminal with the ATM switch system.

DBMS의 각 블록들(20, 222, 322)은 응용 프로그램 또는 사용자로부터 직접 입력되는 요구들로부터 데이터를 조작하도록 하는 요청을 받아 수행하고 그 결과를 되돌려 주는 역할을 분담한다.Each block 20, 222, 322 of the DBMS is responsible for receiving a request to manipulate data from requests input directly from an application program or a user, and returning the result.

DBKG(21)는 처리 요구가 들어온 데이터의 검색 및 변경 내용에 따라 실제로 데이터베이슨의 데이터를 검색, 변경, 동시성 제어, 로그 레코드의 생성 기능 등을 담당한다.The DBKG 21 is actually responsible for retrieving, changing, concurrency control, generating log records, and the like, of data in the database according to the retrieval and change of the data for which the processing request is received.

DBSG(23)는 응용 프로그램 내에서 원격 데이터에 대한 검색 및 변경 요구를 처리하도록 DBKG(21)에게 요구하는 기능과 원격 데이터 처리를 위해 타 프로세서의 DBMS간의 통신 기능을 수행하고, DBBG(22)는 변경을 요구한 데이터가 디스크(130) 백업을 필요로 할 경우 실제로 디스크에 있는 데이터베이스에 백업을 시키는 기능과 시스템 재시동시 데이터베이스를 회복하는 기능을 담당한다.The DBSG 23 performs a function of requesting the DBKG 21 to handle retrieval and change requests for remote data in an application, and a communication function between DBMSs of other processors for remote data processing, and the DBBG 22 If the data requesting a change requires a backup of the disk 130, it is responsible for backing up the database on the disk and recovering the database upon system restart.

DBTG(24)는 트랜잭션 관리 기능을 수행하고, DBQG(25)는 운용자 터미널 또는 PC상에서 발생하는 온-라인(On-Line) 대화형 질의어 처리 기능을 수행한다.The DBTG 24 performs a transaction management function, and the DBQG 25 performs an on-line interactive query processing function occurring on an operator terminal or a PC.

제2도는 원형 큐(circular queue)의 구조를 갖는 롤백 큐의 구성을 나타낸 것이다.2 shows the configuration of a rollback queue having a structure of a circular queue.

롤백 큐는 임계 섹션(critical section)에 두어 각 프로세서로부터의 배타적인 접근을 보장받아야 한다. 롤백 큐는 롤백되어야 할 릴레이션들의 정보를 포함하는 데이터 구조의 배열과 큐에 삽입시 그 위치를 가리키는 삽입 위치 정보 필드 및 큐로부터 정보 인출시 큐에 먼저 삽입된 정보를 가리키는 인출 위치 정보 필드로 이루어져 있다.Rollback queues should be placed in the critical section to ensure exclusive access from each processor. The rollback queue consists of an array of data structures containing information of relations to be rolled back, an insertion location information field indicating its position when inserted into the queue, and a retrieval location information field indicating information first inserted into the queue when information is retrieved from the queue. .

제3도는 분산 실시간 시스템인 ATM교환기 시스템의 각 서브시스템(ACS와 다수의 ALS)의 주기억장치에 상주하는 MMDB의 구성을 나타낸 구조도이다.3 is a structural diagram showing the configuration of the MMDB residing in the main memory of each subsystem (ACS and a plurality of ALS) of the ATM switching system, which is a distributed real-time system.

MMDB는 메타 데이터베이스 영역(1), 릴레이션(튜플 데이터베이스) 영역(2), T-트리 색인 구조의 영역(3)으로 나누어진다.The MMDB is divided into a meta database area 1, a relation (tuple database) area 2, and an area 3 of the T-tree index structure.

이 T-트리 색인 구조는 사용자에 의해 삽입된 데이터가 아닌 DBMS(20, 222, 322)가 튜플 데이터를 보다 빠르게 검색하고자 별도로 구성한 색인 구조로서, 주기억장치 데이터베이스에서 가장 효과적인 검색속도를 제공한다.This T-tree index structure is an index structure that DBMSs 20, 222, and 322, rather than data inserted by a user, separately configure to search for tuple data faster, and provides the most effective search speed in the main memory database.

본 발명에서는 이러한 T-트리 색인 구조를 후술할 첨부 도면에서와 같이 롤백시키는 것이다.In the present invention, the T-tree index structure is rolled back as in the accompanying drawings.

제4도는 ATM교환기 시스템의 데이터베이스에 접근하는 응용 프로그램을 수행하는 프로세서가 트랜잭션의 중지시 MMDB의 롤백을 수행하는 과정을 나타낸 순서도이다.4 is a flowchart illustrating a process of performing a rollback of an MMDB by a processor executing an application program that accesses a database of an ATM switch system.

먼저, DBMS에서 사용자 응용 프로그램의 트랜잭션 수행중에 작성한 로그를 역으로 적용하여 메타 데이터베이스 및 릴레이션을 그 트랜잭션 발생 이전의 상태로 복구시킨다(S1).First, the log created during the transaction of the user application in the DBMS is applied in reverse to restore the meta database and the relation to the state before the transaction occurs (S1).

그리고 만일 트랜잭션 내에서 갱신되었던 릴레이션이 T-트리 색인 구조를 갖는지를 조사하여(S2), T-트리 릴레이션이면 T-트리 구조도 롤백되어야 한다. 따라서 그 릴레이션의 정보는 롤백 큐에 삽입함으로써 저장한다(S3).If the relation updated in the transaction has a T-tree index structure (S2), if the relation is a T-tree relation, the T-tree structure must also be rolled back. Therefore, the relation information is stored by inserting it into the rollback queue (S3).

그후, 해당 릴레이션에 대하여는 T-트리 롤백을 마칠 때까지 어떠한 응용 프로그램의 프로세스도 접근하지 못하도록 표시를 한다(S4).Thereafter, the relation is marked so that no application program can access it until the T-tree rollback is completed (S4).

그러나, 상기 조사(S2)에 의해 트랜잭션 내에서 갱신되었던 T-트리 색인 구조를 갖는 릴레이션 정보가 아닐 경우 그 수행을 마친다.However, if it is not relation information having a T-tree index structure that has been updated in the transaction by the investigation S2, the execution is completed.

제5도는 ATM교환기 시스템의 데이터베이스에서 T-트리 색인 구조를 재구성해주는 롤백 프로세스의 수행 과정을 나타낸 순서도이다.5 is a flowchart illustrating a process of performing a rollback process to reconstruct a T-tree index structure in a database of an ATM exchange system.

롤백 프로세스는 먼저 롤백 큐에 접근하여 정보가 존재하는가를 조사한다(S11).The rollback process first accesses the rollback queue and checks whether information exists (S11).

만일 롤백 큐에 롤백을 수행할 릴레이션에 대한 정보가 하나도 없는 경우에는 수초간 프로세스를 멈추었다가(sleep하였다가)(S12) 다시 롤백 큐를 조사하는 과정을 반복한다.If there is no information on the relation to perform the rollback in the rollback queue, the process is paused (sleeped) for several seconds (S12) and the process of examining the rollback queue again is repeated.

한편, 롤백 큐에 정보가 존재하는 경우에는 가장 먼저 삽입된 정보를 인출한다(S13). 그리고 인출된 정보를 이용하여 해당 릴레이션의 T-트리구조를 롤백시킨다(S14). 그후에 해당 릴레이션에 대하여 접근 금지로 되어 있는 상태를 해지시킨다(S15).On the other hand, if information exists in the rollback queue, the first inserted information is extracted (S13). The T-tree structure of the relation is rolled back using the retrieved information (S14). Thereafter, the state that the access is prohibited to the relation is terminated (S15).

이와 같은 본 발명은 트랜잭션의 처리시 T-트리 색인 구조에 대한 로그를 작성하지 않음으로써 그 처리 속도가 빠르며 트랜잭션이 완료되었을 때의 로그 처리 속도 역시 빠르다. 그러나 트랜잭션을 수행하는 프로세스가 중지될 때 T-트리를 롤백시키는 작업까지 책임질 경우에는 실시간적 수행요구를 만족시킬 수 없게 된다.As described above, the present invention does not create a log for the T-tree index structure when processing a transaction, and thus the processing speed is fast, and the log processing speed when a transaction is completed is also fast. However, if the process that executes the transaction is stopped, it will not be able to satisfy the real-time execution requirement if it is responsible for rolling back the T-tree.

이와 같이 트랜잭션을 수행하는 프로세스는 T-트리를 직접 롤백시키지 않고 단지 해당 정보만을 저장함으로써 수행을 마치게 함으로써 응용 프로그램의 트랜잭션 처리 속도를 증가시키고 그로 인하여 교환기 시스템의 성능을 높이는 확실한 방법이 된다.This process of executing transactions is a sure way to increase the transaction processing speed of the application program and thereby increase the performance of the exchange system by completing the execution by storing only the relevant information without directly rolling back the T-tree.

또한 T-트리 색인 구조의 롤백은 전용 프로세스인 롤백 프로세스가 트랜잭션을 수행하는 응용 프로그램과는 독립적으로 T-트리 색인 구조를 롤백시키는 업무를 담당하므로 롤백시 요구되는 주기억장치 등의 자원을 최소로 사용하면서 효과적으로 롤백을 수행할 수 있는 것이다.In addition, the rollback of the T-tree index structure is a dedicated process, and the rollback process is responsible for rolling back the T-tree index structure independently of the application executing the transaction, thus minimizing the resources such as main memory required during rollback. You can do a rollback effectively.

Claims (5)

ATM교환기 시스템에서 주기억장치에 메타 데이터베이스, 릴레이션 그리고 T-트리의 영역을 갖는 데이터베이스 관리 시스템(DBMS)에 접근하는 응용 프로그램에 의해 수행되는 트랜잭션의 중지 발생시 T-트리 색인 구조를 갖는 릴레이션 정보를 롤백 큐에 롤백시키는 T-트리 롤백방법에 있어서, 상기 DBMS에서 사용자 응용 프로그램의 트랜잭션 수행 중에 작성한 로그를 이용하여 메타 데이터베이스 및 릴레이션을 그 트랜잭션 발생 이전의 상태로 복구시키는 제1단계와, 그 복구된 릴레이션이 T-트리 색인 구조를 갖는 릴레이션 정보일 경우 롤백 큐에 저장하는 제2단계와, 상기 해당 릴레이션에 대해 T-트리 롤백을 마칠때까지 다른 응용 프로그램의 프로세스도 접근을 금지시키는 제3단계로 이루어진 것을 특징으로 하는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법.Rollback queue of relation information with a T-tree index structure in the event of aborting a transaction performed by an application program accessing a database management system (DBMS) having a database of meta databases, relations and T-trees in main memory in the ATM switch system. A method for rolling back a T-tree, the method comprising: recovering a meta database and a relation to a state before the transaction occurs by using a log created during a transaction of a user application in the DBMS; In the case of relation information having a T-tree index structure, a second step of storing the information in a rollback queue and a third step of prohibiting access of other application programs until the T-tree rollback is completed for the corresponding relation are included. When managing distributed main memory database T-Tree Rollback Method in DBMS. 제1항에 있어서, T-트리 색인 구조가 롤백되어야 할 릴레이션 정보를 프로세스간에 상호 배타적으로 접근할 수 있는 임계영역에서 상기 롤백 큐를 이용하여 유지하는 것을 특징으로 하는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법.The distributed main memory database management system (DBMS) according to claim 1, wherein the T-tree index structure maintains relational information to be rolled back using the rollback queue in a critical region where mutually exclusive access to processes is possible. T-tree rollback method). ATM교환기에서 주기억장치에 메타 데이터베이스, 릴레이션 그리고 T-트리의 영역을 갖는 데이터 베이스 관리 시스템(DBMS)에 접근하는 응용 프로그램에 의해 수행되는 트랜잭션의 중지 발생시 T-트리 색인 구조를 갖는 릴레이션 정보를 롤백 큐에 롤백시키는 T-트리 롤백방법에 있어서, 상기 롤백 큐에 롤백을 수행할 릴레이션 정보가 없을 경우 일정 시간 동안 롤백 프로세스를 멈추었다가 다시 롤백 큐를 조사하는 제1단계와, 상기 롤백 큐에 릴레이션 정보가 존재할 경우 그 정보를 인출하는 제2단계와, 그 인출한 정보를 이용하여 해당 릴레이션의 T-트리 색인 구조를 롤백시키는 제3단계와, 상기 해당 릴레이션에 대한 접근 금지를 해지하는 제4단계로 이루어진 것을 특징으로 하는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법.At the ATM switch, roll back relation information with a T-tree index structure in the event of an interruption of a transaction performed by an application program accessing a database management system (DBMS) that has a meta database, a relation, and a T-tree area in main memory. In the T-Tree rollback method for rolling back to the first step, if there is no relation information to roll back to the rollback queue, the first step of stopping the rollback process for a predetermined time and examining the rollback queue again, the relation information in the rollback queue A second step of retrieving the information, if present, a third step of rolling back the T-tree index structure of the relation using the retrieved information, and a fourth step of terminating access to the relation; T-tree rollback method in a distributed main memory database management system (DBMS), characterized in that. 제3항에 있어서, 상기 제2단계는 릴레이션 정보를 롤백 큐로부터 가장 먼저 롤백된 정보를 인출하는 것을 특징으로 하는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법.4. The T-tree rollback method of claim 3, wherein the second step retrieves relation information rolled back from a rollback queue. 제3항에 있어서, T-트리 색인 구조가 롤백되어야 할 릴레이션 정보를 프로세스간에 상호 배타적으로 접근할 수 있는 임계영역에서 상기 롤백 큐를 이용하여 유지하는 것을 특징으로 하는 분산 주기억장치 데이터베이스 관리 시스템(DBMS)에서의 T-트리 롤백방법.4. The distributed main memory database management system (DBMS) according to claim 3, wherein the T-tree index structure maintains relational information to be rolled back using the rollback queue in a critical area that can be mutually exclusively accessed between processes. T-tree rollback method).
KR1019960038021A 1996-09-03 1996-09-03 T-Tree Rollback Method in Distributed Main Memory Database Management System KR100194589B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960038021A KR100194589B1 (en) 1996-09-03 1996-09-03 T-Tree Rollback Method in Distributed Main Memory Database Management System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960038021A KR100194589B1 (en) 1996-09-03 1996-09-03 T-Tree Rollback Method in Distributed Main Memory Database Management System

Publications (2)

Publication Number Publication Date
KR19980019780A KR19980019780A (en) 1998-06-25
KR100194589B1 true KR100194589B1 (en) 1999-06-15

Family

ID=66322909

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960038021A KR100194589B1 (en) 1996-09-03 1996-09-03 T-Tree Rollback Method in Distributed Main Memory Database Management System

Country Status (1)

Country Link
KR (1) KR100194589B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100428672B1 (en) * 1999-12-29 2004-04-30 엘지전자 주식회사 Apparatus and method for data processing by multiple indexes in communication systems

Also Published As

Publication number Publication date
KR19980019780A (en) 1998-06-25

Similar Documents

Publication Publication Date Title
US7805423B1 (en) System and method for quiescing select data modification operations against an object of a database during one or more structural operations
US6879981B2 (en) Sharing live data with a non cooperative DBMS
US7162467B2 (en) Systems and methods for managing distributed database resources
JP2558052B2 (en) Transaction processing system using hypothetical commit two-phase commit protocol and operating method thereof
US5721916A (en) Method and system for shadowing file system structures from multiple types of networks
US5724581A (en) Data base management system for recovering from an abnormal condition
US7490113B2 (en) Database log capture that publishes transactions to multiple targets to handle unavailable targets by separating the publishing of subscriptions and subsequently recombining the publishing
US6018746A (en) System and method for managing recovery information in a transaction processing system
KR100745883B1 (en) A transparent edge-of-network data cache
EP0567999B1 (en) Method and apparatus for executing a distributed transaction in a distributed database
JP2667039B2 (en) Data management system and data management method
US20070239751A1 (en) Generic database manipulator
JPH02228744A (en) Data processing system
US7188124B2 (en) Method, system, computer product for recovering dropped database table specifying one or more table spaces, recovering the table space being restored using the dropped table history data structure
KR100194589B1 (en) T-Tree Rollback Method in Distributed Main Memory Database Management System
JPH09244933A (en) Method and device for backing up data base
KR100199268B1 (en) T-tree index structure retrieval in dbms
JPH02292641A (en) Method for controlling data base
KR100198440B1 (en) A method indexing technique and dynamic update-propagations in memory-resident object-oriented database systems
JP3330006B2 (en) Network system including information storage system, input system of the system, and
KR100268674B1 (en) Database backup in realtime database system on multi-process environment
KR0126089B1 (en) Distribute real-time data base management system
Weiler et al. Speed Log: A Generic Log Service Supporting Efficient Node-Crash Recovery
KR100205022B1 (en) A fath indexing mechanism and index-join technique for memory-resident object-oriented database systems
Robinson Separating policy from correctness in concurrency control design

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20040202

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee