Data Compression Management Mechanism for Real-Time Main Memory Database Systems



Similar documents
CRASH RECOVERY FOR REAL-TIME MAIN MEMORY DATABASE SYSTEMS

Real Time Network Server Monitoring using Smartphone with Dynamic Load Balancing

Using Logs to Increase Availability in Real-Time. Tiina Niklander and Kimmo Raatikainen. University of Helsinki, Department of Computer Science

How To Understand The History Of An Operating System

Data Backup and Archiving with Enterprise Storage Systems

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

Udai Shankar 2 Deptt. of Computer Sc. & Engineering Madan Mohan Malaviya Engineering College, Gorakhpur, India

Chapter 1 Computer System Overview

(51) Int Cl.: G06F 11/14 ( )

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

Modeling and Design of Intelligent Agent System

Enterprise Backup and Restore technology and solutions

Multi-level Metadata Management Scheme for Cloud Storage System

Types Of Operating Systems

In-Memory Databases Algorithms and Data Structures on Modern Hardware. Martin Faust David Schwalb Jens Krüger Jürgen Müller

Technical Properties. Mobile Operating Systems. Overview Concepts of Mobile. Functions Processes. Lecture 11. Memory Management.

Linux Process Scheduling Policy

Outline. Failure Types

Agenda. Capacity Planning practical view CPU Capacity Planning LPAR2RRD LPAR2RRD. Discussion. Premium features Future

Hardware Configuration Guide

Recover Data for Windows Software

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

2) What is the structure of an organization? Explain how IT support at different organizational levels.

Data Deduplication and Tivoli Storage Manager

CHAPTER 1 INTRODUCTION

Attaining EDF Task Scheduling with O(1) Time Complexity

Real Time Database Systems

Real-Time Replication Control for Distributed Database Systems: Algorithms and Their Performance

EVALUATE DATABASE COMPRESSION PERFORMANCE AND PARALLEL BACKUP

Optimizing Performance. Training Division New Delhi

HHB+tree Index for Functional Enhancement of NAND Flash Memory-Based Database

Physical Data Organization

Spacecraft Computer Systems. Colonel John E. Keesee

Data recovery from a drive with physical defects within the firmware Service Area, unrecoverable using

Design of a NAND Flash Memory File System to Improve System Boot Time

Adaptive Transaction Management Protocols for Mobile Client Caching DBMSs *

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat

Chapter 1: Introduction. What is an Operating System?

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

Understanding Disk Storage in Tivoli Storage Manager

Designing and Embodiment of Software that Creates Middle Ware for Resource Management in Embedded System

Hybrid Lossless Compression Method For Binary Images

Capacity Planning Process Estimating the load Initial configuration

Deploying De-Duplication on Ext4 File System

Microsoft SMB File Sharing Best Practices Guide

FAST 11. Yongseok Oh University of Seoul. Mobile Embedded System Laboratory

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design

Exploring RAID Configurations

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays

The Classical Architecture. Storage 1 / 36

Overview and History of Operating Systems

Crime Hotspots Analysis in South Korea: A User-Oriented Approach

Evaluating the Effect of Online Data Compression on the Disk Cache of a Mass Storage System

Real-Time Scheduling 1 / 39

Operating Systems 4 th Class

Time Management II. June 5, Copyright 2008, Jason Paul Kazarian. All rights reserved.

With respect to the way of data access we can classify memories as:

Design of Simulator for Cloud Computing Infrastructure and Service

Availability Digest. Raima s High-Availability Embedded Database December 2011

Price/performance Modern Memory Hierarchy

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

June Bridge & Switch. Pietro Nicoletti Piero[at]studioreti.it. Bridge-Switch-Engl - 1 P. Nicoletti: see note pag. 2

Scheduling Video Stream Transmissions for Distributed Playback over Mobile Cellular Networks

Original-page small file oriented EXT3 file storage system

Network Infrastructure Services CS848 Project

SOS: Software-Based Out-of-Order Scheduling for High-Performance NAND Flash-Based SSDs

A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM

Tertiary Storage and Data Mining queries

Chapter 11 I/O Management and Disk Scheduling

Operating Systems Overview

Architecting For Failure Why Cloud Architecture is Different! Michael Stiefel

Implementation of Buffer Cache Simulator for Hybrid Main Memory and Flash Memory Storages

Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Web Server (Step 2) Creates HTML page dynamically from record set

