TPM/ONT-Text

Database systems provide support for inter/-transaction parallelism, i.e. the concurrent execution of a large number of independent user transactions. Within each transaction, individual operations, e.g. SQL statements, are executed strictly sequentially. In non-standard applications, such as document management, transactions would benefit of shorter response times if the individual parts of a transactions could be executed in parallel. Unfortunately, contemporary database systems provide no or only very limited support for this sort of parallelism, called intra-transaction parallelism.

In this project, we have designed a novel architecture for a system, which allows the concurrent execution of operations, such as sequences of SQL statements, within a single user-transaction. The specialty of our approach is the fact that we use existing, commercially available technology such as parallel relational databases and an extension of existing transaction processing monitors. The extension consists of a second-level transaction manager added to the transaction processing monitor (TPM). This TPM together with the transactions provided by the underlying database manager form a two-level transaction manager for the execution of open-nested transaction. Therefore, the ``trick'' is the transformation of intra-/transaction parallelism at the TPM level (i.e. at the user transaction level) into inter/-transaction parallelism at the database level. The lower level of the system can be provided by any transaction-oriented system (currently Oracle and Sybase). The higher level is realised by enhancing a conventional TPM (currently Tuxedo) with the necessary functionality for performing locking and logging on the higher level in order to ensure the integrity of the database. Neither the system used on the lower level nor the one on the higher level must be changed in any way.

On the basis of a prototype system, called TPM/ONT, we have implemented TPM/ONT-Text, a system for the handling of textual documents. In this system, all data -- including the textual index structures -- is stored the underlying relational database system. The major advantages of TPM/ONT-Text compared to a plain relational solution are: First, the system uses intra-transaction parallelism, e.g., by indexing the textual attributes of a document concurrently when a document is inserted. Second, locks on the database objects, especially the textual index structures, are released as early as possible (thanks to open-nested transactions), hence reducing the possibility of one transaction hindering another transaction by holding locks on the database level.

We have benchmarked TPM/ONT-Text against an implementation with flat transactions, in both cases using the Sybase database system. The performance numbers obtained are in clear favor of TPM/ONT: When, e.g. twenty users insert documents concurrently, the average insertion time using TPM/ONT can be reduced by 70% as well as the thruput increased by a factor of almost three.

References

H. Kaufmann and H.-J. Schek, Text Search Using Database Systems Revisited - Some Experiments. In: Proceedings of the 13th British National Conference on Databases, Manchester, United Kingdom, July 1995.

H. Kaufmann and H.-J. Schek, Extending TP-Monitors for Intra-Transaction Parallelism. In: Proceedings of the 4th Int. Conf. on Parallel and Distributed Information Systems, Miami Beach, Florida, December 1996.

contacts: Prof. H.-J. Schek

!!! Dieses Dokument stammt aus dem ETH Web-Archiv und wird nicht mehr gepflegt !!!
!!! This document is stored in the ETH Web archive and is no longer maintained !!!