Documentation 8.0
Aqua Data Studio 8.0
Supported RDBMS Servers
1. Installation
    1.1 Minimum Requirements
    1.2 Installing Aqua Data Studio in Windows OS
    1.3 Installing Aqua Data Studio in Linux OS
    1.4 Installing Aqua Data Studio in Mac OS
    1.5 Launcher & Memory Configuration
    1.6 Interface Language, Fonts & Character sets
    1.7 Charts and OpenGL/JOGL Configuration
    1.8 Application Logs & Support Information
    1.9 Configuration & Connection files
2. Registering a Database Server
    2.1 Oracle
    2.2 Oracle OCI
    2.3 DB2 iSeries
    2.4 DB2 LUW
    2.5 DB2 zOS
    2.6 MS SQL Server
    2.7 Sybase ASE
    2.8 Sybase Anywhere
    2.9 Sybase IQ
    2.10 Informix
    2.11 Teradata
    2.12 Aster nCluster
    2.13 MySQL
    2.14 PostgreSQL
    2.15 Apache Derby
    2.16 Generic JDBC
    2.17 Generic ODBC
3. JDBC Driver Configuration
    3.1 Oracle 8i JDBC Drivers
    3.2 Oracle 9i JDBC Drivers
    3.3 Oracle 10g JDBC Drivers
    3.4 Oracle 11g JDBC Drivers
    3.5 DB2 iSeries JDBC Drivers
    3.6 DB2 z/OS JDBC Drivers
    3.7 DB2 LUW 7.2 JDBC Drivers
    3.8 DB2 LUW 8.1 and DB2 UDB 8.2
    3.9 DB2 LUW 9.0 and DB2 UDB 9.5
    3.10 SQL Server JDBC Drivers
    3.11 Sybase ASE JDBC Drivers
    3.12 Sybase Anywhere JDBC Drivers
    3.13 Sybase IQ JDBC Drivers
    3.14 Informix JDBC Drivers
    3.15 Teradata JDBC Drivers
    3.16 Aster nCluster Drivers
    3.17 PostgreSQL JDBC Drivers
    3.18 MySQL JDBC Drivers
    3.19 Apache Derby JDBC Drivers
    3.20 SQLite JDBC Drivers
    3.21 Firebird JDBC Drivers
4. Workspace and Docking Framework
    4.1 Menus and Toolbar
    4.2 Shortcuts Toolbar
    4.3 Schema Browser
    4.4 Scripts Browser
    4.5 Details View
5. Query Analyzer - SQL Tool in ADS
    5.1 Invoking the Query Analyzer (CTRL+Q)
    5.2 Using the Query Analyzer
    5.3 Query Analyzer and its Environment
    5.4 Server Side Comments
    5.5 Parameterized Scripts
    5.6 Displaying Results of Queries
    5.7 Saving Query Results
    5.8 Tips and Tricks
    5.9. SQL Automation
        5.9.1 Insert, Update, Select
        5.9.2 Introduce Columns and Value Stubs
        5.9.3 Morph to Delimited List
        5.9.4 Formatting Statements
        5.9.5 Auto Completion
        5.9.6 Aqua Commands
    5.10. Charting Grids and Pivot Grids
        5.10.1 Working with Grids and Pivot Grids
        5.10.2 Working with Enhanced Charts
        5.10.3 Scripting Charts
        5.10.4 Chart Options
        5.10.5 Function Series
    5.11. Visual Explain Plan
        5.11.1 Using Explain Diagrams
        5.11.2 Sample Query Tuning Demo
6. SQL History (CTRL+ ALT+H)
7. Query Builder Tool in ADS
    7.1 Building Queries
    7.2 Workspace Reference
8. GUI Tools for Database Objects
    8.1 Creating Databases
    8.2 Creating Tables
    8.3 Creating Constraints
    8.4 Creating Indexes
    8.5 Creating Views & Triggers
    8.6 Creating Aliases & Synonyms
    8.7 Creating Storage Objects
    8.8 Multi Scripting Objects
9. Tools and Features
    9.1 How to Import Data using ADS
    9.2 How to Export Data using ADS
    9.3 Generate SQL Scripts using ADS
    9.4 Table Data Editor
    9.5 Server Script Generator
    9.6 Using Object Search in ADS
    9.7 Comparing two Database Schemas
    9.8 Using the Visual Explain White Board
    9.9 Using the Execution Monitor
    9.10 Generating ER Diagrams
10. Procedure, Function & Package Editor
11. SQL Debugger
    11.1.1 Oracle Debugger
    11.1.2 DB2 Debugger
    11.1.3 MS SQL Debugger
    11.1.4 Sybase Debugger
12. ER Modeler in ADS
    12.1 Notation and Normalization
    12.2 Creating Tables
    12.3 Creating Indexes
    12.4 Creating Constraints
    12.5 Creating Relationships & Subcategories
    12.6 Adding Notes and Regions
    12.7 Saving and Exporting an ER Model
    12.8 Forward Engineering
    12.9 Reverse Engineering
    12.10 ER Modeler Demo
    12.11 Converting ER Models DB to DB
13. Version Control in ADS
    13.1 Using a Subversion Repository
    13.2 Using a CVS Repository
    13.3 File Search in Version Control
14. Database Administrator Tools
    14.1 ORACLE DBA Tools
        14.1.1 Server Statistics
         14.1.2 Rollback Manager
         14.1.3 Log Manager
         14.1.4 Session Manager
         14.1.5 Instance Manager
         14.1.6 Storage Manager
         14.1.7 Security Manager
         14.1.8 SGA Manager
    14.2 SQL SERVER DBA Tools
        14.2.1 Instance Manager
        14.2.2 Session Manager
        14.2.3 Security Manager
        14.2.4 Storage Manager
        14.2.5 SQL Agent Manager
    14.3 SYBASE DBA Tools
        14.3.1 Instance Manager
        14.3.2 Session Manager
        14.3.3 Security Manager
        14.3.4 Storage Manager
    14.4 MySQL DBA Tools
        14.4.1 Instance Manager
        14.4.2 Session Manager
        14.4.3 Storage Manager
        14.4.4 Security Manager
    14.5 DB2 for LUW DBA Tools
        14.5.1 Instance Manager
        14.5.2 Session Manager
        14.5.3 Storage Manager
        14.5.4 Security Manager
15. Compare Tools in ADS
    15.1 File Compare
    15.2 Results Compare
    15.3 Directory Compare
    15.4 Tab Compare
    15.5 Schema Compare
    15.6 Copy History Compare
16. Editors & Viewers
17. Aqua Data Studio OPTIONS
    17.1 General Options
    17.2 Editor Options
    17.3 Compare and Results Options
    17.4 Query Analyzer Options
    17.5 Scripts and Results Options
    17.6 Visual Explain Options
    17.7 Formatter Options
    17.8 Permissions and Registration Options
    17.9 Key Mapping Options and Key Assist Tool
    17.10 Command line

5.11. Visual Explain Plan

Aqua Data Studio’s Visual Explain provides visual display of an execution plan for a query, allowing for query tuning to enhance query and server performance.

ADS provides a "Show Execution Plan" option in the Main Application Toolbar. If this option is enabled an execution plan will be generated for each query executed in the results Execution Plan tab. Multi-execution plans are supported and executing a script will generate multiple execution plans. Aqua Data Studio also provides an "Execute Explain" button in the query window which will generate an execution plan for the current query or the highlighted queries in the Query Analyzer without executing the query. The visual explain plans have an identical layout for all databases except for the row information for each node operation, which contains specific column information according to the specific database server and version.

There are 2 ways that ADS can be used in comparing execution plans of queries. The first option is to "Execute Explain" on 2 highlighted queries at the same time, which will give you 2 visual explains in the results to compare. The second option is to open 2 popup Query Windows and execute a single query in each window to be compared side-by-side.

Before you begin using visual explain you may want to review the default settings according to your database vendor and version. You may change the settings in the File->Options->Explain tab.

It is also possible to add execution plans to the Visual Explain Whiteboard. Right Click on the contents of the Execution Plan to add that Plan to the Explain Whiteboard for quick comparison of execution time from multiple queries in one window.

Explain Diagrams can be generated from Execution Plans and saved as JPEG or PNG images for sharing. Each operation's details can be viewed and the color of critical operations can be altered to assist in highlighting important bottlenecks and steps in the execution process. Diagram objects can be repositioned to create meaningful images for others.

Microsoft SQL Server does not have any configurable settings and works from installation by only enabling the execution plan. For Oracle, the default settings should also work from installation. ADS will create and drop an explain table every time the user executes a query or executes explain with a dynamic explain table name using the session id, so the explain tables are not confused by similtaneous users. If you would like to manually configure and create an explain table for all of your users, you may do so and have all ADS users configure their ADS installation to access that specific table. DB2 should also work out of the box, which by default will create the explain tables if they do not exist but will not drop them. The reason for the different configurations for the 3 different databases is because of the different implementations by the database vendor. Microsoft SQL Server’s explain plans can be easily enabled by issuing an SQL statement which will return explain plan resultsets. Oracle allows a user to execute an EXPLAIN statement which provides an option to place the explain data in an explain table of the user’s choice. DB2 also provides an EXPLAIN statement which will only insert data into a defined explain plan table. The issues arise in supporting explain plans for concurrent users. The ADS Oracle and DB2 explain implementations will create explain data in the explain tables identified by a Globally Unique Identifier (GUID) and a statement id to ensure concurrency.

Currently, ADS supports execution plans for Oracle, DB2, Microsoft SQL Server and Sybase. The codebase is in place to support execution plans for any database which supports explain plans through the retreival of a resultset. Oracle and DB2 support explain plans through explain tables, and Microsoft SQL Server supports them through returned resultsets. If other databases include this type of support, ADS can easily be made to support visual explains for those databases.

The Visual Explain Plan offers insight into the execution of SQL Statements and helps the user isolate potential performance bottlenecks. Each operation (Join, Sort, Index Scan, etc) is displayed with statistics about the resources required to perform the task. When enabled, coloring of operation costs mark bottleneck issues.

The Explain Plan grid has several right click pop-up menu options for viewing the results in different ways and highlighting areas of interest:
  • To view a diagram of the Explain Plan, select Explain Diagram
  • To save the grid’s column widths within the Execution Plan, select Save Column Positions so that reexecution of the query keeps statistics as currently arranged.
  • To add this Explain Plan to the Explain Whiteboard for comparison, select Add to Whiteboard
  • To highlight the critical node, select Color Critical Node. This will enable coloring of critical nodes to highlight execution costs.
  • To highlight the critical operation, select Color Critical Operation

What the Explain Plan displays varies depending on the database and vendor. Sybase 12.5 and Sybase 15.0's TEXT feature is discussed at the bottom of the page. The Explain Plan grid provides the following vendor-specific information regarding each operation:

Oracle
  • Operation - operation name
  • Node Cost - total estimated cost of the operation
  • IO Cost - estimated I/O cost of the operation
  • CPU Cost - estimated CPU cost of the operation
  • Cardinality - estimated number of rows accessed by the operation
  • Bytes - estimated number of bytes accessed by the operation
  • Position - for 1st row of output: the optimizer’s estimated cost of the statement; for other rows: the position relative to other children of the same parent
  • Obj Owner - name of the user who owns the schema containing the table or index
  • Obj Name - name of the table or index
  • Options - an operation descriptor
  • Obj Type - descriptive information about the type of object
  • Optimizer - current mode of the optimizer
  • Obj Instance - ordinal position of the object as it appears in the original SQL statement
  • Remarks - A comment (up to 80 bytes) associated with each step of the explain plan
  • Obj Node - Name of the database link used to reference the object
  • Search Columns - Not currently supported
  • Other Tag - Describes the contents of the Other column
  • Partition Start - the first partition in the range of partitions accessed
  • Partition Stop - the last partition in the range of partitions accessed
  • Partition Id - step that determines first & last partitions
  • Other - Miscellaneous information regarding this operation
  • Distribution - the method used to distribute rows from producer to consumer servers
  • Temp Space - estimated temporary space, in bytes, used by the operation

SQL Server
  • Operation - operation name
  • Subtree Cost - cost of this node in addition to the costs of any child nodes
  • Node Cost - total estimated cost of the operation
  • Est. IO - estimated IO cost
  • Est. CPU - estimated CPU cost
  • Est. Rows - estimated number of rows accessed by the operation
  • Rows - number of rows produced by the operation
  • Executes - number of executions of this operation
  • Argument - arguments sent to this operation
  • Type - Type of node
  • Average Row Size - average row size (in bytes)
  • Defined Values - values defined by this operation
  • Output List - output values of this operation
  • Warnings - warning messages for this operation
  • Parallel - 0 / 1 indicating if this operation is running in parallel
  • Est. Executions - estimated number of executions of this operation
  • Physical Operation - Physical / Implementation operation name
  • Logical Operation - Logical / Algebraic operation name
  • Statement Text - complete operation name with arguments

DB2
  • Operation - operation name
  • Subtree Cost - cost of this node in addition to the costs of any child nodes
  • Node Cost - total estimated cost of the operation
  • IO Cost - estimated cumulative I/O cost of executing the operation
  • CPU Cost - estimated cumulative CPU cost of executing the operation
  • Obj Schema - name of the schema containing the object
  • Obj Name - object name
  • First Row Cost - estimated cumulative cost of fetching the first row for this operation
  • RE Total Cost - estimated cumulative cost of fetching the next row for this operation
  • RE IO Cost - estimated cumulative I/O cost of fetching the next row for this operation
  • RE CPU Cost - estimated cumulative CPU cost of fetching the next row for this operation
  • Commun. Cost - estimated cumulative communication cost of executing this operation
  • First Commun. Cost - estimated cumulative communication cost of fetching the first row for this operation
  • Remote Commun. Cost - estimated cumulative remote communication cost for this operation
  • Remote Total Cost - estimated cumulative total cost of executing this operation on remote databases
  • Stream Count - estimated cardinality of data stream
  • Buffers - estimated buffer requirements for this operation and its inputs
  • Column Count - number of columns in data stream
  • Explain Requester - authorization id of initiator of this Explain request
  • Explain Time - time of initiation of Explain request
  • Source Name - name of the package running or source file when the statement was explained
  • Source Schema - Schema, or qualifier, of source of the explain request
  • Explain Level - level of explain information for this row
  • Section Number - section number within package
  • Stream ID - unique id for this data stream
  • Source Type - indicates the source of this data stream
    • O - Operator
    • D - Data Object
  • Target Type - indicates the target of this data stream
    • O - Operator
    • D - Data Object
  • Column Names - names and order of the columns in this stream
  • PMID - partitioning map id
  • Single Node - indicates if this data stream is on a single or multiple partitions
    • MULT - on multiple partitions
    • COOR - on coordinator node
    • HASH - directed using hash
    • RID - directed using row id
    • FUNC - directed using a function: HASHEDVALUE() or DBPARTITIONNUM()
    • CORR - directed using a correlation value
    • numeric - directed to the predetermined single node
  • Partition Columns - list of columns on which this data stream is partitioned
  • Operator Type - descriptive label of the type of operation








Explain Plan for Sybase 12.5 and 15.0 - Text
When executing a query, it’s possible to view Execution Plan for Sybase 12.5 and Sybase 15.0 as TEXT. The feature is available both as viewing Execution Plan only and in the tab Show Execution Plan when running the query in a regular fashion.