Recent advances in processor and memory technology have given rise to increases in computational performance that far outstrip increases in the performance of secondary storage technology. Coupled with emerging small-disk technology, disk arrays provide the cost, volume, and capacity of traditional disk subsystems but, by leveraging parallelism, many times their performance. This tutorial will describe the effect of various configurations of data striping on I/O performance.
Unfortunately, arrays of small disks may have much higher failure rates than single large disks they replace. Redundant Arrays of Inexpensive Disks (RAID) use simple redundancy schemes to provide high data reliability. This tutorial will describe models for the performance costs and reliability enhancements of various configurations of redundant disk arrays.
A rough outline of the tutorial is: Technology trends in secondary storage (shrinking form factors, processor versus disk performance trends); Motivation for and advantages of redundant disk arrays; Performance expectations for non-redundant disk arrays (disk striping - selecting a striping unit); Redundancy in disk arrays: motivation, taxonomy and performance implications; RAID levels, large write advantages, small write problem and solutions; Modelling redundant disk array reliability (orthogonal RAID, hot spares, dependent failure modes).
This tutorial will concentrate on those aspects of industrial-strength transaction processing that are largely ignored in the research literature. It should educate even attendees with only rudimentary knowledge of DBMS concepts about issues and solutions relating to intricate concurrency control and recovery problems. It will allow attendees to evaluate knowledgeably features of different systems in the future.
We discuss many subtleties involved in supporting very high concurrency with efficient storage management, indexing and recovery, and high availability. We present many recent research results in these areas. They apply to relational and non-relational systems. Throughout the presentation, in addition to the emphasis on concepts, great emphasis will be placed on performance and implementation concerns also. Topics to be covered:
Transactions. Buffering. Locking. Latching Recovery Methods. Shadow-Paging. Write-Ahead Logging. ARIES. High Availability. Online Archiving and Media Recovery. Indexing. Locking. Recovery. ARIES/KVL. ARIES/IM. Distributed Commit Protocol. X/Open and OSI Standard. "Presumed Abort". Products mentioned include: DB2, OS/2 EE DBM, NonStop SQL, Rdb, SQL/DS, IMS, Informix and Oracle.
The tutorial is intended for data base and transaction systems' designers, implementers and administrators, for users with high performance, availability and concurrency requirements, and for researchers in industry and academia.
This tutorial examines the major architectural decisions in building an object-oriented DBMS for today's new applications, and considers the impact on performance of different architectures. Much of what will be discussed is relevant for extended relational systems as well. Topics include:
The new applications, computing environment, benchmarks, and performance goals;
Getting Data Into Memory:
Four architectures (query-response, object server, page server, file server) and six performance issues: (OIDs, object fetching, buffering, format conversion, handles versus pointers, process boundaries);
Accessing Data in Memory:
Two paradigms (objects, pages) and ten performance issues (relationship to page and object servers, locking, authorisation, protection, references between objects, pointer swizzling, updates, size limitations, swapping, new trends in operating systems);
Storing Data Back on Disk:
Three architectural paradigms (object, page, and file servers) and four performance issues (recovery. merging changes from different transactions, format conversion, retaining locks after end-of-transaction).
Note: Attendees need not have previous background in OODBMS implementation techniques.
The vision of future information systems involves large numbers of heterogeneous, intelligent agents distributed over large computer/communication networks. Agents will request and acquire resources (e.g., processing, knowledge, data) without knowing what resources are required, how to acquire them, or how they will be orchestrated to achieve the desired result. The problems of legacy systems (i.e., existing systems often developed using, now ancient, technology) are more immediate. It is essential that the realisation of this vision be integrated into the current IS technology base. A challenge here is to develop technology that permits continuous enhancement and evolution of the current, massive investment in ISs. There are a large number of national and international consortia, guidelines, and standards that support initial responses to these requirements.
This tutorial provides a practical, intuitive, and conceptual understanding of interoperability in terms of case studies (legacy systems), a vision of the future, current trends and approaches, and research challenges. It provides a road map of the new area of interoperability and a basis for understanding. It addresses such topics as: distributed computing architectures and middleware, the repository, process re-engineering, re-use and reverse engineering, corporate information repositories, enterprise information architectures and integration, legacy system migration/evolution, distributed databases, transaction processing and monitors, object-orientation and gateways. Finally, the tutorial reviews some relevant standards activities, prototype systems, and products. The basic point of view is practical - You can't integrate it all. What is reasonable? Where do you start ? How little technology must I know to achieve our interoperability goals ?
This tutorial provides an overview of the existing ANSI and ISO SQL-92 Standard and the work being done on its successor, which has the working title of SQL3. SQL3 might be approved in 1995 or 1996.
SQL-92 offers many enhancements to its predecessor, SQL-89. Among these are additional data types, greater orthogonality, outer join, catalogues, domains, assertions, temporary tables, referential actions, Schema Manipulation Language, dynamic SQL, connections, and information schema tables.
SQL3 offers many enhancements to its predecessor, SQL-92. The non-procedural enhancements include triggers, recursive query expressions, and view updatability. Procedural enhancements include multi-statement procedures with variables, control flow, and exception handlers. Object-Oriented enhancements include abstract data types, encapsulation, object identity, inheritance and polymorphism.