KR20020030223A - 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 - Google Patents
주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 Download PDFInfo
- Publication number
- KR20020030223A KR20020030223A KR1020000060817A KR20000060817A KR20020030223A KR 20020030223 A KR20020030223 A KR 20020030223A KR 1020000060817 A KR1020000060817 A KR 1020000060817A KR 20000060817 A KR20000060817 A KR 20000060817A KR 20020030223 A KR20020030223 A KR 20020030223A
- Authority
- KR
- South Korea
- Prior art keywords
- transaction
- database
- tuple
- index
- log record
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Library & Information Science (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (5)
- 데이터(33)와 인덱스(35)가 포함된 데이터베이스(37)를 저장하는 주기억장치(38)와, 로그 파일(34)과 데이터베이스 백업파일(36)이 저장되는 디스크(39)를 구비한 데이터베이스 시스템에서 트랜잭션 처리를 수행하기 위한 로깅 및 회복 방법에 있어서,트랜잭션 수행시 인덱스(35)에 대한 로그 레코드를 생성하지 않고 튜플에 대한 로그 레코드만을 생성하여 디스크(39)의 로그 파일(34)에 튜플 로그 레코드를 저장하는 트랜잭션 완료 단계;트랜잭션 철회시 튜플의 경우 튜플의 로그 레코드를 이용하여 복구하고, 인덱스(35)의 경우 튜플 로그 레코드를 생성한 연산에 따라 튜플 로그 레코드를 이용하여 인덱스 값을 트랜잭션 시작 이전의 상태로 복구함으로써 튜플과 인덱스(35)의 일관성을 유지하는 트랜잭션 철회단계; 및시스템 재시작시 튜플에 대한 로그 레코드로 데이터베이스(37)의 데이터(33)를 복구하여 튜플에 대한 일관성을 유지한 후 인덱스를 재구축하여 전체 데이터베이스의 일관성을 유지하는 시스템 재시작 단계를 포함하는 것을 특징으로 하는 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을 지원하기 위한 로깅 및 회복 방법.
- 제 1항에 있어서, 상기 트랜잭션 완료 단계는,트랜잭션 시작시 데이터베이스(37) 테이블의 튜플을 삽입/삭제/변경 연산을 하는 단계(S1);주기억장치(38)의 데이터베이스(37)를 변경하는 단계(S2);튜플에 대한 사전, 사후 로그 레코드를 생성하는 단계(S3);인덱스(35)를 변경하는 단계(S4);트랜잭션 종료를 체크하는 단계(S5);트랜잭션이 종료되지 않았으면 단계 S1으로 되돌아가고 종료되었으면 트랜잭션 종료상황이 완료인지 또는 철회인지 체크하는 단계(S6); 및상기 트랜잭션 종료 상황이 완료일 때 상기 튜플 로그 레코드를 디스크(39)의 로그 파일(34)에 기록하는 단계(S14)로 이루어져 있는 것을 특징으로 하는 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을 지원하기 위한 로깅 및 회복 방법.
- 제 2항에 있어서, 상기 트랜잭션 철회 단계는,상기 단계 S6에서 트랜잭션 종료 상황이 철회이면 적용해야할 로그 레코드가 트랜잭션 시작 로그 레코드인지를 체크하는 단계(S7);트랜잭션 시작 로그 레코드이면 로그 레코드들을 디스크(39)의 로그 파일(34)에 기록하고(단계 S14), 트랜잭션 시작 로그 레코드가 아니면 로그 레코드를 이용하여 데이터베이스(37)의 튜플을 트랜잭션 시작 이전 상태로 복구하는 단계(S8);튜플 로그 레코드를 생성한 연산의 타입을 체크하여(S9), 튜플 로그 레코드를 생성한 연산의 타입이 삭제 연산이면 인덱스 삽입 연산을 하고(S10), 삽입 연산이면 인덱스 삭제 연산을 하고(S11), 변경 연산이면 인덱스 삭제 연산을 수행(S12)한 후 인덱스 삽입 연산을 수행(S13)하여 데이터베이스(37)의 인덱스(35)를 트랜잭션 시작 이전 상태로 복구하는 단계로 이루어져 있는 것을 특징으로 하는 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을 지원하기 위한 로깅 및 회복 방법.
- 제 1항에 있어서, 상기 시스템 재시작 단계는,디스크(39)에 저장되어 있는 데이터베이스 백업 파일(36)에서 데이터베이스(37)를 주기억장치(38)에 로딩하는 단계(S17);디스크(39)의 로그 파일(34)에 저장되어 있는 튜플에 대한 로그 레코드로 데이터베이스(37)의 데이터(33)를 복구하는 단계(S18);재구축해야할 인덱스가 있는지를 체크하는 단계(S19); 및재구축해야할 인덱스가 없으면 재시작을 종료하고, 있으면 테이블에 대한 인덱스(35)를 재구축하는 단계(S20)로 이루어져 있는 것을 특징으로 하는 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을 지원하기 위한 로깅 및 회복 방법.
- 데이터(33)와 인덱스(35)가 포함된 데이터베이스(37)를 저장하는 주기억장치(38)와, 로그 파일(34)과 데이터베이스 백업파일(36)이 저장되는 디스크(39)를 구비한 데이터베이스 시스템에 있어서,트랜잭션 완료, 트랜잭션 철회, 시스템 재시작시 튜플 로그 레코드를 이용하여 데이터베이스에 대한 일관성을 유지하는 것과 동시에 로그 레코드가 저장된 디스크(39) 입출력의 양을 줄일 수 있는 프로그램을 컴퓨터에 기록한 컴퓨터로 읽을 수 있는 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000060817A KR20020030223A (ko) | 2000-10-16 | 2000-10-16 | 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000060817A KR20020030223A (ko) | 2000-10-16 | 2000-10-16 | 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020030223A true KR20020030223A (ko) | 2002-04-24 |
Family
ID=19693751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000060817A Ceased KR20020030223A (ko) | 2000-10-16 | 2000-10-16 | 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20020030223A (ko) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030056540A (ko) * | 2001-12-28 | 2003-07-04 | 한국전자통신연구원 | 데이터베이스 관리 시스템에서 시스템 고장에 대비한 파일삭제 및 회복 방법 |
KR100678926B1 (ko) * | 2006-01-05 | 2007-02-06 | 삼성전자주식회사 | 로그 정보 관리 시스템 및 방법 |
CN100433011C (zh) * | 2006-01-17 | 2008-11-12 | 中兴通讯股份有限公司 | 嵌入式环境下内存数据库的一致性保护方法 |
US7849060B2 (en) | 2006-01-10 | 2010-12-07 | Samsung Electronics Co., Ltd. | System and method for managing log information for transaction |
KR20110046118A (ko) * | 2009-10-28 | 2011-05-04 | 삼성전자주식회사 | 적응적 로깅 장치 및 방법 |
CN102279885A (zh) * | 2011-08-16 | 2011-12-14 | 中兴通讯股份有限公司 | 内存数据库对数据的操作方法及装置 |
CN102810050A (zh) * | 2011-05-31 | 2012-12-05 | 深圳市金蝶友商电子商务服务有限公司 | 日志数据写入方法和日志系统 |
CN103699548A (zh) * | 2012-09-27 | 2014-04-02 | 阿里巴巴集团控股有限公司 | 一种通过使用日志恢复数据库数据的方法及设备 |
US10394797B2 (en) | 2016-03-10 | 2019-08-27 | TmaxData Co., Ltd. | Method and computing apparatus for managing main memory database |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100198805B1 (ko) * | 1996-11-22 | 1999-06-15 | 정선종 | 분석 단계에서 트랜잭션 테이블 초기화 기법을 이용한 댕글링 트랜잭션 발생 방지 방법 |
EP0981093A2 (en) * | 1998-07-31 | 2000-02-23 | Motorola, Inc. | Method and apparatus for performing transactions in a data processing system |
-
2000
- 2000-10-16 KR KR1020000060817A patent/KR20020030223A/ko not_active Ceased
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100198805B1 (ko) * | 1996-11-22 | 1999-06-15 | 정선종 | 분석 단계에서 트랜잭션 테이블 초기화 기법을 이용한 댕글링 트랜잭션 발생 방지 방법 |
EP0981093A2 (en) * | 1998-07-31 | 2000-02-23 | Motorola, Inc. | Method and apparatus for performing transactions in a data processing system |
JP2000285068A (ja) * | 1998-07-31 | 2000-10-13 | Motorola Inc | データ処理システムにおけるデータ・トランザクション実行方法および装置 |
Non-Patent Citations (1)
Title |
---|
(pp12,13, 1998.12.28) * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030056540A (ko) * | 2001-12-28 | 2003-07-04 | 한국전자통신연구원 | 데이터베이스 관리 시스템에서 시스템 고장에 대비한 파일삭제 및 회복 방법 |
KR100678926B1 (ko) * | 2006-01-05 | 2007-02-06 | 삼성전자주식회사 | 로그 정보 관리 시스템 및 방법 |
US7849060B2 (en) | 2006-01-10 | 2010-12-07 | Samsung Electronics Co., Ltd. | System and method for managing log information for transaction |
CN100433011C (zh) * | 2006-01-17 | 2008-11-12 | 中兴通讯股份有限公司 | 嵌入式环境下内存数据库的一致性保护方法 |
KR20110046118A (ko) * | 2009-10-28 | 2011-05-04 | 삼성전자주식회사 | 적응적 로깅 장치 및 방법 |
US8296270B2 (en) | 2009-10-28 | 2012-10-23 | Samsung Electronics Co., Ltd. | Adaptive logging apparatus and method |
CN102810050A (zh) * | 2011-05-31 | 2012-12-05 | 深圳市金蝶友商电子商务服务有限公司 | 日志数据写入方法和日志系统 |
CN102279885A (zh) * | 2011-08-16 | 2011-12-14 | 中兴通讯股份有限公司 | 内存数据库对数据的操作方法及装置 |
CN103699548A (zh) * | 2012-09-27 | 2014-04-02 | 阿里巴巴集团控股有限公司 | 一种通过使用日志恢复数据库数据的方法及设备 |
CN103699548B (zh) * | 2012-09-27 | 2016-12-21 | 阿里巴巴集团控股有限公司 | 一种通过使用日志恢复数据库数据的方法及设备 |
US10394797B2 (en) | 2016-03-10 | 2019-08-27 | TmaxData Co., Ltd. | Method and computing apparatus for managing main memory database |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7933927B2 (en) | Method and apparatus for building index of source data | |
US10235375B1 (en) | Persistent file system objects for management of databases | |
EP2590086B1 (en) | Columnar database using virtual file data objects | |
US6567928B1 (en) | Method and apparatus for efficiently recovering from a failure in a database that includes unlogged objects | |
US8868512B2 (en) | Logging scheme for column-oriented in-memory databases | |
US9218377B2 (en) | Failure recovery and error correction techniques for data loading in information warehouses | |
CN110727548B (zh) | 一种基于数据库dml同步的持续数据保护方法及装置 | |
US10810092B2 (en) | Checkpoints for document store | |
US20130198139A1 (en) | Durability implementation plan in an in-memory database system | |
US9471622B2 (en) | SCM-conscious transactional key-value store | |
EP2590078A2 (en) | Shadow paging based log segment directory | |
US7225206B2 (en) | System and method for reorganizing stored data | |
CA2652115A1 (en) | Apparatus and method for read consistency in a log mining system | |
US7406489B2 (en) | Apparatus, system and method for persistently storing data in a data synchronization process | |
KR20020030223A (ko) | 주기억장치 데이터베이스 시스템에서 고성능 트랜잭션을지원하기 위한 로깅 및 회복 방법 | |
CN109101368B (zh) | 一种数据处理方法及装置 | |
US6792435B1 (en) | Method and apparatus for recovering the definitions of dropped database objects | |
CN116820839A (zh) | 一种基于数据湖表格式的全内存数据库持久化备份方法和系统 | |
CN115576494A (zh) | 数据存储方法和计算设备 | |
CN115658391A (zh) | 基于QianBase MPP数据库的WAL机制的备份恢复方法 | |
KR100243113B1 (ko) | 데이터베이스 관리 시스템에서 에스큐엘 수준의갱신 연산의 원자성 보장 방법 | |
CN112612648B (zh) | 一种SQL Server数据库恢复方法、终端设备及存储介质 | |
WO2024198010A1 (zh) | 一种面向列存数据库的并发控制方法及其装置 | |
CN118626311A (zh) | 一种时序数据库的数据恢复方法及装置 | |
CN119782046A (zh) | 数据恢复方法、装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20001016 |
|
PA0201 | Request for examination | ||
N231 | Notification of change of applicant | ||
PN2301 | Change of applicant |
Patent event date: 20010906 Comment text: Notification of Change of Applicant Patent event code: PN23011R01D |
|
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20030428 Patent event code: PE09021S01D |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20030725 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20030428 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20030731 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20030428 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |