Data Management Library Introduction to NonStop SQL/MP Abstract Part Number Edition Published Product Version Release ID Supported Releases This manual introduces the basic features of NonStop SQL/MP and is intended for nontechnical and technical readers. Readers do not have to be familiar with Tandem systems. 113425 Fourth March 1995 NonStop SQL/MP D30 D30.01 This manual supports D30.00 and all subsequent releases until otherwise indicated in a new edition.
Document History Edition Part Number Product Version Earliest Supported Release Published Second Third Fourth 053988 107933 113425 NonStop SQL C30 NonStop SQL C30 NonStop SQL/MP D30 C30.07 C30.07 D30.01 December 1991 December 1994 April 1995 New editions incorporate any updates issued since the previous edition.
Contents About This Manual Section 1 vii Introduction to NonStop SQL/MP What Is a Relational Database? 1-1 Why Use NonStop SQL/MP? 1-2 Scenario: High Availability Online Transaction Processing (OLTP) Solution 1-3 Scenario: Decision Support Systems (DSS) 1-3 Solution 1-4 Scenario: Scalable Electronic Commerce 1-4 Solution 1-5 A High Performance DBMS 1-2 1-6 Scalability 1-8 Tandem’s Parallel Hardware Architecture 1-8 Full Integration With System Software 1-9 Table Partitioning and Parallel Execution 1
Contents Section 2 How to Use NonStop SQL/MP Querying the Database 2-1 Sources of Queries 2-1 Writing Queries 2-1 Selecting Data 2-2 Joining Tables 2-4 Using the UNION Operator 2-5 Using Views 2-5 Shorthand Views 2-6 Protection Views 2-7 Modifying Data 2-8 Concurrent Updates and Locking Transaction Management 2-9 Summary Section 3 2-8 2-9 NonStop SQL/MP Architecture Physical Database Structure 3-1 Logical Schema 3-1 Physical Structure 3-1 Table Organization 3-3 Indexes 3-4 Partitions 3-7 What Happ
Contents Figures Figure 1-1. A Table in a Relational Database 1-2 Figure 1-2. Comparing Traditional DBMS Architecture With NonStop SQL/MP Architecture 1-6 Figure 1-3. NonStop SQL/MP Processing a Local and a Remote Request in a Scalable Network 1-9 Figure 1-4. Distributed Data Dictionary 1-13 Figure 2-1. Personnel Database Example 2-2 Figure 2-2. A Simple Query 2-3 Figure 2-3. Selecting Data From Two Tables 2-4 Figure 2-4. A Shorthand View Derived From Two Tables Figure 2-5.
Contents (This page left intentionally blank) vi 113425 Tandem Computers Incorporated
About This Manual This manual introduces the NonStop SQL/MP relational database management system, which uses the standard Structured Query Language (SQL) approved by the American National Standards Institute (ANSI) and the International Standards Organization (ISO) to describe and manipulate data. NonStop SQL/MP can be used for online transaction processing (OLTP), decision support systems (DSS), scalable electronic commerce applications, and other business applications.
About This Manual Related Manuals Related Manuals This manual is part of the NonStop SQL/MP library of manuals. The library includes the following manuals: NonStop SQL/MP Glossary describes the terminology used in NonStop SQL/MP documentation. NonStop SQL Quick Start describes how to run SQLCI, how to execute simple queries on a database, how to modify data, and how to produce a formatted report. NonStop SQL/MP Reference Manual describes the SQL language elements, expressions, functions, and statements.
About This Manual Related Manuals Figure 1. NonStop SQL/MP Library Introductory Manuals Introduction to NonStop SQL/MP NonStop SQL Quick Start (C30.07)* Usage Guides Programming Manuals NonStop SQL/MP Install and Management Guide NonStop SQL/MP Version Management Guide NonStop SQL/MP Programming Manual for C NonStop SQL/MP Programming Manual for COBOL85 NonStop SQL/MP Query Guide NonStop SQL/MP Report Writer Guide NonStop SQL Programming Manual for Pascal (C30.
About This Manual Related Manuals The following manuals provide overviews of other software systems used with NonStop SQL and discussed in this manual: FastSort Manual describes FastSort, the Tandem sort-merge product for NonStop systems. Introduction to Data Management introduces the Tandem data management products. Introduction to Tandem Data Communications presents an overview of the data communications products provided by Tandem.
1 Introduction to NonStop SQL/MP The NonStop SQL/MP relational database management system combines the standard features of a relational database with additional features that provide data integrity, high availability, high performance, and excellent scalability. NonStop SQL/MP is specifically designed for large data processing environments that maintain a variety of applications performing critical business tasks.
Introduction to NonStop SQL/MP Why Use NonStop SQL/MP? Figure 1-1. A Table in a Relational Database Table Name Column Names EMPLOYEE Table EMPNUM FIRST_NAME DEPTNUM JOBCODE GREEN 9000 100 175500.00 23 JERRY HOWARD 1000 100 137000.10 29 JANE RAYMOND 3000 100 136000.00 ••• ••• ••• ••• ••• ••• JESSICA CRINER 300 39500.00 1 ROGER Rows 568 LAST_NAME 3500 SALARY Columns 001 Why Use Many vendors offer relational databases.
Introduction to NonStop SQL/MP Why Use NonStop SQL/MP? Solution Reliability and transaction integrity. NonStop SQL/MP works with the NonStop Kernel operating system and the NonStop Transaction Manager/MP (TM/MP) subsystem to ensure that every piece of data exactly matches what was originally input and that a transaction either completes or the database is returned to its state just before the transaction started.
Introduction to NonStop SQL/MP Why Use NonStop SQL/MP? orders for additional product to be delivered from the manufacturer directly to your stores. You work best with visual images, using a mouse to point and click on icons and menu items. You want to access data from your PC and do not want to have to issue SQL commands. Solution Technology for large tables. NonStop SQL/MP is especially appropriate for the large tables used by decision support applications.
Introduction to NonStop SQL/MP Why Use NonStop SQL/MP? languages. You need to store these messages in their original languages and forward them to the appropriate geographical location. Because your business is growing rapidly, you do not know how many geographical locations you will have in the future. Solution Reliability and transaction integrity.
Introduction to NonStop SQL/MP A High Performance DBMS A High Performance DBMS The NonStop SQL/MP database management system (DBMS) achieves high performance because it operates at the lowest levels of the NonStop server architecture. Instead of operating as a software layer above the operating system, NonStop SQL/MP is integrated with NonStop Kernel system processes such as the file system, message system, and data access manager (DP2 disk process).
Introduction to NonStop SQL/MP A High Performance DBMS A data access manager can retrieve data from the table based on the selection criteria in the query; it can also delete and update data. The data access manager executes SQL requests as close as possible to the data, eliminating message traffic to and from a higher-level DBMS layer, as happens in most DBMS systems. (See Figure 1-2.
Introduction to NonStop SQL/MP Scalability Scalability Tandem’s Parallel Hardware Architecture A NonStop SQL/MP database is scalable—you can expand the size of the database simply by adding processors and disk volumes to the system. You do not have to change application code when you scale up the database. As the database and application grow, you can maintain the high performance of the original, smaller database.
Introduction to NonStop SQL/MP Scalability Figure 1-3.
Introduction to NonStop SQL/MP Scalability NonStop SQL/MP uses the the NonStop Transaction Manager/MP (TM/MP) subsystem to maintain data consistency amid concurrent transactions. The NonStop TM/MP subsystem ensures that data modifications are either completely applied to the database or not performed at all. NonStop TM/MP automatically backs out any incomplete transactions and manages recovery in case of system or media failures.
Introduction to NonStop SQL/MP A Highly Available Database A Highly Available Database A NonStop SQL/MP database is highly available, remaining online for current users even when, for example, you scale up the database to accommodate growing business. NonStop SQL/MP provides availability, just as it provides high performance and scalability, by combining features inherent in the Tandem system architecture and NonStop Kernel with features specific to NonStop SQL/MP.
Introduction to NonStop SQL/MP Distributed Database Architecture accesses is changed. For example, if a table is moved from one disk volume to another or if a new index is created, application programs will still run. However, some SQL queries might benefit by using the new index. You can choose when to schedule a recompilation of the SQL queries to take advantage of the new database environment.
Introduction to NonStop SQL/MP Distributed Database Architecture Applications can also be distributed. A client (or requester) process can run on one system, while the server processes run on other systems and perform I/O operations on the distributed database. When a transaction updates distributed data, you want to be sure that an interruption at a remote node does not leave the data in an inconsistent state.
Introduction to NonStop SQL/MP Support for Open Standards Support for Open By using standard programming tools and network protocols, you can minimize Standards training for multiplatform application development, and you can take advantage of a wide variety of tools that adhere to industry standards. Easy-to-Use ANSI SQL Access to NonStop SQL/MP is through ANSI-standard and ISO-standard SQL, a language specifically designed for easy access to relational databases. SQL is easy to learn.
Introduction to NonStop SQL/MP Additional Features Additional Features The following additional features help make NonStop SQL/MP a powerful tool for large applications requiring high performance, high availability, scalability, and data integrity: Cost-based query optimization Locking Mixed workload environment Support for national languages Active data dictionary Constraints Performance features for DSS Tools for database administration FastSort sorting utility Cost-Based Query Optimization The SQL op
Introduction to NonStop SQL/MP Additional Features First, NonStop SQL automatically issues a locking statement whenever you update, insert, or delete data. The lock ensures that while you are updating the data, no one else can access it or update it. Second, NonStop SQL/MP locks individual records rather than a page of records, allowing more users to access the database concurrently. Users only wait on a lock if they want the particular record being locked.
Introduction to NonStop SQL/MP Additional Features Constraints Performance Features for DSS Constraints are conditions stored in the data dictionary to control the data values added to a database. You specify constraints to keep invalid data out of the database. For example, you can ensure that a particular code in the database is limited to values 1 or 2.
Introduction to NonStop SQL/MP Summary 1–18 Parallel Sorting Utility If a query requires that the data be sorted, NonStop SQL/MP determines whether to sort the data in the virtual memory allocated to the user or to call an external sort routine. If you need to sort more than 32,767 rows, NonStop SQL/MP sends your data to the FastSort utility. FastSort can perform the sort in parallel so that multiple processors can work on the sort concurrently.
2 How to Use NonStop SQL/MP This section describes the basic tools for querying a NonStop SQL/MP database. It shows how the relational model makes it easy to retrieve data by letting you use joins and views. Finally, it discusses how to modify data and maintain data integrity and consistency by using NonStop SQL/MP locking mechanisms and transaction management statements. Querying the Database The NonStop SQL/MP relational structure is simple and flexible.
How to Use NonStop SQL Querying the Database The DBA also manages the physical configuration of database files on the Tandem system. Because NonStop SQL/MP keeps the logical database structure independent of the underlying physical database structure, the query writer does not need to know anything about the physical structure.
How to Use NonStop SQL Querying the Database Suppose you want to know the names and employee numbers of all employees who work in department 4000. To answer this request, you can enter the following statement: >> SELECT FIRST_NAME, LAST_NAME, EMPNUM +> FROM EMPLOYEE +> WHERE DEPTNUM = 4000 ; The SELECT statement specifies the columns, the FROM clause identifies the table, and the WHERE clause specifies the desired rows.
How to Use NonStop SQL Joining Tables Joining Tables When a query selects data from two or more tables, the SELECT statement effectively joins the tables to form a single, combined result table. For example, to list the managers of each department and the department name, you need information from the EMPLOYEE and DEPT tables. Figure 2-3 illustrates a SELECT statement that joins these two tables using the employee number, a value common to both tables.
How to Use NonStop SQL Using Views Although the join shown in Figure 2-3 occurs on the employee number column, that column does not have to be part of the result. The sample statement selects from the joined tables only those columns that contain employee names and department names and only those rows that contain manager names. The result is sorted by department number. Using the UNION Operator The UNION operator combines the end results of two SELECT statements.
How to Use NonStop SQL Using Views Shorthand Views A shorthand view (the type of view discussed so far) provides convenient data selection from any number of tables and other views. (You cannot update data using a shorthand view.) Figure 2-4 shows a shorthand view derived from the EMPLOYEE and DEPT tables. Figure 2-4. A Shorthand View Derived From Two Tables CREATE VIEW MGRLIST (FIRST_NAME, LAST_NAME, DEPTNAME) AS SELECT FIRST_NAME, LAST_NAME, DEPTNAME FROM EMPLOYEE, DEPT WHERE EMPLOYEE.EMPNUM = DEPT.
How to Use NonStop SQL Using Views Protection Views NonStop SQL/MP provides another type of view, the protection view, for security and privacy. A protection view provides column-level security by restricting access to individual columns. Consider, for example, the salary information in the EMPLOYEE table. You can prevent unauthorized users from seeing employee salaries by securing the table to prevent access to the SALARY column.
How to Use NonStop SQL Modifying Data A shorthand view can refer to a protection view just as it refers to a table. That means you can simplify data access at the same time as you restrict data access. Table 2-1 compares protection views and shorthand views. Table 2-1.
How to Use NonStop SQL Summary Transaction Management When you modify data, you must also ensure that the database does not contain corrupted data. If, for example, a communication line fails after a user has requested a cash withdrawal but before the ATM has dispensed the cash, you do not want a database system to record the withdrawal in the row containing that user's checking account balance.
How to Use NonStop SQL Summary (This page left intentionally blank) 2–10 113425 Tandem Computers Incorporated
3 NonStop SQL/MP Architecture This section describes the physical structure of a NonStop SQL/MP database and the way the logical and physical structures are linked through the NonStop SQL/MP data dictionary. The section then describes the basic physical components: files, table organizations, indexes, and partitions. Next, it explains how an SQL query is compiled and executed, showing how NonStop SQL/MP optimizes a query plan to achieve the best performance.
NonStop SQL Architecture Physical Database Structure Figure 3-1. Database Structure Logical Level Database Table Catalog Table EMPLOYEE Table EMPNUM 1 TABLES Table FIRST_NAME LAST_NAME ••• TABLENAME TABLENAME ROGER GREEN ••• ••• \SYS1.$VOL1.PERSNL.
NonStop SQL Architecture Physical Database Structure Moreover, the data dictionary keeps track of all programs that use the database objects described in the catalog and file labels. The catalog is sometimes called the compiletime component of the dictionary because, when programs are SQL-compiled, their relationship to the database objects they access is recorded in the catalog.
NonStop SQL Architecture Physical Database Structure Relative Tables Relative table organization is useful when an application requires random access to the table and the row number can function as the key to the table. For relative tables, NonStop SQL/MP automatically defines a primary key based on the relative positions of the rows. Typically, the row number has no meaning for the end user and is managed by the application. Access to a specific row is very fast if you know the row number.
NonStop SQL Architecture Physical Database Structure Index-Only Access For some queries, NonStop SQL/MP achieves even greater access speed if the index columns contain all the requested data. To satisfy these queries, the system retrieves data from the index table only and does not read the base table at all. This feature is called index-only access. Suppose an index on the EMPLOYEE table includes the LAST_NAME, FIRST_NAME, and EMPNUM columns.
NonStop SQL Architecture Physical Database Structure Figure 3-2. An Index for Faster Sorted Access CREATE INDEX XEMPNAME ON EMPLOYEE ( LAST_NAME, FIRST_NAME ) CATALOG PERSNL ; This clause orders the index by LAST_NAME, FIRST_NAME.
NonStop SQL Architecture Physical Database Structure You can add and delete indexes as needed without having to change or redefine the base table. If you determine that a new index would improve performance, you can add the index and receive performance benefits immediately. Partitions Partitions can make data more accessible in a large table or a table used at different geographical locations. A partition of a table or index holds all the rows within a range of key values.
NonStop SQL Architecture Physical Database Structure Figure 3-3. A Partitioned Table New York CREATE TABLE ( LOC_CODE PARTNUM \NY.$WHS1.INVENT.PARTLOC CHARACTER (3) NO DEFAULT NOT NULL , NUMERIC (4) UNSIGNED NO DEFAULT NOT NULL , QTY_ON_HAND NUMERIC (7) NO DEFAULT NOT NULL , PRIMARY KEY (LOC_CODE, PARTNUM) "A00" assumed first key value for LOC_CODE. ) CATALOG \NY.$WHS1.INVENT PARTITION ( \LA.$WHS2.INVENT.PARTLOC CATALOG \LA.$WHS2.INVENT FIRST KEY ( "G00" , 0000 ) , \MONT.$WHS3.INVENT.
NonStop SQL Architecture What Happens When a Query Is Submitted UPDATE PARTLOC SET QTY_ON_HAND = QTY_ON_HAND + 20 WHERE LOC_CODE = "A21" AND PARTNUM = 1403 ; A partitioned table in NonStop SQL/MP is highly available. Only the partitions being accessed must be available when you retrieve, update, or insert data. Even if network access became temporarily unavailable, you would still have access to your local partition.
NonStop SQL Architecture What Happens When a Query Is Submitted Figure 3-4.
NonStop SQL Architecture What Happens When a Query Is Submitted First, whenever an SQL statement is invoked by the application, the SQL executor can immediately execute that query plan without having to recompile it. This strategy improves performance, especially for OLTP and electronic commerce applications in which the same transaction type (and SQL statements) can execute hundreds or thousands of times a day.
NonStop SQL Architecture What Happens When a Query Is Submitted Figure 3-5. Selecting an Access Plan With the Lowest Execution Cost Query SQL Optimizer Plan A Plan B Read Table A Read Index to Access Table A Execution cost = 12 Execution cost = 8 Plan C (Parallel Execution) Read Index Partitions in Parallel Access Table A Partitions in Parallel Execution cost = 4 013 When it chooses an access plan, the optimizer analyzes the relationships between the query elements and the database configuration.
NonStop SQL Architecture What Happens When a Query Is Submitted The optimizer has access to current statistics, maintained in the data dictionary, about the tables, indexes, and other SQL objects. If data descriptions change or indexes are added or deleted, the optimizer uses the current information to choose a query plan. The SQL Executor The SQL executor is a set of system library procedures that executes compiled SQL statements against database tables, views, or the database catalogs.
NonStop SQL Architecture What Happens When a Query Is Submitted Figure 3-6. NonStop SQL/MP Components That Execute a Query Application Server Process SQL Executor SQL File System Data Access Manager Volume Containing Table A Data Access Manager SQL executor joins data selected from the two tables. Data access managers evaluate and select data from their respective disk volumes. Volume Containing Table B 013 In Figure 3-6, a query requests a join of selected columns and rows from tables A and B.
NonStop SQL Architecture Parallel Execution Managing Transactions If the SQL query is part of an update transaction, the executor invokes the NonStop TM/MP subsystem for transaction management services. You define a transaction in an application program by placing a BEGIN WORK statement before the SQL statements that will execute within the transaction. At run time, the SQL executor processes the BEGIN WORK statement, calling NonStop TM/MP to initiate the transaction.
NonStop SQL Architecture Parallel Execution The Master Executor and ESPs To implement parallel execution of a query, NonStop SQL/MP uses a master executor process, which starts the query execution. The master executor invokes multiple executor server processes (ESPs), assigning one ESP to each partition that must be accessed.
NonStop SQL Architecture Parallel Execution Figure 3-7. Parallel Execution of a Query Using an Aggregate Function Application Server Process Master executor computes final aggregate result. SQL Master Executor SUM of COUNTs ESP (SQL Executor) ESP (SQL Executor) ESP (SQL Executor) ESP (SQL Executor) File System File System File System File System Data Access Manager Data Access Manager Data Access Manager Data Access Manager COUNT COUNT COUNT ESPs manage separate tasks.
NonStop SQL Architecture Other Architectural Features If you choose to use the parallel execution option, the optimizer examines both parallel and nonparallel execution plans and chooses the one that will use the fewest resources, even if it is a nonparallel plan. Partitioning a table and its indexes increases the likelihood that the optimizer will choose a parallel execution plan. The partitions might reside on one system or on many nodes in a network.
NonStop SQL Architecture Other Architectural Features Single-Table Query Evaluation The data access manager performs single-table query evaluations (requests) against the data on its disk volume. Each evaluation is a simple selection expression consisting of ORs, ANDs, and other simple operators evaluated against literals and columns. The data access manager filters and groups the data it retrieves from disk, returning only the qualified data to the file system. It can also perform aggregations.
NonStop SQL Architecture Other Architectural Features Figure 3-8. Single-Table Query Evaluation Performed by the Data Access Manager INVENT Table (Partition 2) LOC PARTNUM QTY G11 G68 G70 2002 6402 2008 G92 G98 ••• 3406 20 6032 90 23 5502 ••• 136 ••• ••• PARTNAME ••• ••• ••• ••• 16COPPER 22STEEL ••• ••• 18COPPER 24STEEL 14STEEL ••• Data access manager evaluates the table partition and returns qualified data.
NonStop SQL Architecture Other Architectural Features In a DSS environment, for example, users can issue ad hoc queries that differ greatly in size and duration, causing the DSS workload to fluctuate unpredictably. With the mixed workload feature, the DBA or system manager can establish different priorities for different queries. For example, the DBA can give a lower priority to long-running queries so that queries of shorter duration can execute quickly, thereby helping to balance resource utilization.
NonStop SQL Architecture Other Architectural Features system without first manipulating the data. The file system then performs any projection and restriction required by the query. If a query requires extensive projection and restriction—if only a few rows and columns need to be retrieved—the data access manager can perform the single-table query evaluation. However, instead of returning a row at a time, the data access manager can build a virtual block containing only the qualified rows and columns.
NonStop SQL Architecture Summary VSBB can be as much as three times more efficient than RSBB. VSBB is especially important when data is geographically distributed across long-distance communication lines. The optimizer can also choose VSBB for insert and update operations. VSBB significantly improves the performance of these operations as well.
NonStop SQL Architecture Summary (This page left intentionally blank) 3–24 113425 Tandem Computers Incorporated
Index A Access plan 3-11 Active data dictionary 1-16 Aggregate function example 3-16 hash algorithm 1-17 ANSI-standard SQL and NonStop SQL/MP 1-14 Application decision support systems (DSS) 1-3 distributed 1-12 electronic commerce 1-4 online transaction processing (OLTP) 1-2 Architecture hardware 1-8 NonStop SQL/MP 1-6 Automatic recompilation 1-11, 3-11 Availability features in NonStop Kernel 1-11 features in NonStop SQL/MP 1-11 system features 1-11 AVERAGE function 1-17 B BEGIN WORK statement 3-15 Bulk I/O
Index COUNT function 3-16 Create Index operation 1-12 Cross product 1-17 D Data bulk I/O operations 3-23 changing 2-8 integrity 1-15 modification 2-8 prefetching into cache 3-23 selection description 2-2 from a table 2-1 from a view 2-5 sorting 3-14 Data access manager (DP2) 3-13, 3-18 Data Definition Language (DDL) 1-14 Data dictionary active 1-16 distributed 1-13 SQL catalog and 3-1 Data Manipulation Language (DML) 1-14 Database distributed 1-12 relational 1-1 Database administration 1-17 Database config
Index DP2 3-18 DSS 1-3, 1-17 Dynamic SQL 3-9 E Electronic commerce applications 1-4 Entry-sequenced file 3-4 table structure 3-4 ESP 3-16 Execution of a query 3-13 Execution plan 3-11 Executor server process (ESP) 3-16 F FastSort utility 1-18, 3-14 File description of 3-1 entry-sequenced 3-4 key-sequenced 3-3 label 3-2 online reorganization of 1-12 relation to table or view 3-1 relative 3-4 File system 3-13 First key example 3-8 Function aggregate 3-16 AVERAGE 1-17 COUNT 3-16 MAXIMUM 1-17 MINIMUM 1-17 SUM
Index I I/O operations bulk 3-23 cache optimizations 3-23 prefetching data into cache 3-23 Index creating 3-6 description of 3-4 example 3-6 parallel maintenance of 3-18 partition 3-7 Index-only access 3-5 INSERT statement 2-8 Integration with Tandem software 1-9 Interprocessor bus (IPB) 1-8 ISO-standard SQL and NonStop SQL/MP 1-14 J Join description of 2-4 parallel execution 3-17 K Key clustering 3-3 column 3-3 primary 3-3 Key-sequenced file 3-3 table structure 3-3 L Local autonomy feature 1-13 Locking 1-
Index M Master executor 3-16 MAXIMUM function 1-17 Measure performance measurement tool 1-10 MINIMUM function 1-17 Mirrored disks 1-11 Mixed workload environment 1-16, 3-20 Modification of data 2-8 Move Partition operation 1-12 N National languages 1-16 NonStop Kernel availability 1-11 integration with NonStop SQL/MP 1-9 NonStop ODBC Server 1-14 NonStop TM/MP distributed database support 1-13 integration with NonStop SQL/MP 1-10 invoking 3-15 SQL executor and 3-15 transaction management 2-9 NonStop TS/MP 1
Index P Parallel execution description 3-15 inter-query 3-15 intra-query 3-15 partitioning 1-10 repartitioning 3-17 Parallel hardware architecture 1-8 Parallel index maintenance 3-18 Parallel join operation 3-17 Parallel query execution 1-10, 3-15 Partition example 3-8 index 3-7 online database configuration of 3-9 skipping unavailable partition 1-12 splitting and moving operations 1-12 table 3-7, 3-16 Partitioning data 1-10 PC client tools 1-14 Performance features for DSS 1-17 low-level integration 1-6 P
Index Q Query execution 3-13 in a distributed database 1-13 optimization 1-15, 3-11 overview 2-1 parallel execution 1-10, 3-15 plan 3-11 saved as view 2-5 single-table evaluation 3-19 skipping unavailable partition 1-12 sources of 2-1 submission 3-9 writing 2-1 R RDBMS 1-1 Real sequential block buffering (RSBB) 3-21 Recompilation, automatic 1-11 Recompilation,automatic 3-11 Relational database 1-1 Relative file 3-4 table structure 3-4 Remote Duplicate Database Facility (RDF) 1-11 Repartitioning data 3-17 R
Index Shorthand view description of 2-6 protection view compared to 2-8 Single-table query evaluation 3-19 Single-table request 3-13, 3-19 Skipping unavailable partition 1-12 Software, desktop 1-14 Sorting data 3-14 Sources of queries 2-1 Split Partition operation 1-12 SQL catalog 3-1, 3-2 SQL compiler 3-10 SQL executor 3-13 automatic recompilation 3-11 description of 3-13 SQL file system 3-1, 3-13 SQL objects, logical names 3-13 SQL optimizer 1-15, 3-10, 3-11 SQL query plan 3-10, 3-11 SQL source statement
Index Table (continued) relation to files 3-1 relational 1-1 relative 3-4 single-table request 3-19 TorusNet 1-8 Transaction 3-15 Transaction management 2-9 U UNION operator 2-5 Update operations, set-oriented 3-20 UPDATE statement 2-8 Usability 1-14 User process sort (UPS) 3-14 V View protection description of 2-7 example 2-7 shorthand view compared to 2-8 relation to files 3-1 shorthand description of 2-6 protection view compared to 2-8 using 2-5 Virtual sequential block buffering (VSBB) 3-21, 3-22 W Wor