OPTIMIZING EXCHANGE SERVER IN A TIERED STORAGE ENVIRONMENT WHITE PAPER NOVEMBER 2006

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

System Services. Engagent System Services 2.06

CASE STUDY: Oracle TimesTen In-Memory Database and Shared Disk HA Implementation at Instance level. -ORACLE TIMESTEN 11gR1

Migration of Medical Image Data Stored through Mini-PACS to Full-PACS

COS 318: Operating Systems

Byte-index Chunking Algorithm for Data Deduplication System

How To Improve Performance On A Single Chip Computer

Frequently Asked Questions

A Virtual Machine Searching Method in Networks using a Vector Space Model and Routing Table Tree Architecture

Reinvent your storage infrastructure for e-business

zdelta: An Efficient Delta Compression Tool

balesio Native Format Optimization Technology (NFO)

Lowering Costs of Data Protection through Deduplication and Data Reduction

Optimization of SQL Queries in Main-Memory Databases

In-Memory Data Management for Enterprise Applications

Enhancing Dataset Processing in Hadoop YARN Performance for Big Data Applications

INDEXING BIOMEDICAL STREAMS IN DATA MANAGEMENT SYSTEM 1. INTRODUCTION

PERFORMANCE TUNING IN MICROSOFT SQL SERVER DBMS

Data Storage - I: Memory Hierarchies & Disks

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

An effective recovery under fuzzy checkpointing in main memory databases

On Benchmarking Popular File Systems

SharePoint Performance Optimization

Implementing a Digital Video Archive Using XenData Software and a Spectra Logic Archive

Smooth and Flexible ERP Migration between both Homogeneous and Heterogeneous ERP Systems/ERP Modules

Transcription:

