Download:
|
by Chendong Zou, Betty Salzberg
VLDB'98, Proceedings of 24th International Conference on Very Large Data Bases
ftp://ftp.ccs.neu.edu/pub/people/zou/ref-update.ps
Add To MetaCart
Abstract:
With today's demands for continuous availability of mission-critical databases, on-line reorganization is a necessity. When records are moved during an on-line reorganization of a database, references to the moved records must be changed to refer to the new location. In particular, secondary indexes must be updated. In this paper we show how to update secondary indexes efficiently when moving records from an RID organization to a primary B+tree. Our new on-line reorganization algorithm defers secondary index updates and piggybacks them with user transactions, significantly reducing the total I/O cost. We carefully detail the concurrency (locking) and recovery (logging) necessary to assure that almost all the database is available all of the time and that the reorganization is interruptible. Our method uses a page-oriented approach. Whenever a secondary index leaf page is brought into the database buffer by a user transaction, we check small main-memory-resident forwarding address tables to see if there are any pending updates on that index leaf page. When the forwarding address tables are full, a clean-up process temporarily takes over from the reorganization process and brings the necessary secondary index leaf pages into the buffer for update. This will free space for new forwarding addresses. Both an analysis and a performance study are done to measure the savings in I/O over other methods. Even though we discuss our algorithms in the context of a particular on-line database reorganization, we believe our method can be used as a general technique for deferred secondary index updates. It is efficient in I/Os, interruptible without loss of work, and provides high availability through minimal locking.
Citations
|
1137
|
Transaction Processing: Concepts and Techniques
– Gray, Reuter
- 1993
|
|
108
|
A critique of ansi sql isolation levels
– Berenson, Bernstein, et al.
- 1995
|
|
90
|
Concurrency of Operations on B-Trees
– Bayer, Schkolnick
- 1977
|
|
68
|
Aries/kvl: A key-value locking method for concurrencty control of multiaction transactions operating on btree indexes
– Mohan
- 1990
|
|
37
|
Access method concurrency with recovery
– LOMET, SALZBERG
- 1992
|
|
24
|
Algorithms for Creating Indexes for Very Large Tables Without Quiescing Updates
– Mohan, Narang
- 1992
|
|
16
|
Performance of on-line index construction algorithms
– Srinivasan, Carey
- 1992
|
|
13
|
Principles of transaction-based on-line reorganization
– Salzberg, Dimock
- 1992
|
|
10
|
Concurrent file reorganization for record clustering: A performance study
– Omiecinski, Lee, et al.
- 1992
|
|
7
|
Performance Analysis of a concurrent File Reorganization Algorithm for Record Clustering
– Omiecinski, Lee, et al.
- 1994
|
|
5
|
Two techniques for on-line index modification in shared nothing parallel databases
– Achyutuni, Omiecinski, et al.
- 1996
|
|
5
|
Online reorganization of key-sequenced tables and files
– Smith
- 1990
|
|
5
|
On-line Reorganization of Sparsely-Populated B+trees
– Zou, Salzberg
- 1996
|
|
4
|
NonStop SQL/MP availability and database configuration operations
– Troisi
- 1996
|
|
4
|
and Inderpal Narang. Algorithms for creating indexes for very large tables without quiescing updates
– Mohan
- 1992
|
|
3
|
A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging
– ARIES
- 1992
|
|
3
|
Analysis of a defered and incremental update strategy for secondary indexes
– Omiecinski, Liu, et al.
- 1991
|
|
2
|
A survey of online reorganization in ibm products and research
– Sockut, Iyer
- 1996
|
|
2
|
Dynamic Hierarchical Data Clustering and Efficient On-line Database Reorganization
– Zou
- 1996
|
|
1
|
Dynamic Hierarchical Data Clustering and Eficient On-line Database Reorganization
– Zou
- 1996
|