Data Compression Management Mechanism for Real-Time Main Memory Database Systems Soon-Jo Lee and -be-young Bae Department of Computer Science and Engineering nha University, n&on 402-751. KOREA email: hybae@dmgon.inha.ac.kr(165.246.10.3) Abstract n this paper we propose and study a data compression management mechanism for maximum available memory space and high performance in real-time main memory database systems(rt-mmdbss). As a entire database is placed in main memory in a RT-Mh4DBS. the need for disk /O operations to perform database transactions can be eliminated; therefore, the use of main memory database can achieve much better performance over real-time database systems. However, the system performance would be decreased when real-time data which is referenced outside its valid interval or non-real-time data which is infrequently referenced reside continuously in main memory. We define the characteristics of data and transactions in RT-MMDBSs, and we discuss major components that relate to the compression of such data. 1. ntroduction A real-time database system is one in which transactions have explicit timing constraints, such as deadlines. n this system, transaction processing must satisfy not only consistency constraints, but also timing constraints. Recently, a real-time database system is becoming important in a wide range of applications such as command and control, weapon systems, network management, traffic control systems, and automated manufacturing. To support those applications, it is essential to build a real-time This research was supported by the Electronics and Telecommunications Research nstitute(etr1). FWceedings of the Fourth nternational Conference on Database Systems for Advanced Applications (DASFAAPS) Ed. Tok Wang Ling and Yoshifumi Masunaga Singapore, April 10-13, 1995 @ Werld Scientific Publishing Co. Pte Ltd database system that can process real-time transactions. To implement such a system, it has been proposed that he performance of conventional database systems should be enhanced. There are two approaches to achieve high performance. First, by putting more money; e.g, high speed devices can replace bottleneck devices like disk. Second, at the cost of some features of conventional database systems; e.g, some features are partly changed for real-time applicationst91. Main memory database systems, the entire database of which resides in main memory, are proposed as the best solution to process real-time transactions. Because main memory database systems can reduce disk /0 delay and the cost of memory purchase has been lowered[l,4]. Although RT-MMDBSs are capable of providing responses which are fast enough for real-time applications, they have some problems[l21. One of the problems is the size of main memory. As main memory database systems make entire database be resident constantly in main memory, and main memory size must be large enough to make entire database be resident in, to process transactions, and to store data which are produced continuously. n practice main memory size is limited, it is important to maximize the available space of main memory. t is not a perfect answer to design index and data structures which can maximize the available space of main memory. Furthermore, depending on the application, real-time systems may have to handle a large amount of multimedia information like audio, graphics, and images[lo]. n this paper data, to maximize the available space of main memory, a data compression mechanism is proposed, which retains the advantages of main memory database systems. This mechanism compresses data separately in terms of timing constraints and reference probability. t takes some time to compress and decompress data. So in case that there is a real-time transaction to request data being compressed, it is impossible for the transaction to be processed within a deadline. t compresses only real-time data which is referenced outside valid interval and non- 230

real-time data which is requested infrequently so that it can maximize the available space of main memory without increasing deadline miss rate. The motivation and method of the study are described in the fist section. The characteristics of RT-MMDBSs, data types, and transaction types are described in the second section. The current methods for data compression are introduced and the proper criteria for real-time database are described in the third section. Major components for data compression management are presented in the fourth set tion. Conclusions and future research plans are described in the last section. 2. Related Works n this section we introduce the characteristics of RT- MMDBS used in this paper, and describe the data types and the transaction types in that system. 2.1 Characteristic of RT-MMDBS n a RT-MMDBS, data resides permanently in main memory; in conventional real-time database system(rt- DBS) it is disk resident. n a RT-DBS, disk-resident data may be cached into memory for further access; in a RT- MMDBS the memory resident data may have a backup copy on disk. So in both cases, a given object can have copies both in memory and on disk. The key difference is that in RT-MMDBS the primary copy lives permanently in memory. This has important implications as to how it is structured and accessed. As RAM becomes cheaper and chip density increases, it is feasible to store larger databases in memory, making RT-MMDBS s a reality. Because data can be accessed directly in memory, RT-MMDBS s can provide much better response time and transaction throughputs, as compared to RT-DBS s. A main memory has clearly different properties from that of magnetic disk, and these differences have profound implications on the design and performance of the database system. n designing RT-MMDBS the significant problem is the size of main memory. Main memory size must be large enough to deal with memory requests in processing transactions apart from residing database in main memory. t is important to maintain the high availability of memory space because so much data is stored in main memory of limited size. Therefore, data compression management must maximize the available space of main memory as in Figure 1, maintaining the merits of main memory database systems mentioned above. The details of components of real-time main memory database systems in Figure 1 will be described in next section. Figure 1. Architecture of RT-MMDBS 2.2 Transaction Types There are two types of transactions in RT-MMDBS; realtime transactions and non-real-time transactions. The system should execute real-time transactions so that each transaction meets its deadline, and it should execute nonreal-time transactions to minimize their average response time. Real-time transactions can be grouped into three categories: hard deadline, firm deadline, and soft deadline. The classification is based on how the system is affected badly by the violation of timing constraints[5,7]. Hard deadline transactions are those which may result in a catastrophe if the deadline is missed. One can say that a large negative value is imparted to the system if a hard deadline is missed. These are typically safety-critical activities, such as those that respond to life environment-threatening emergency situations. Soft deadline transactions have some value even after their deadlines. Typically, the value drops to zero at a certain point past the deadline. f this point is the same as the deadline, we get firm deadline transactions, which impart no value to the system once their deadlines expire. 231

All transactions should be managed differently depending on transaction types to be processed properly. Transactions could be classified into hard, fum, soft, and non-real-time transactions by the criticalness factors and timing constraints of them at first. This paper presents methods with which to manage database according to data accessed by such classified transactions. his paper proposes the mechanism to manage RT-MMDBS according to the data type which is accessed by transactions classified like this. 2.3 Data Types n RT-MMDBS, database consists of real-time data, nonreal-time data and system data. As shown in Figure 2, real-time transactions request only real-time data and system data, but non-real-time transactions request all types of data. System data is accessed very frequently and usually has low volume. Both real-time data and non-real-time data may be accessed infrequently. The former has low volume with stringent timing constraints, and the latter has high volum. f this is the case, it is possible to partition the data into one or more logical databases. Data should be exactly classified into real-time data type and non-real-time data type when the database administrator creates the database. Example of such teal-time applications include telecommunications, radar tracking, and securities trading. n a telephone switching application, routing tables with which phone numbers are mapped to actual numbers, are real-time data; data for customers monthly statements are non-real-time data. As above, data is classified by its type so that comptession/dccomprcssion manager can easily select data to be compressed. Real-Tie Dataax System information about their environments. Such information includes input data from devices as well as system and machine states. n addition, many embedded systems must also store the system execution history for maintenance or error recovery purpose. Some systems may also keep track of system statistics such as average system load or average device temperature. Depending on the applications, real-time systems may have to handle multi-media information like audio, graphics, and images. Since systems are constantly recording information, data must have their temporal attributes recorded15, 101. Often a significant portion of real-time database is highly perishable in the sense that it contributes to a mission only when used in time. n addition to deadline, therefore. other kinds of timing constraints could be associated with data in RT-DBS. For example, each sensor input could be indexed by the time at which it was taken. Data once stored in the database is valid in specific interval. To quantify this notion, data may be associated with a valid interval. Data outside its valid interval does not represent the current state, e.g. it would be transformed into non-real-time data type[loj. f there is a transaction to access data outside its valid interval, it is a non-real-time transaction. f we maintain data outside valid interval in main memory, system performance will be poor. t is natural that data outside valid interval be compressed and maintained until discard time. However, if a transaction requests real-time data and the data is compressed, it will take much time to decompress the data, so that the real-time transaction violates deadline condition. On the contray, it enhances system performance not to compress real-time Non-Real-Time Data This type of data is requested by transaction with no timing constraints in that applications. t contains nonreal-time data type declared in the beginning and real-time data type outside its valid interval. t is not a problem for non-real-time data to be delayed during compressing and decompressing. Because non-real-time data with no timing constraints like deadlines is requested in non-real-time transactions. Non-real-time data requested infrequently should be compressed so that it can maximize the efficiency of system. Non-real-time data requested frequently should not be compressed. Real-Time Figure 2. Data types of RT-DBS Data Since real-time systems are used to monitor and to control physical devices, they need to store a large amount System Data This type of data is requested during operating database and is produced autonomously by database systems. And it is always needed in processing all transactions. System data is associated with the information about database, table, user, index, access authority, and so on. As system data is hotspot data requested by all transactions, it is 232

natural that we keep system data from being compressed not to degrade the efficiency of system. 2.4 Data Compression Techniques There has been no data compression techniques for real-time database systems. Therefore, this paper selects algorithm suitable for RT-MMDBS by comparison and evaluation of existing data compression algorithms. Criterias to select the algorithm which is suitable for data compression technique in RT-MMDBS are as follows. algorithm of RT-MMDBS. 0 fast compression/decompression @ lossless decompression @ using of small memory during the process @ better compression ratio Figure 4. Compression time computer SUN Spark 10 CPU Soeed Main Memory OS 100 MPS 32 MB SUN OS release 4.1.3 size4 size.5 Size6 Size7 50KB 1OOKB SOOKB 1MB Figure 5. Decompression time Figure 3. Evaluation environment The algorithm based on above criteria should be evaluated on main memory, becase the characteristics of RT-MMDBS are different from those of existing database. Also, only lossless algorithms such as Arithmetic, LZ77, LZW and AHC(Adaptive Huffman Coding) algorithm[9] is evaluated in terms of lossless decompression. Figure 4, 5, 6 show the evaluated data and Figure 3 shows the evaluation environment. Figure 3 describes the execution time of compression, Figure 4 describes the execution time of decompression and Figure 5 describes the ratio of compression. Data evaluated here is confined to text data. The result of evaluation shows that LZW algorithm has fast compression/decompression speed and high compression ratio, which is suitable for the compression 61.5 15 62.5 50 Alitb un m ABC Figure 6. Compression ratio 233

3. System Components for Data. Compression Management This section describes each component of real-time database system in Figure 1. Each component, especially the parts of each component related to compression management, is described 3.1 Data Type Manager Data type manager manages infonnation on data to recognize and to compress real-time data, non-real-time data, time.-out real-time data and system data of main memory resident database. Data type manager maintains not only some information to manage existing database, but also the following information to compress and manage data. This information is maintained and managed by table unit which we use as a compression unit. (1) real-time data/non-real-time data/system data Data is classified into real-time, non-real-time and system data. When we classify data, the criterion depends on which transaction to access the data. f non-real-time transactions access the data, the data is classified into non-real-time data. And if both nonreal-time transactions and real-time transactions access the data, or if only real-time transactions access the data, the data should be classified into real-time data. RT-MMDBS can manage data compression appropriately according to its data information. (2) valid interval of real-time data Real-time data is associated with the valid interval during which is used by system. f there is real-time data outside valid interval, it is no longer maintained as real-time data in system. (3) data compression flag When a transaction refers to data, system must know whether or not the data is compressed. f the data to be referred is compressed, it must be decompressed. (4) size of decompressed data When compressed data is decompressed, system must know original data size to allocate partition where compressed data is decompressed. (5) keeping time of compressed data f there is compressed data which is referenced outside its keeping time and is no longer used by system, it is backed up into backup device like disk, tape and so on. 6) reference counter of data table Only non-real-time data maintains this information. f reference counter of data is less than the number of counter determined by system, the data is ready to be compressed. (7) last reference time of data table While data compression is proceeding, if there is a transaction to refer to the data, the compression must be canceled. For this facility, if the last reference to the data occurs after the data compression starts, the data compression is canceled. Figure 7. Data Type Transition Diagram.::::;:::::,,:::: i~~;i~::w.:.y.:::::::::;..a... :.::,;,/, :;::::s:.,$::::.. --prrncd.::::#:*,. : $g,..,, :;g$:, ::ax~:i::::( a. :,:.:.:._.:.: DU gg:;:::: :,.,.:,~:> ::: ;:;:i :;:i:;:;;; Dircvdcd D* 9 Figure 7 shows functions of data type manager and compression/decompression manager to choose compression-ready data of entire database. Real-time data is ready to be compressed if it is referenced outside valid interval and non-real-time data is ready to be compressed if it is infrequently referred. But the reference to non-real-time data before its compression causes non-real-time data not to be compressed. 3.2 Memory Manager Memory manager initially makes database be resident in main memory and manages main memory by partition unit for continuously increasing data, to allocate and deallocate memory partitions required in compression and decompression, and maintain main memory for working area to be a appropriate size. Because system performance becomes poor in case that the size of working area is not appropriately maintained, the number of real-time transactions to be executed within their deadline would be decreased. Therefore, when the size of working area is smaller than a appropriate size, memory manager askes 234

compression/decompression manager to compress data or to did compressed data. 3.3 Compression/Decompression Manager Compressiou/decompression manager compresses time-out real-time data and non-real-time data infrequently referred and discards compressed data past their keeping time as shown in figure 7. Such work is executed periodically, but if memory manager requests of the data compression to maintain working area appropriately, compression work may be executed aperiodbdly. if (! Table-Comp-Flag and Table-Comp-State) /* check compressible state of data table and whether or not compressed */ ( if (Table-Size > p) P target data table size larger than the specified sizep */ Allocate memory partition Data compress if (Table-Ref-Time > Comp-Start-Time) then { Abort completely-compressed data Release memory partitions else 1 Update TB-Catalog-Table Release memory partitions of compression target data Table l :..Dll~CaWq_Rb. TB Chtah Trbl Partltbn -. PutWon-No-Tab Figure 8. Data Reference Diagram Figure 8 shows reference method of the data which is compressed like Q or isn t compressed like 0. When transactions request data, system retrieves the data with database name, table name, partition number and offset information. First, system acquires appropriate database information in DS-Catalog-Table and then retrieves information on the table of data from TB-Catalog-Table. System checks whether or not the data is compressed with retrieved information from data table. And if the data is compressed, it requests of data decompression or if the data isn t compressed, it refers to data through Patti tion-no-table. Compress-req() /* management process which invokes data compression */ input : TB-Catalog-Table output : Updated TR-Catalog-Table, Compressed data ( while (end of data!= scan TR-CatalogTable) 1) if (Table-Comp-Flag) ( if (Discard-Time c Current-Time) 1 Discard Compressed Data /* copy to backup device * Update TR-Catalog-Table Release memory partitions of discarded compresseddata decompress-req() /* management process which invokes data decompression */ input : TR-Catalog-Table information about request data table output : updated TB-CatalogTable, decompressed data t Allocate memory partition Data decompress Update TB-Catalog-Table Release memory partition of compressed data table 1 Figure 9. Pseudo code for the Compression/Decompression Management Algorithm 235

n Figure 9, a pseudo code for compression/ decompression management algorithm is presented. System executes compression work requested periodically or aperiodically as following. First, if data compression is requested, system checks through the scan of TB-CatalogTable whether or not the data is compressed and whether or not the data is ready to be compressed. f both conditions are satisfied, system checks whether the corresponding table size has a good effect on system in case of compression. Whether to execute this work is determined after system compares the table size with appropriately specified p value according to application. f the compression of data table would be beneficial, that is, Table-size > p, system makes memory manager allocate memory partitions and start compressing data with the partitions. After data compression is finished, system checks whether there is a transaction to refer to compressing data during compression work. f there is a transaction to refer to the table, system cancels compression work executed so far and proceeds the next step. f there is no transaction to refer to the table, system changes the partition number of TB-Catalog-Table, records compression status on Table-CompJlag and records the original table size. Then, system releases the partitions occupied by data table before compression. f the checked data table is in a compression status, system checks the discard time and backs up the data outside discard time into backup device and deletes the data from main memory database. Then, system updates TB-CatalogTable and releases the partitions occupied by discarded data table. f the requested data is in a compression status, system executes decompression work. The procedure of decompression is as following. First, system allocates memory partition for decompression, and then decompresses the data. After decompression work is finished, system updates TB-Catalog-Table and releases the partitions occupied by compressed data. 3.4 Performance Evaluation We implemented a main memory file manager and a scheduler, and then evaluated the algorithm which is proposed in this paper. The focus of evaluation is how much effect the compression technique produce on transaction processing and how much the size of main memory is reduced. We used Classified Earliest Deadline First Algorithm[4] in which the priority and type of transaction is considered, becase real-time transactions must be processed prior to non-real-time transactions. n systems which this algorithm is used in, compression/ decompression dose not effct on processing of real-time transsactions. Therefore, only the effecmess of main memory is evaluated in this paper. The environment of performance evaluation is as following. 0 main memory size: 6MB 0 used memory : 5MB 0 available memory : MB 0 data table size : 5OKB ( it takes less than one second to compress or decompress) 0 non-real-time data table : 80% 0 real-time data table : 20% 0 database size : fixed (database increases or discards in a fixedsize) The result of performance evaluation is as following figure 10. n early times tbe size of used memory is decreasing, and then i is almost fixed. The reason is that the number of tables ai be compressed is almost same m that of tables to be decompressed. tl t2 t3 t4 t5 t6 t7 TLr Figure 10. Result of performance evaluation 4. Conclusion and Future Research This paper has proposed the technique of data compression and management to maximize the available space of main memory in real-time main memory database system, whose purpose is to handle real-time transactions with timing constraints. The proposed technique classifies data into real-time data and non-real-time data so that compression work may not have effects on processing real-time 236

transactions. For processing real-time data, the proposed technique compresses data outside valid interval, and for processing non-real-time data, it compresses infrequently referred data extremely so that system performance may not decrease. Considering working area size, it requests compression work apetiodicaly. The application of the proposed technique keeps the size of working area appropriately, which is very important in real-time main memory database system, and maximizes the available space of main memory to store data which is increasing continuously. n addition, it manages transactions to minimize transaction deadline miss rate. n future, research plans am to develop new compression technique because disk-based compression technique is not suitable for main memory database system, and to develop the index structure suitable for the new compression technique. 1111 W Consistency in Real-Time Database Systems, Proceedings nfoscience 93, Seoul, Korea, 1993, pp. 225-232. T. Bell,. H. Witten, and 3. G. Cleary, Modeling for Text Compression, ACM Computing Surveys, Vo1.21, No.4, 1989, pp.557-591: T. J. Lehman, Design and Performance Evaluation of a Main Memory Relational Database System, Ph. D. thesis, University of Wisconsin-Medison, 1986. References 111 P [31 [41 151 El 171 @ P HO A. Ammann, M. Hanrahan, and R. Krishnamurthy, Design of A Memory Resident DBMS, Proceedings EEE COMPCON, 1985, pp.54-57. D. A. Lelewer and D. S. Hirschberg, Data Compression, ACM Computing Surveys, Vo1.19, No.3, 1987, pp.261-296. G. B. Kim, S. J. Lee, and H. Y. Bae, The Design of Scheduler for Maximum Hit Ratio in Real-Time Database System, Proceedings of the 19th KSS, Vo1.19, No.2, 1992, pp.105-108. H. Garcia-Molina and K. Salem, Main Memory Database Systems: An Overview, Transactions on Knowledge and Data Engineering, EEE, Vo1.4, No.6, 1992, pp.509-516. K. Ramamritham, Real-Time Database, nt l J. Parallel and Distributed Databases, Vol.1, No.2, 1993, pp.199-226. L. Gruenwald and S. Liu, A Performance Study of Concurrency Control in a Real-Time Main Memory Database System, ACM SGMOD RECORD, Vo1.22, No.4, 1993, pp.38-44. L. Shu and M. Young, Correctness Criteria and Concurrency Control for Real-Time Systems : A Survey, TR# SERC-TR-131-P, Dept. of Computer Science, Purdue University, 1992. M. Nelson, The Data Compression Book, M&T Books, 1992. M. Singhal, ssues and Approaches to Design of Real-Time Database Systems, ACM SGMOD RECORD, Vo1.17, No.1, 1988, pp. 19-33. S. H. Son and Y. K. Kim, Predictability and 237