If you connect to an Oracle TimesTen In-Memory Database, you can perform many TimesTen-specific operations within SQL Developer.
This topic adapts selected material from Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide, which is in the SQL Developer documentation library.
Passwordless SSH (secure shell) is required between all intended hosts for a grid in TimesTen Scaleout, regardless of the type of instance (management instance or data instance) on each host. Passwordless SSH is also required for any host that is used as a scp repository.
SQL developer provides a tool to test that each host in the grid can access one another through passwordless SSH. To test the passwordless SSH configuration of your hosts, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view.
SQL Developer validates your input values and displays a progress dialog. The validation can take a few minutes. If SQL Developer displays an error message, troubleshoot the error and click the Next button again to revalidate your input values.
The progress dialog closes and the Simple Grid Wizard dialog refreshes. You are now ready to add data instances.
Organize the hosts that contain one full copy of the data into a single data space group. Since there are k copies of the data, there are an equal number of data space groups, which are numbered from 1 to k. k is the value that you set for the K-safety configuration of your grid. The hosts in one data space group should be physically separate from the group of hosts in another data space group. Thus, hosts in one data space group are more likely to fail together; hosts in separate data space groups are less likely to fail simultaneously.
Once you have assigned a host to a data space group and you have applied that change to the grid model, you cannot change the data space group of that host.
To assign hosts to data space groups:
Right-click the host name that you want to assign to a data space group. Then, select the data space group where you want to assign the host.
Your host gets assigned to the data space group that you selected. Repeat this procedure to assign all of your hosts to data space groups. Ensure that you have the same amount of hosts in each data space group.
Once you have assigned all of your hosts to data space groups, click Next.
The Simple Grid Wizard refreshes and shows a summary table with the configuration for your grid.
Verify that the configuration settings for your grid are correct and click Finish.
The Simple Grid Wizard dialog closes and a Create Grid progress dialog displays. Creating a grid can take a few minutes depending on the number of hosts. If SQL Developer displays an error message, troubleshoot the error. In the case that an error file is generated, the Create Grid progress dialog displays the error file as a hyperlink. You can save the error file and troubleshoot any errors that are listed in the file.
If you created a grid with the ttGridAdmin utility, you can add the grid to the TimesTen Grid view. After you add your grid to the TimesTen Grid view you can manage and work with your grid in SQL Developer.
To add an existing grid to the TimesTen Grid view, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view. To manage an existing grid:
SQL Developer enables you to shutdown the components of a grid, such as databases, data instances, and management instances.
To shutdown a grid, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view.
Note: If you unload a database, stop a data instance, or stop a management instance and the progress dialog does not progress, you can cancel out of the progress dialog. Then, click Next and SQL Developer displays a warning message that a database is loaded or an instance is started. Click Yes to proceed to the next shutdown step. |
SQL Developer enables you to start the components of a grid, such as management instances, data instances, and databases.
To start a grid, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view.
Note: If you load a database, start a data instance, or start a management instance and the progress dialog does not progress, you can cancel out of the progress dialog. Then, click Next and SQL Developer displays a warning message that a database is not loaded or an instance is stopped. Click Yes to proceed to the next startup step. |
After you add more objects to a grid model, you need to apply these components to the grid. Changes made to the model do not immediately impact a grid until you explicitly apply these changes. After you apply the changes, TimesTen Scaleout implements the changes made to the latest version of the model into the operational grid. For example, if you add a new installation and data instance to the latest version of the model, applying the changes to the model performs all of the necessary operations to create and initialize both the installation and the data instance in that host.
Applying grid model changes to the grid is a resource intensive operation. If you plan on making multiple changes to the grid model, make all the changes to your grid model before applying the changes to the grid.
To apply grid model changes to the grid, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded:
To export the current model of your grid, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
SQL Developer enables you to view the changes between your current and latest grid model. These changes are not yet applied to your grid model.
To view the changes to your grid model, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Right-click your grid node, select Grid Model, then select Show Changes.
The Comparing current and latest grid model progress dialog displays.
If there are no changes between your current and latest grid model, you see the message "Latest model is up to date with current model". Click Close.
If there are changes between your current and latest grid model, the Comparing current and latest grid model progress dialog closes and the Changes in current grid model dialog displays. Review the changes to your grid mode and click Close.
You have successfully viewed the changes between your current and latest grid model.
Cloning a host enables you to create a host for an instance (management or data) by duplicating the configuration of an existing host, including its associated installations and instances.
To clone a host, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Edit the host to change the physical group or data space group of this host. You can only change the data space group of this new host before applying model changes to the grid. See Edit a Host for more information.
You have successfully cloned a host. However, you need to apply your changes to the grid. Changes made to the grid model do not immediately impact a grid until you explicitly apply these changes. See Apply Grid Model Changes to the Grid for more information on applying model changes to a grid.
SQL Developer enables you to assign hosts to data space groups as long as the host is not already associated with a data space group. Once a host is assigned to a data space group, you cannot reassign that host.
To assign hosts to data space groups, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen grid view, and that your grid node is expanded.
SQL Developer enables you to replace a management instance with a new instance. This is useful if you want to retire the host of an existing management instance and replace it with a new host.
You can only replace a management instance when your grid has an active and standby management instance.
If you replace the active management instance, TimesTen Scaleout promotes the standby management instance to the active management instance. Then, TimesTen Scaleout deletes your original active management instance and adds your new management instance as the standby management instance.
If you replace the standby management instance, TimesTen Scaleout deletes your current standby management instance and adds your new management instance as the standby management instance.
SQL Developer enables you to create a new data instance with a data instance wizard or directly on a specific host.
Consider the following before creating a new data instance:
Ensure that the hosts on which you create data instances for database distribution are assigned to a data space group. If you attempt to create a data instance on a host that is not assigned to a data space group, TimesTen Scaleout does not create that data instance. See Assign Hosts to Data Space Groups for more information on assigning a host to a data space group.
Use one of these options to create a data instance:
New Data Instance Wizard - This option enables you to specify the host on which the instance is created.
New Data Instance on a Specific Host - This option enables you to select the host on which the instance is created before opening the dialog.
To create a new data instance, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view.
Right-click the name of your grid, then select New Data Instance.
Then follow the steps, starting on step 2, as described in Create a New Management Instance. You do need to specify a management port for a data instance.
To create a new data instance on a host, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
SQL Developer enables you to import multiple types of configuration files.
To import a configuration file, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
SQL Developer enables you to export multiple types of configuration files.
To export a configuration file, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Before you create a database:
Ensure that you have a functional grid.
Ensure that your grid has at least an equal amount of data instances to the K-safety level of your grid. For example if you have a K-safety level of 2, you need to have at least two data instances.
Ensure that each of your data space groups are associated with an equal amount of data instances. Hosts, not data instances, are assigned to data space groups. It is recommended that you have a single data instance on each host. See Assign Hosts to Data Space Groups for more information on assigning a host to a data space group.
To create a database, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
You have successfully created a database in your grid.
Before you attempt to connect an application to the database, ensure that you open the database and create a user with the appropriate privileges to connect to the database. To create a user for your database with SQL Developer, use the ttIsql utility through the Execute command on a host dialog. You can execute this utility on any of the data instances of your database.
This command creates a user, terry, with a password of terry for the database, database1. Then, terry is granted admin privileges.
ttisql -e 'CREATE USER terry IDENTIFIED BY terry;
GRANT ADMIN TO terry; ' DSN=database1
See Execute a Command on a Host for more information executing a command on a host, respectively.
You have successfully created a database definition and a direct connectable. However, you need to apply your changes to the grid. Changes made to the grid model do not immediately impact a grid until you explicitly apply these changes. See Apply Grid Model Changes to the Grid for more information on applying model changes to a grid.
SQL Developer enables you to edit an existing database definition.
Before you edit an existing database definition:
If you want to edit a database attribute and there is a database that was created from the database definition you are editing, you must stop the database, destroy it, and recreate it with the new database attributes. Since you are destroying the database, this causes you to lose all data in that database.
If you want to edit a general connection attribute, edit the respective connectable because general connection attributes are associated with a connectable. See Edit a Connectable for more information.
If you edit a first connection attribute of a database definition of an open database, these changes are not applied until you unload and reload the database. SQL Developer displays a warning message if your database is currently open when you edit the database definition.
To edit a database definition, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Expand the Grid Model option, expand the Database Definitions option, right-click the name of your database definition, then select Edit.
The Edit Database Definition dialog and the Checking if database exists progress dialog display.
If there is an open database that was created from the database definition you are editing, the Checking if database exists progress dialog closes and a Editing open database warning dialog displays. If you do not want to see the Editing open database warning for future operations, select the Skip This Message Next Time check box. Then, click the OK button.
If there is no open database that was created from the database definition you are editing, the Checking if database exists progress dialog closes.
Follow the steps, starting on step 3, as described in Create a Database Definition.
SQL Developer enables you to start, load, open, stop, close, and unload the TimesTen database.
To start, load, open, stop, close, or unload the TimesTen database, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Expand the Databases option, then right-click the name of your database and select one of these options:
SQL Developer performs the operation that you selected. The operation can take a few minutes.
A progress dialog displays in the lower right corner of the main SQL Developer window. If SQL Developer displays an error message, troubleshoot the error.
You can review the status of your database by double clicking the name of your database from the TimesTen Grid view region. If your database status is already open, you can click the refresh button that is located in the top left corner of the database status window to refresh your database status.
You have successfully performed an operation on the database.
To create a client/server or direct connectable, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
SQL Developer enables you to edit an existing connectable.
To edit a connectable, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Expand the Grid Model option, expand the Database Definitions option, expand the name of your database, then either expand the Client/Server Connectables or Direct Connectables option, right-click the name of the connectable and select Edit.
The Edit Connectable dialog displays.
Follow the steps, starting on step 3, as described in Create a Connectable.
SQL Developer enables you to view all active connections to a database. This is useful to determine if it is safe to perform certain database operations like destroying a database or closing a database.
To view active connections to a database, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
Expand the Databases option and select the name of your database.
The database status displays or refreshes if it is already displayed. Locate the connections link that is next to the Number of applications connected to the database_name label.
Click the connections link that is next to the Number of applications connected to the database_name label.
The Updating information for database progress dialog displays. Once the database information has been loaded, the Updating information for database progress dialog closes and the Connection Details dialog displays.
The Connection Details dialog enables you to view all connections to your database data instances or specific data instances. Use the Instance drop-down list to select an instance for which you want to see its connection. In case that you want to see system connections, select the Include System Connections check box. You can also use the Connection Name text field to create a filter for all available connections to your selected instance.
Note: For databases from TimesTen Scaleout 18.1.1.3 or higher, selecting a row from the connections table provides below additional information on the element, host, instance, connection id, connection name, process id, and type of connection. For proxy connections, it also provides information on the host, instance, connection id, and process id of the proxy. For client/server connections, it also provides information on the host, address, and connection id of the client. |
Click the OK button to close the Connection Details dialog.
SQL Developer enables you to destroy a database.
Before you create a grid:
Ensure that you have migrated or backed up all data from the database.
Ensure that the database is unloaded from memory.
To destroy a database, ensure that you are on the main SQL Developer page, that you have enabled the TimesTen Grid view, and that your grid node is expanded.
SQL Developer enables you to review the support and user log of a TimesTen Scaleout. These logs may be useful in troubleshooting errors with your grid. For each instance that is part of your grid, you can view these logs:
Support Log
User Error Log
To view logs, ensure that you are on the main SQL Developer page and that you have enabled the TimesTen Grid view.
You can create a table for the TimesTen database or TimesTen Grid database with SQL Developer.
To create a table, ensure that you are on the main SQL Developer page and that your TimesTen or TimesTen Grid connection is expanded.
To define an index for your table, you need to have defined a primary key for your table. To define an index on your table:
Select an index type from the Index Type options.
If you selected a hash index, type a RowPages parameter in the Page size(Rows) text field.
Compute this value by dividing the number of expected rows in your table by 256. For example, if your table has 256,000 rows, specify 1000 for the value of RowPages (256000/256=1000)
You have successfully defined an index on your table. You are now ready to define constraints for your table.
You can create a sequence for the TimesTen database or TimesTen Scaleout database with SQL Developer.
To create a sequence, ensure that you are on the main SQL Developer page and that your TimesTen or TimesTen Grid connection is expanded.
Before attempting to load data from an Oracle database into a TimesTen database:
Ensure that you are using Oracle TimesTen In-Memory Database Release 11.2.2.4 (or later).
Ensure that you have specified the Oracle database connection information (Oracle Database Password and Oracle Net Service Name) for your TimesTen SQL developer connection.
To load data from an Oracle database into a TimesTen database, ensure that you are on the main SQL Developer page and that your TimesTen connection is expanded.
The simple mode enables you to load data from the Oracle database without selecting the mapping of Oracle database data types to TimesTen. However, if you are using advanced mode, you can follow these instructions after specifying the mapping of your data types and compression. If you are using advanced mode, ensure that you have completed all the steps from Advanced.
In some cases when you attempt to load data from Oracle database tables, you may run into some errors that prevent all data from being loaded from the Oracle database tables. If you saved the load profile after your load operation failed, you can resume the load operation using the load profile.
To resume loading data from an Oracle database table, ensure that you saved the load profile, that you are on the main SQL Developer page, and that your TimesTen connection is expanded.
To load data from an Oracle database table into an existing TimesTen table, follow these steps. Make sure you are on the main SQL Developer page and that your TimesTen connection is expanded.
Click the + located next to Tables to expand the TimesTen tables list.
The TimesTen tables list expands.
Right-click the name of the table and select the Table option, then select the Load from Oracle Database Table option.
The Load from Oracle Database Tables dialog displays. The Schema name, TimesTen Username, and TimesTen Table Name are auto-filled and you cannot edit these fields. Prepare to enter the SQL query and the Parallel Thread Count.
In the Select Query field, enter the SQL query to execute on the Oracle database. The result of the SQL query is loaded into your TimesTen table.
In the Load Options section, specify these options:
Inserter Threads: Number of threads that insert data in the TimesTen table.
Fetcher Threads: Number of threads that retrieve data from the Oracle database table.
Error Threshold: Threshold for the maximum number of allowed errors.
Resume from SCN: The load queries the Oracle database from this SCN. This value is optional and if it is not specified it will use the latest SCN.
Ignore Duplicates: This option ignores any duplicate data. It only works if the TimesTen table has a uniqueness constraint on it. All uniqueness constraint violations are ignored.
Direct Load: This option loads data directly into the table during commit points, whereas not using direct load loads data with standard INSERT SQL statements. The direct load has better performance and scalability for large amounts of data.
Locate the Load button.
Click Load.
A progress dialog displays. Once TimesTen loads the data from the Oracle database table, the progress dialog closes. If there are any errors, troubleshoot the errors. If you execute the query on a small Oracle database table, the progress dialog may close almost immediately.
Related Topics
To create a named connection to a TimesTen database, make sure you are on the main SQL Developer page.
Right-click the Connections node and select New Connection.
Select the TimesTen tab.
You are ready to enter information for the connection.
In the Connection Name field, enter the connection name.
In the Username field, enter the TimesTen user. If you use the TimesTen database to cache data from an Oracle database, enter the TimesTen cache manager user name. If you use the TimesTen database to load data from an Oracle database, enter the TimesTen user name that has SELECT privileges on the Oracle database tables that you want to load.
In the Password field, enter the password for the TimesTen user.
To save the password, choose Save Password. If you save the password, you will not be prompted for the password on subsequent connections to the TimesTen database.
To allow TimesTen to issue an implicit commit after DML statements, select the Autocommit check box. By default, the Autocommit check box is selected.
Select a connection type from the Connection Type drop-down list. The following types of connections are available:
DSN
Easy Client/Server
Advanced
You are now ready to define your new connection.
Related Topics
The DSN connection type allows you to connect to databases by specifying a DSN. The DSN must exist in your .ODBC.INI on UNIX and the ODBC Data Source Administrator on Windows.
Select a predefined DSN that references the TimesTen database from the DSN drop-down list. You can select either a Data Manager DSN to establish a direct connection or a client DSN to establish a client/server connection.
In the Connection Attributes field, enter the attributes for the DSN. The Connection Attributes field is not required. Each attribute setting must be separated by a semicolon. If you do not specify any connection attributes, TimesTen uses the connection attributes specified in the DSN.
To cache data from an Oracle database or load data from an Oracle database into a TimesTen database, select the Enable Cache/Load tables from Oracle database check box.
In the Oracle Database Password field, enter the Oracle database password for the Oracle database user. The Oracle database user must be the same user as the TimesTen user you specified in the Username field. This text field is only available if you selected the Enable Cache/Load tables from Oracle database check box.
Click Save to save the connection name under the Connections node.
Your connection is saved. You can establish connections to the database using the settings in the named connection without having to specify the values in the fields of the New/Select Database Connection dialog box again.
Click Connect.
SQL Developer is connected to your TimesTen database.
The easy client/server connection type allows you to connect to local and remote databases without having to define a DSN.
In the Server Host Name field, enter the name or the IP address of the TimesTen server host.
In the Server DSN field, enter the DSN of the TimesTen server.
In the Server Port field, enter the TCP port of the TimesTen server. You can use the ttStatus utility to find the TCP port of your TimesTen server.
In the following example, the server port number is 53396. This example is part of a sample output from the ttStatus utility.
TimesTen server pid 24379 started on port 53396
For more information about the ttStatus utility, see "ttStatus" in the Oracle TimesTen In-Memory Database Reference.
To cache data from an Oracle database or load data from an Oracle database into a TimesTen database, select the Enable Cache/Load tables from Oracle database check box.
In the Oracle Database Password field, enter the Oracle database password for the Oracle database user. The Oracle database user must be the same user as the TimesTen user you specified in the Username field. This text field is only available if you selected the Enable Cache/Load tables from Oracle database check box.
In the Oracle Net Service Name field, enter the Oracle database net service name for the Oracle database. This text field is only available if you selected the Enable Cache/Load tables from Oracle database check box.
Click Save to save the connection name under the Connections node.
Your connection is saved. You can establish connections to the database using the settings in the named connection without having to specify the values in the fields of the New/Select Database Connection dialog box again.
Click Connect.
SQL Developer is connected to your TimesTen database.
Related Topics
The advanced connection type allows you to define a connection string to connect to your TimesTen database.
Select a driver type for the TimesTen database from the Driver Type option. Select either Client/server to establish a client/server connection or Direct to establish a direct connection.
In the Connection string field, enter a connection string to define the DSN and set attributes for the DSN. If you choose Client/Server as the Driver Type specify the server host, server port, and DSN. Each attribute setting must be separated by a semicolon. Do not delimit the connection string with a pair of double quotation marks.
To cache data from an Oracle database or load data from an Oracle database into a TimesTen database, select the Enable Cache/Load tables from Oracle database check box.
In the Oracle Database Password field, enter the Oracle database password for the Oracle database user. The Oracle database user must be the same user as the TimesTen user you specified in the Username field. This text field is only available if you selected the Enable Cache/Load tables from Oracle database check box.
Click Save to save the connection name under the Connections node.
Your connection is saved. You can establish connections to the database using the settings in the named connection without having to specify the values in the fields of the New/Select Database Connection dialog box again.
Click Connect.
SQL Developer is connected to your TimesTen database.
You must create a cache administration user in the Oracle database. This user creates, owns and maintains Oracle objects that store information used to manage cache. This user also enforces predefined behaviors of cache groups.
After you create the cache administration user in the Oracle database, you must set the name and password for the user in the TimesTen database.
To set the cache administration user name and password, right-click the node of the connection name for the TimesTen database and select Set Cache Administration User.
The Setting the cache administration user dialog appears. For the Prompts tab, in the Cache administration user ID field, type the cache administration user name. In the Cache administration user password field, type the Oracle password for the cache administration user.
Click Apply.
You must set the cache administration user name and password for each TimesTen database that caches Oracle. If you drop and re-create the TimesTen database or drop and re-create the cache administration user in the Oracle database, then the cache administration user name and password must be reset in the TimesTen database.
Related Topics
After you set the cache administration user name and password, create a cache grid and associate the TimesTen database with the cache grid, you must start the TimesTen cache agent process. The cache agent processes cache operations such as loading a cache group and automatic refresh.
To start the cache agent, right-click the node of the connection name for the TimesTen database and select Start/Stop Cache Agent.
In the Starting/stopping the cache agent dialog box, select Start agent within the Prompts tab. Then click Apply to start the cache agent.
To stop a running cache agent process, right-click the node of the connection name for the TimesTen database and select Start/Stop Cache Agent in an identical fashion as was done when starting the cache agent.
In the Starting/stopping the cache agent dialog box, select Stop agent within the Prompts tab. Then click Apply to stop the cache agent.
Related Topics
A cache group defines the set of Oracle data to cache in the TimesTen database. When you create a cache group, cache tables are created in the TimesTen database that correspond to the Oracle tables being cached.
To create a cache group, right-click the Cache Groups node under the node of the connection name for the TimesTen database and select New Cache Group.
In the Create cache group dialog, specify a name for the cache group in the Name field within the Cache Group Attributes tab. For Type, choose the desired cache group type (read-only, asynchronous writethrough, synchronous writethrough or user managed).
Cache groups are categorized as either explicitly loaded or dynamic. If you are creating a dynamic cache group, then choose Dynamic in the Type section.
In an explicitly loaded cache group, data is loaded manually into its cache tables from the corresponding Oracle tables using a load or refresh operation, or automatically using an automatic refresh operation. In a dynamic cache group, data is loaded into its cache tables on demand from the corresponding Oracle tables using a dynamic load operation, or manually using a load operation.
A read-only, asynchronous writethrough (AWT) or synchronous writethrough (SWT) cache group can be defined as a dynamic cache group. A user managed cache group can be defined as a dynamic cache group if it does not contain all of the following characteristics:
Automatic refresh is defined
At least one of its cache tables are updatable
Committed updates on one or more of its updatable cache tables are propagated to the corresponding Oracle tables
Cache groups are classified as either local or global. If you are creating a global cache group, then select the Global in the Type section.
In a local cache group, data in its cache tables are not shared across TimesTen databases. In a global cache group, data in its cache tables are shared across TimesTen databases.
Only an AWT cache group can be defined as global cache group.
Within the Cache Group Attributes tab of the Create cache group dialog, if you are creating a user managed cache group and you select Autorefresh within the Table Attributes section to enable automatic refresh when either All tables readonly or Propagate all tables is selected, or you are creating a read-only cache group, then for the following automatic refresh characteristics:
Set the automatic refresh mode in the Mode field by choosing either Full or Incremental. The default automatic refresh mode is Incremental.
Set the automatic refresh interval in the Refresh Interval field by specifying a numeric value followed by a unit of time in minutes, seconds or milliseconds. The default automatic refresh interval is 5 minutes.
Set the automatic refresh state in the Refresh State field by choosing either Paused, On or Off. The default automatic refresh state is Paused.
If you are creating a user managed cache group, then from the Table Attributes section in the Cache Group Attributes tab within the Create cache group dialog, choose one:
All tables readonly: All cache tables are read-only
Propagate all tables: All cache tables are updatable and committed updates on the cache tables are propagated to the corresponding Oracle tables
Varies from table to table: Some cache tables are read-only and other cache tables are updatable where committed updates on the cache tables may or may not be propagated to the corresponding Oracle tables
Click the Tables tab in the Create cache group dialog. Right-click in the Tables panel and select Add root table.
The Select the root table dialog appears. The list of Oracle tables and Oracle synonyms that you can choose to designate as the root table for your cache group is displayed. Oracle tables that have primary keys and Oracle tables that have unique non-null indexes are available for selection.
Select the table and click OK.
To show only Oracle tables owned by the current connection user, choose Show only my tables.
Related Topics
In the Columns tab within the Tables tab of the Create cache group dialog, select the check boxes under the Inline field to specify the INLINE attribute for the column. You can specify the INLINE attribute for columns of type VARCHAR2, NVARCHAR2, and VARBINARY.
Select the check boxes under the Allow null values field for each cached column to accept null values. By default, the nullability of a cache table's column is identical to the nullability of the corresponding Oracle table's column.
Select the check boxes under the Cached field for each column to cache. By default, all columns of the table are selected and are cached. The Oracle table's unique identifying columns (primary key, unique index or unique constraint) must be included in the TimesTen cache table and constitutes the cache table's primary key.
To select all columns or deselect all columns, except for the Oracle table's unique identifying columns, to accept null values or to cache, select or deselect the check boxes that appear to the left of the Allow null values and Cached fields, respectively.
Some Oracle data types have multiple compatible TimesTen data types. For columns in the Oracle table whose data type can map multiple TimesTen data types, a menu appears under the Data type in TimesTen field for those columns. Select the desired data type for the column in the cache table. The default compatible TimesTen data type for the Oracle data type appears in italics.
For updatable cache tables, you can specify a default column value under the Default Value field for each cached column to define a default value. By default, the default value of a cache table's column is identical to the default value of the corresponding Oracle table's column.
By default, TimesTen creates a range index on the cache table's primary key columns. To create a hash index instead of a range index on the primary key columns, in the Primary Key section of the Table Attributes tab within the Tables tab of Create cache group, choose Use hash. You must size the hash index by specifying either the maximum number of rows the underlying cache table is anticipated to have or the number of pages to allocate to the index in the Hash sizing policy menu and the adjacent field after the colon (:) which requires a numeric value. The default selection is Current table row count.
For more information about the index that is automatically created on a cache table's primary key columns, see "CREATE CACHE GROUP" in the Oracle TimesTen In-Memory Database SQL Reference.
For more information about properly sizing a hash index, see "CREATE TABLE" in the Oracle TimesTen In-Memory Database SQL Reference.
By default, the primary key columns of a cache table are identical to the primary key columns of the corresponding Oracle database table. You can define a different column or set of columns as the primary key for the cache table.
In the Manual table management section of the Table Attributes tab within the Tables tab of the Create cache group dialog, click Redefine primary key.
In the Define Primary Key(s) dialog, the non-nullable unique columns of the corresponding Oracle table is shown in the Non-null unique columns list. Select the columns for the primary key of the cache table and then choose >> to move those columns into the Primary key(s) list. The order of the columns in a composite primary key is significant if a range index is to be created on the columns. Click OK to define the alternate primary key for the cache table.
If the primary key of the cache table consists of a different set of columns than the primary key of the corresponding Oracle table, then the tables may become unsynchronized when committed updates are made on the cache table or the corresponding Oracle table. Unique constraint violations can occur when:
Committed updates on the cache table are propagated to the corresponding Oracle table
Committed updates on the Oracle table are refreshed to the corresponding cache table
You can specify an optional WHERE clause for the cache table in the WHERE clause field of the Table Attributes tab within the Tables tab of Create cache group. A WHERE clause is only allowed for table definitions in a read-only cache group or a user managed cache group that has automatic refresh defined.
If the cache table is in a user managed cache group that has selected the Varies from table to table in the Table attributes section within the Cache Group Attributes tab of the Create cache group dialog, then you must specify the table attribute for the cache table.
In the Propagation Type section of the Table Attributes tab within the Tables tab of Create cache group, choose:
Readonly to define the cache table as read-only
Propagate to define the cache table as updatable with updates on the table to be propagated to the corresponding Oracle table
Neither to define the cache table as updatable with updates on the table not propagated to the corresponding Oracle table
By default, cache tables in a user managed cache group are updatable with updates on the table not propagated to the corresponding Oracle table.
Related Topics
You can specify an aging policy for the cache table in the Aging tab of the Create cache group dialog. An aging policy is explicitly defined on the root table of a cache group and it implicitly applies to all the child tables.
Choose:
Usage-based to define a least recently used (LRU) aging policy
Time-based to define a time-based aging policy
No aging to not define an aging policy
An LRU aging policy can be defined for tables in an explicitly loaded AWT, SWT or user managed cache group that does not have automatic refresh defined. The default aging state is set to off for global explicitly loaded cache groups. For dynamic cache groups that do not have automatic refresh defined, the default aging state is set to on and the type of aging is set to usage-based.
The TimesTen database memory usage thresholds that determine when data starts and stops being deleted from tables that are subject to LRU aging are shown when the Usage-based is selected. The default usage threshold that determines when data starts being deleted from the tables is 90%. The default usage threshold that determines when data stops being deleted from the tables is 80%. The default LRU aging cycle is 1 minute.
A time-based aging policy can be defined on a cache table that contains a non-nullable DATE or TIMESTAMP column. Columns in the table of these data types appear in the Column within the Aging tab of the Create cache group dialog when Time-based is selected. Select the column to store the timestamp value indicating when each row was inserted or most recently updated.
In the Life-time field, indicate the length of time in which data that has not been updated is to be kept in the table by specifying a numeric value followed by a unit of time in minutes, hours or days from the drop-down menu list.
In the Cycle field, indicate the frequency in which data is to be aged out of the table by specifying a numeric value followed by a unit of time in minutes, hours or days in the drop-down menu list. The default time-based aging cycle is 5 minutes.
Specify an aging state by choosing on or off.
After you have defined the tables and columns to cache, the type of index to create on the primary key columns, the table attributes including an optional WHERE clause, and an optional aging policy for the root table, you can view the CREATE CACHE GROUP statement used to create the cache group and its cache table in the DDL tab of the Create cache group dialog.
Click Apply to create the cache group and its cache table if you are not going to add any child tables to the cache group.
Related Topics
Within the Tables tab of the Create cache group dialog, right-click in the Tables panel and select Add child tables.
The Select one or more child tables dialog appears. This dialog displays the list of Oracle tables and Oracle synonyms that you can choose to designate as the child table(s) for your cache group. Oracle tables that have primary keys and Oracle tables that have unique non-null indexes are available for selection.
Select the tables to designate as the child tables for your cache group and click OK.
To select multiple child tables, press and hold the CTRL key, and click the desired tables. The child tables appear under their appropriate parent table. You can also drag and drop a particular child table so that it appears under the desired parent table.
To show only Oracle tables owned by the current connection user, choose Show only my tables.
Related Topics
Click a child table and in the Columns tab within the Tables tab of the Create cache group dialog, select the check boxes under the Allow null values field for each cached column to accept null values. By default, the nullability of a cache table's column is identical to the nullability of the corresponding Oracle table's column.
Select the check boxes under the Cached field for each column to cache. By default, all columns of the table are selected and are cached. The Oracle table's unique identifying columns must be included in the TimesTen cache table and constitute the cache table's primary key. The Oracle table's foreign key columns that reference its parent table must also be included in the cache table.
To select all columns or deselect all columns, except for the Oracle table's unique identifying columns and the foreign key columns that reference its parent table, to accept null values or to cache, select or deselect the check boxes that appear to the left of the Allow null values and Cache fields.
For columns in the Oracle table whose data type can map to multiple TimesTen data types, a drop-down select list appears under the Data type in TimesTen field for those columns. Select the desired data type for the column in the child cache table.
For updatable cache tables, you can specify a default column value under the Default Value field for each cached column in the child cache table that defines a default value.
In the Table Attributes tab within the Tables tab of the Create cache group dialog, select whether to create a range index or a hash index on the child cache table's primary key columns in a similar fashion as was specified for the root table. You can define a different column or set of columns as the primary key for the cache table than the columns of the corresponding Oracle table in a similar fashion as was specified for the root table. You can also specify an optional WHERE clause for the cache table in a similar fashion as was specified for the root table. A WHERE clause is only allowed for table definitions in a read-only cache group or a user managed cache group that has automatic refresh defined.
If you would like the foreign key columns of a child table to have cascade delete enabled such that when rows containing referenced key values are deleted from its parent table, rows in the child table with dependent foreign key values are automatically deleted, then select Cascade delete foreign key.
By default, the foreign key columns of a child cache table are identical to the foreign key columns of the corresponding Oracle table. You can define a different column or set of columns as the foreign key for the cache table.
In the Manual table management section of the Table Attributes tab within the Tables tab of the Create cache group dialog, select Redefine foreign key.
In the Define Foreign Key(s) dialog, the columns in the child table whose data types are compatible with the primary key columns of the parent table are shown in the Foreign Key(s) drop-down select list. Select the columns for the foreign key of the cache table. Click OK to define the alternate foreign key for the cache table.
If the child cache table is in a user managed cache group that has selected Varies from table to table in the Table attributes section within the Cache Group Attributes tab of the Create cache group dialog, then you must specify the table attribute for the cache table in a similar fashion as was specified for the root table. If the cache table is updatable, then specify whether updates on the table are to be propagated or not propagated to the corresponding Oracle table.
Related Topics
Define the columns to cache, the type of index to create on the primary key columns, the cascade delete setting for the foreign key columns, and the table attributes including an optional WHERE clause for any remaining child tables.
In the DDL tab of the Create cache group dialog, you can view the CREATE CACHE GROUP statement used to create the cache group and its cache tables.
Click Apply to create the cache group and its cache tables.
If you created an AWT cache group, then you must start the replication agent for committed updates on its cache tables to be asynchronously propagated to the corresponding Oracle tables.
This task must be performed either outside of SQL Developer using a command-line interface such as the ttIsql utility, or within SQL Developer using SQL Worksheet.
Related Topics
When you drop a cache group, its cache tables are also dropped.
Under the Cache Groups node within the node of the connection name for the TimesTen database, right-click the name of the cache group to drop and select Drop.
Click Apply to drop the cache group.
Related Topics
Click the + to the left of the Cache Groups node to view the list of cache groups. Next right-click the name of the cache group to load or refresh. Select Load to load the cache group or Refresh to refresh the cache group.
The cache agent must be running to load or refresh a cache group. .
For a read-only cache group or a user managed cache group that has automatic refresh defined, you must set the automatic refresh state to Paused before you can load or refresh the cache group.
In the Prompts tab of the Load or Refresh dialog, specify a numeric value in the Commit every n rows field to indicate the frequency, based on the number of rows that are loaded or refreshed into the cache group, at which a commit is issued during the load or refresh operation. By default, a transaction is committed after every 256 rows are loaded or refreshed into the cache group.
In the Number of threads to run in parallel field within the Prompts tab of the Load or Refresh dialog box, specify the number of cache agent process threads to spawn and use for the load or refresh operation. Parallel processing of the load or refresh operation can potentially improve the operation's throughput. The numeric value specified in this field cannot exceed 10 and should not exceed the number of CPUs on the system that can be dedicated to the parallel load or refresh operation. The default value of 1 indicates that the load or refresh operation is processed serially.
You can specify an optional WHERE clause for the load or refresh operation in the Where clause field within the Prompts tab of the Load or Refresh dialog. You can use a WHERE clause for a load or refresh operation on an AWT, SWT or user managed cache group that does not have automatic refresh defined.
Click Apply to load or refresh the cache group.
Only user managed cache groups containing cache tables that are not all read-only, or not all updatable where updates on the tables are propagated to the corresponding Oracle tables can be flushed.
Click the + to the left of the Cache Groups node to view the list of cache groups. Next right-click the name of the cache group that you to flush. Select Flush to flush the cache group.
In the Where clause field within the Prompts tab of the Flush dialog, specify an optional WHERE clause for the flush operation.
Click Apply to flush the cache group.
Related Topics
Click the + to the left of the Cache Groups node to view the list of cache groups. Next right-click the name of the cache group to unload. Select Unload to unload the cache group.
In the Where clause field within the Prompts tab of the Unload dialog, specify an optional WHERE clause for the unload operation. You can use a WHERE clause for an unload operation on an AWT, SWT or user managed cache group that does not have automatic refresh defined.
Click Apply to unload the cache group.
Related Topics
You can alter the automatic refresh attributes of a read-only cache group or a user managed cache group that has automatic refresh defined.
Under the Cache Groups node, right-click the name of the cache group and select Autorefresh.
In the Prompts tab of the Autorefresh dialog, you can change any of the following automatic refresh attributes:
To change the automatic refresh mode, in the Mode field, choose either Incremental or Full.
To change the automatic refresh interval, in the Refresh Interval field, specify a numeric interval and units of time in minutes, seconds or milliseconds.
To change the automatic refresh state, in the Refresh State field, choose Paused, On or Off.
Click Apply.
Related Topics
If you are using TimesTen release 11.2.2.2.0 or greater, then you can specify and display LOB data types in your table definitions.
If you want to create a table with a LOB data type, then in the Create Table dialog, expand the Type column header. You see CLOB, NCLOB, and BLOB as valid data types.
To view the data type for your columns, select the table and then choose the Columns tab. You see the LOB data type for your column.
If you want to add a column and specify a LOB data type, in the Add Column dialog, expand Data Type. You see CLOB, NCLOB, and BLOB among the possible choices.
For PL/SQL objects, you can specify LOB data types as IN, OUT, and IN OUT parameters. In the PL/SQL edit dialogs, for parameter types, choose CLOB, NCLOB, or BLOB.
You can specify the INLINE attribute for columns of type VARCHAR2, NVARCHAR2, and VARBINARY.
In the Create Table dialog, locate the column header named Inline. Click in the checkbox to define the column with the INLINE attribute.
You can also specify the INLINE attribute when adding a column to a table. Right-click on the table, select Column, then select Add. The Add Column dialog appears. For columns of type VARCHAR2, NVARCHAR2, and VARBINARY, click in the Inline checkbox to add the column with the INLINE attribute.
If you are using TimesTen Release 11.2.2.0 or greater, you can compute table size information.
To view table size information, you must first compute the table size:
Choose + to the left of the Tables node to view the list of tables.
Right-click the name of the table to compute table size information.
Select Table, then select Compute Size.
The Compute Size dialog appears. The owner and name of the table are displayed.
Click in the checkbox if you want to compute out-of-line sizes.
Choose Apply.
A Confirmation dialog appears.
Choose OK.
The table size statistics for the table are computed.
To view the SQL for computing the table size, choose the SQL tab in the Compute Size dialog. You see that a TimesTen built-in procedure called ttComputeTabSizes is executed. After this built-in is executed, you can review the table size information for your table. Note that this table size information is on a per table basis.
To compute table sizes for all tables in your database including materialized views, system tables, and tables that are part of cache groups, use the SQL Worksheet and execute the command: Call ttComputeTabSizes (NULL,0); or to include out-of-line data: Call ttComputeTabSizes (NULL,1);.
After you compute the table size for one or more tables, you can view the table size information:
Choose + to the left of the Tables node to view the list of tables.
Choose the table you want to review table size information.
Choose the Sizes tab located among the tabs that display the attributes of the table.
Table size information is displayed. Specifically, values for INLINE BYTES, OUT OF LINE BYTES, and METADATA BYTES are shown.
You can choose the Actions menu to generate or regenerate the table size. If you choose the Actions menu, then Table, then select Compute Size. The Compute Size dialog appears allowing you to compute the table size information.
Choose Refresh to refresh the displayed table size data.
You can view table size information for all tables that you have computed table sizes. To view such information, select TimesTen Reports, then Table, then select Table Sizes.
For more information on the ttComputeTabSizes built-in procedure, see "ttComputeTabSizes" in Oracle TimesTen In-Memory Database Reference.
You can test a PL/SQL function, procedure, or package by defining a REF CURSOR as an OUTPUT parameter in your PL/SQL function, procedure, or package. After you define a REF CURSOR, compile and run your PL/SQL function, procedure, or package. The Run dialog appears. Choose OK.
After you choose OK in the Run PL/SQL dialog, you can view the details of the run in the two tabs:
IdeConnections: Displays the status of your run including any errors encountered.
Output Variables: Shows the output from the execution of the function, procedure, or package.
You can create a primary key constraint on a table that does not have a primary key defined. Follow these steps:
Click the + to the left of the Tables node to view the list of tables. Then right-click the name of the table to create a primary key constraint.
Select Constraint, then select Add Primary Key.
The Add primary key dialog appears.
In the key index type field choose either Use range to create a primary key using a range index or Use hash to create a primary key using a hash index.
If you choose Use hash, you see the text with number of followed by a drop-down list of either row or pages. Select either row or pages and in the box after the colon (:), enter the number of rows or pages. The default selection is row.
In the Constraint Name field, enter the constraint name. The name cannot exceed 30 characters in length.
In the Column field(s), you see a drop-down list of column names. Choose the column name(s) to use for the primary key.
Click Apply.
The Confirm dialog box appears indicating that the primary key constraint has been added.
Click OK.
The primary key constraint has been added successfully.
To view the SQL statement used to create the primary key constraint, choose the SQL tab of the Add primary key dialog box.
See Also:
|
You can change the attributes of a primary key constraint after you have defined a primary key on a table. Follow these steps:
Click the + to the left of the Tables node to view the list of tables. Then right-click the name of the table on which to change the primary key attributes.
Select Constraint, then select Change Primary Key Parameters.
The Change parameters of a primary key dialog appears.
In the key index type field choose either Use range to change the primary key constraint from using a hash index to using a range index or Use hash to change the primary key constraint from using a range index to using a hash index.
If you choose Use hash, you see the text with number of followed by a drop-down list of either row or pages. Select either row or pages and in the box after the colon (:), enter the number of rows or pages. The default selection is row.
Click Apply.
The Confirm dialog appears indicating that the index(es) for the primary key constraint has been changed.
Click OK.
The index(es) for the primary key constraint has been changed successfully.
To view the SQL statement used to change the attributes of the primary key constraint, choose the SQL tab of the Change parameters of a primary key dialog.
See Also:
|
You can create a foreign key constraint on a table. Make sure you are on the main SQL Developer page and that your TimesTen connection is expanded.
Click the + to the left of the Tables node to expand the list of tables.
Right-click the name of the table and select Constraint, then select Add Foreign Key.
The Add Foreign Key dialog displays. The Owner and Name fields are auto-filled and you cannot edit these fields. Prepare to enter the Constraint Name.
To enable the ON DELETE CASCADE referential action, select the Cascade delete foreign key checkbox. If specified, when rows containing referenced key values are deleted from a parent table, rows in child tables with dependent foreign key values are also deleted.
In the Constraint Name field, enter the name of the foreign key.
Select the column on which to apply the foreign key constraint from the Column Name drop-down list.
Select the table name that the foreign key references from the Referenced Table Name drop-down list.
Select the column that the foreign key references from the Referenced Column drop-down list.
To view the SQL statement that will be used to create the foreign key constraint, choose the SQL tab of the Add Foreign Key dialog box.
Click Apply.
The Confirmation dialog box displays indicating that the foreign key constraint has been added.
Click OK.
The foreign key constraint has been added successfully.
See Also: For information about creating a foreign key constraint, see "CREATE TABLE" or "ALTER TABLE" in the Oracle TimesTen In-Memory Database SQL Reference |
You can drop a constraint from a TimesTen table. Make sure you are on the main SQL Developer page and that your TimesTen connection is expanded.
Click the + to the left of the Tables node to expand the list of tables.
Right-click the name of the table and select Constraint, then select Drop.
The Drop dialog displays. The Owner and Name fields are auto-filled and you cannot edit these fields. Prepare to select the Constraint.
Select the constraint that you want to drop from the Constraint drop-down list.
To view the SQL statement that will be used to drop the constraint, choose the SQL tab of the Drop dialog box.
Click Apply.
The Confirmation dialog box displays indicating that the constrain has been dropped.
Click OK.
The constraint has been successfully dropped.
To add an aging policy to a regular table or a cache table, under the Tables node, right-click the name of the table to add an aging policy to and select Aging, then select Add Usage-based to add an LRU aging policy. To add a time-based aging policy select Aging, then select Add Time-based. An aging policy can be added to a cache table only if it is the root table of a cache group.
To add an LRU aging policy to the table, in the Prompts tab of the Add Usage-based dialog box, specify an aging state by choosing either On or Off in the Usage-based aging field. The default aging state is on. Click Apply to add the LRU aging policy to the table.
The TimesTen database memory usage thresholds determine when data starts and stops being deleted from the table. The default memory usage threshold that determines when data starts being deleted from the table is 90%. The default memory usage threshold that determines when data stops being deleted from the table is 80%. The default LRU aging cycle is 1 minute.
An LRU aging policy can be added to any regular table, and only to cache tables in an AWT, SWT or user managed cache group that does not have automatic refresh defined.
To add a time-based aging policy to the table, in the Prompts tab of the Add time-based dialog box, select the column name from Column to store the timestamp value indicating when each row was added or most recently updated.
In the Life-time field, indicate the length of time in which data that has not been updated is to be kept in the table by specifying a numeric value followed by a unit of minutes, hours or days in the drop-down menu.
In the Cycle field, indicate the frequency at which data is to be aged out of the table by specifying a numeric value followed by a unit of minutes, hours or days. The default time-based aging cycle is 5 minutes.
Specify an aging state by choosing either On or Off in the Time-based aging field. The default aging state is on. Then click Apply to add the time-based aging policy to the table.
A time-based aging policy can only be added to a table that contains a non-nullable DATE or TIMESTAMP column.
Related Topics
To drop an existing aging policy from a regular table or a cache table, under the Tables node, right-click the name of the table to drop an aging policy from and then select Aging, then select Drop.
Click Apply to drop the aging policy from the table.
To change the aging state of a regular table's or cache table's existing aging policy, under the Tables node, right-click the name of the table to change the aging state of and then select Aging, then select Change State On/Off.
In the Prompts tab of the Change state on/off dialog, change the aging state by selecting either On or Off in the Change aging state field. Click Apply to change the aging state of the table.
To change the memory usage thresholds and the LRU aging cycle, right-click the node of the connection name for the TimesTen database and choose Change Usage-based Aging Attributes.
In the Prompts tab of the Changing the usage-based thresholds dialog box, specify the threshold that determines when data starts being deleted from the tables in the High usage threshold field. Specify the threshold that determines when data stops being deleted from the tables in the Low usage threshold field. Specify the LRU aging cycle in the Update Frequency field. Then click Apply to change the memory usage thresholds and the LRU aging cycle.
The new settings apply to all tables that have an LRU aging policy defined.
To change the lifetime and cycle of a regular table's or cache table's existing time-based aging policy, under the Tables node, right-click the name of the table to change the lifetime and cycle of and select Aging, then select Change Lifetime and Cycle.
In the Life-time field within the Prompts tab of the Change Lifetime and Cycle dialog box, change the length of time in which data that has not been updated is to be kept in the table by specifying a numeric value followed by a unit of minutes, hours or days.
In the Cycle field, change the frequency at which data is to be aged out of the table by specifying a numeric value followed by a unit of minutes, hours or days.
Then click Apply to change the lifetime and cycle for the table.
You can grant privileges to and revoke privileges from the following database objects:
Regular and cache tables
Regular and materialized views
Sequences
PL/SQL packages, procedures and functions
To grant privileges on an object, right-click the name of the object and select Privileges, then select Grant.
In the Users drop-down menu of the Grant dialog box, select the user to grant object privileges to the object. In the Privileges section, select the All check box or click >> to grant all available object privileges on the object to the selected user. Otherwise, select the individual privileges from the Available Privileges list for the privileges to grant to the selected user and then click > to move those privileges into the Selected Privileges list. To select multiple privileges, press and hold the CTRL key, and click the desired privileges. Click Apply to grant the selected object privileges on the object to the selected user.
For a particular object type, only the available object privileges are shown. For example, DELETE, INDEX, INSERT, REFERENCES, SELECT and UPDATE privileges can be granted on a table. However, only INDEX, REFERENCES and SELECT privileges can be granted on a materialized view.
Only users with the ADMIN system privilege or the owner of an object can grant object privileges on the object.
Related Topics
To revoke privileges from an object, right-click the name of the object and select Privileges, then select Revoke.
In the Users drop-down menu of the Revoke dialog box, select the user to revoke object privileges from the object. In the Privileges section, select the All check box or click >> to revoke all granted object privileges on the object from the selected user. Otherwise, select the individual privileges from the Available Privileges list for the privileges to revoke from the selected user and then click > to move those privileges into the Selected Privileges list. To select multiple privileges, press and hold the CTRL key, and click the desired privileges. Click Apply to revoke the selected object privileges on the object from the selected user.
The Users drop-down menu shows only users who have been granted object privileges on the object. For a particular user, only the object privileges that they have been granted are shown.
Only users with the ADMIN system privilege or the owner of an object can revoke object privileges from the object.
You can load data into your table using Import Data. Before you can load your data, you must export the data into a file. To export the data, right-click on the name of the table and choose Export. After successfully exporting your data, you can import the data.
Choose + to the left of the Tables node to view the list of tables.
Right-click on the table name.
Select Table, then select Import Data.
An Open dialog appears. Locate the data file to import. This file is the file you previously exported.
Choose Open.
The data is loaded into the table.
The replication agent process transmits committed updates on replicated tables in a master TimesTen database to the corresponding replicated tables in a subscriber TimesTen database. The replication agent is also responsible for asynchronously propagating committed updates on cache tables in AWT cache groups to the corresponding Oracle tables. After you create a replication scheme or an AWT cache group, you must start the replication agent if it is not running.
To start the replication agent, right-click the node of the connection name for the TimesTen database and select Start/Stop Replication Agent.
The Starting/stopping the replication agent dialog appears. In the Prompts tab, select Start agent. Click Apply.
If there are no replication schemes or AWT cache groups in your TimesTen connection, the replication agent is not started.
To stop a running replication agent process, right-click the node of the connection name for the TimesTen database and select Start/Stop Replication Agent.
The Starting/stopping the replication agent dialog appears. In the Prompts tab, select Stop agent. Click Apply.
The query optimizer uses statistics stored in TimesTen database system tables to determine the optimal execution plan for a statement. TimesTen stores table level statistics in the SYS.TBL_STATS table. Column level statistics, such as the minimum and maximum value and the number of unique values in a column, are stored in the SYS.COL_STATS table.
TimesTen does not compute table and column statistics as updates occur on regular and cache tables. Instead, TimesTen updates statistics when an explicit request is made.
You can update statistics for all tables owned by a user or for a specific table owned by an user.
To update statistics for all tables, right-click the Tables node and select Statistics, then select Update.
To update statistics for a specific table, click the + to the left of the Tables node. Right-click the name of the table and select Statistics, then select Update.
In the Prompts tab of the Update statistics dialog, choose Invalidate referenced commands to invalidate the execution plans of statements that reference the table for which statistics are updated. When you invalidate the execution plan of a statement, TimesTen recompiles or reprepares that statement upon its next execution.
For Interval type for table statistics, choose Complete interval to divide the rows of the table into two or more intervals and compute statistics on each interval, or Single interval to compute statistics on the entire set of rows as a single interval. You must define a range index on the table to compute complete interval statistics.
Click Apply.
To view the optimizer statistics of a table, click the name of the table.
In the Statistics tab of the table pane, the top section shows the table statistics such as:
The number of rows in the table
A timestamp indicating when statistics were most recently updated for the table
The bottom section shows the column statistics. For each column, the following information is displayed:
The name of the column
The number of intervals the data is divided into to compute statistics
Total number of NULL values
Total number of non-NULL unique values
Total number of rows in each interval
For each interval of each column, SQL Developer displays the following:
The number of unique values other than the most frequently occurring value
The number of rows that contain a value other than the most frequently occurring value
The number of rows that contain the most frequently occurring value
The minimum value
The maximum value
The most frequently occurring value
Related Topics
You can generate a set of SQL statements that allow you to restore the table statistics to the current state. You can generate SQL statements for a single table or for user tables that the connection user has permission to access. After you export your table statistics to a .sql file, you can import your table statistics by opening the .sql file in SQL Developer and running the script file.
To export the current TimesTen table statistics, make sure you are on the main SQL Developer page.
To save table statistics for a single table, right-click the name of the table and select Statistics, then select Export. To save table statistics for all user tables, right-click Tables and select Statistics, then select Export.
The Export Optimizer Statistics dialog displays. Locate the Save button at the bottom right of the dialog.
Click Save.
The Save Optimizer Statistics Export Commands dialog displays.
Select the directory where you want to save the current TimesTen table statistics.
In the File Name field, define the name of your current TimesTen table statistics.
The default filename of the current TimesTen table statistics is connection_name-exportstatistics-YYYYMMDDMISS.sql, where connection_name is the name of the connection. YYYYMMDDHHMISS is a timestamp of when the recommendations were made, where YYYY is the year, MM the month, DD the day, HH the hour, MI the minutes, and SS the seconds.
Click Save.
TimesTen saves your current TimesTen table statistics.
A snapshot is a collection of performance metrics from a database. You can create a report comparing two snapshots to analyze the performance of your database.
To create a new snapshot of a database, make sure you are on the main SQL Developer page and that you have expanded the TimesTen connection in the connections navigator.
Right-click the name of the database and select TimesTen Performance Metrics, then select Create Snapshot.
The New TimesTen Metrics Snapshot dialog displays.
In the Prompts tab of the New TimesTen Metrics Snapshot dialog, select the desired capture level from the Capture Level drop-down list:
TYPICAL: For a typical set of metrics. This level is appropriate for most purposes. This is the default capture level.
NONE: For metrics outside of SYS.SYSTEMSTATS only.
BASIC: For a minimal basic set of metrics.
ALL: For all available metrics.
Make sure to use the same capture level for any two snapshots to be used in a report. An error dialog displays if you attempt to generate a report that compares two snapshots with different capture levels.
You are now ready to create a new snapshot.
Click Apply to create the snapshot.
A confirmation dialog shows the ID number of the snapshot. TimesTen generates the snapshot ID.
Click OK.
TimesTen creates the snapshot with the specified snapshot ID. The snapshot ID is useful for creating TimesTen metrics reports.
Consider dropping unneeded snapshots to free up permanent space. If you need to save more snapshots of your database, consider editing the TimesTen performance metrics configuration. See "Editing the TimesTen performance metrics configuration" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide.
To drop a new snapshot from a database, make sure you are on the main SQL Developer page.
Right-click the name of the database and select TimesTen Performance Metrics, then select Drop Snapshot.
By default, the Prompts tab of the Drop TimesTen Metrics Snapshot(s) dialog is selected. In the Selector column, select the snapshots you want to drop.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Selector
The check box you select to determine the snapshots that you want to drop.
Snapshot
The snapshot ID of the snapshot.
Timestamp
The timestamp of when the snapshot was captured.
Capture Level
The capture level of the snapshot. This value can be TYPICAL, NONE, BASIC, or ALL.
To select all snapshots, click the Select all check box.
Once you have selected the snapshots that you want to drop, click the Apply button.
A Confirm dialog displays asking you if you want to proceed with dropping the selected snapshots.
Click Yes.
A confirmation dialog displays a message indicating that one or more TimesTen Metrics snapshots were dropped.
Click OK.
You successfully dropped the TimesTen metrics snapshots.
TimesTen performance metrics configuration allows you to modify the maximum snapshot count and the maximum snapshot retention size. These configuration settings are useful both in preventing your database from running out of permanent space and in allowing you to save more snapshots.
Once the maximum snapshot count or the maximum snapshot retention size is reached, TimesTen removes the oldest snapshots to free up permanent space. By default, the maximum snapshot count is 256 and the maximum snapshot retention size is 256 MB.
To edit the TimesTen performance metrics configuration for a database, make sure you are on the main SQL Developer page.
Right-click the name of the database and select TimesTen Performance Metrics, then select Edit Configuration.
The TimesTen Metrics Configuration dialog displays and you see the current configuration for the TimesTen metrics.
The Prompts tab of the TimesTen Metrics Configuration dialog is selected. In the Maximum Snapshot Count field, specify a numeric value to indicate the maximum number of snapshots. By default, the maximum number of snapshots is 256.
In the Maximum Snapshot Retention Size (MB) field, specify the maximum total size of all stored snapshots, in megabytes. By default, the maximum snapshot retention size is 256 MB.
Click Apply.
You have applied the new TimesTen Metrics configuration settings.
TimesTen performance metrics reports use the data from two specified snapshots of TimesTen metrics to produce a report in HTML format. TimesTen metrics reports include information for each metric. For more information about the various metrics displayed in the report, see "Report examples" in the Oracle TimesTen In-Memory Database Reference.
To generate a new report for a database, make sure you are on the main SQL Developer page.
Right-click the name of the database and select TimesTen Performance Metrics, then select Report.
The Create TimesTen Metrics Report dialog displays.
By default, the Report generator tab of the Create TimesTen Metrics Report dialog is selected. In the Selector column, select two snapshots to compare.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Selector
The check box that determines the snapshots that are compared in the metrics report. Make sure to only select two snapshots with the same capture level. An error dialog displays if you attempt to generate a report that compares more than two snapshots.
Snapshot
The snapshot ID of the snapshot.
Timestamp
The timestamp of when the snapshot was captured.
Capture Level
The capture level of the snapshot. This value can be TYPICAL, NONE, BASIC, or ALL.
Once you have selected two snapshots with the same capture level, click the Generate report button. An error dialog displays if you attempt to generate a report that compares snapshots with different capture levels.
TimesTen generates your TimesTen metrics report. You can view the generated TimesTen metrics report in the pane located below the Generate report button.
If you do not want to save the report, click Close. If you want to save the report, see Save a report.
If you want to save the report for future reference, follow these steps:
Click Save.
The Save dialog displays.
Select the directory where you want to save the TimesTen metrics report.
In the File Name field, define the name of your TimesTen metrics report.
The default filename of the TimesTen metrics report is ttstats-snapshot_id_1-snapshot_id_2-YYYYMMDDHHMISS.html, where snapshot_id_1 and snapshot_id_2 are the snapshot IDs of the two snapshots you are comparing in your report. YYYYMMDDHHMISS is a timestamp of when the report was generated, where YYYY is the year, MM the month, DD the day, HH the hour, MI the minutes, and SS the seconds.
Click Save.
SQL Developer saves your report.
Before attempting to capture data for the TimesTen Index Advisor, make sure your table statistics have been updated in the past 24 hours. Up-to-date table statistics provide the most up-to-date statistics for data collection and allow statements to be prepared with the optimized query plan.
You have the following options:
You can capture data for the TimesTen Index Advisor at the connection level from the SQL Developer SQL worksheet. Make sure your SQL workload is in the SQL Developer SQL worksheet.
Click the TimesTen Index Advisor button from the SQL worksheet menu bar.
If your table statistics are outdated, an information dialog displays information about the outdated tables. TimesTen recommends that you update your table statistics.
If your table statistics are up to date, the Index Advisor Configuration dialog displays.
To update your table statistics, click Cancel and follow the steps in "Updating the table and column statistics used by the query optimizer" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide. To proceed without updating your table statistics, click OK.
The Index Advisor Configuration dialog displays.
Select the desired capture mode from the Capture mode drop-down list:
Prepare SQL: TimesTen prepares but does not execute the SQL commands from the SQL worksheet. The TimesTen Index Advisor makes recommendations using computed statistics and query plan analysis. This is the default capture mode.
Execute SQL: TimesTen executes the SQL commands from the SQL worksheet. The TimesTen Index Advisor makes recommendations using the actual execution of the SQL commands. This capture mode may take longer than the Prepare SQL mode because TimesTen has to complete SQL execution.
You are ready to choose if you want to use optimizer hints.
The Include optimizer hints for Oracle BI server checkbox allows you to use optimizer hints that direct the TimesTen query optimizer to generate a specific execution plan. These optimizer hints are recommended queries generated by the Oracle BI server. If you do not want to use optimizer hints, click Start.
The Index Advisor Configuration dialog closes. A TimesTen index advisor pane displays at the bottom of the SQL worksheet.
In the Selector column, select the index recommendations you want to create.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Selector
The check box you select to determine the index recommendations that you want to create.
Index Recommendation
The CREATE INDEX statement that the TimesTen index advisor recommends.
Affected Statement Count
The number of statements that benefit from the recommendation.
Created
Shows if you have already created the index recommendation. This value can be Yes or No.
If you want to select all index recommendations, click the Select all check box.
If you want to review the SQL commands that are being evaluated by the TimesTen index advisor, click the SQL tab. The SQL tab is located at the top right of the TimesTen index advisor pane.
Once you select the index recommendations that you want to create, click the Create Selected Indexes button.
The Create Selected Indexes dialog displays. Locate the Details >> button.
Click Details >>.
A details pane expands that shows progress information about creating the selected indexes. Locate the Close button at the bottom of the dialog.
Click Close.
The Create Selected Indexes dialog closes. TimesTen creates the indexes.
To save index recommendations for future reference, follow these steps:
Click Save Indexes. TimesTen saves all index recommendations. TimesTen does not save individual index recommendations.
The Save Indexes dialog displays.
Select the directory where you want to save the TimesTen index advisor recommendations.
In the File Name field, define the file name of your TimesTen index advisor recommendations.
The default filename of the TimesTen index advisor recommendations is connection_name-indexadvice-YYYYMMDDMISS.sql, where connection_name is the name of the connection. YYYYMMDDHHMISS is a timestamp of when the recommendations were made, where YYYY is the year, MM the month, DD the day, HH the hour, MI the minutes, and SS the seconds.
Click Save.
TimesTen saves the index recommendations.
The saved file header contains the following information:
The timestamp of when TimesTen generated the report.
The version of SQL Developer.
The version of the TimesTen database.
The name of the TimesTen connection.
For example:
-- This file was generated by SQL Developer at 2013-04-29 11:08:45 -- SQL Developer version 4.0.0.11.51 -- Database version: 11.02.02.0005 Oracle TimesTen IMDB version 11.2.2.5.0 -- Connection name: sampledb_1122
You can capture data for the TimesTen Index Advisor at the connection level using the SQL queries from a SQL workload script file. Make sure you are on the main SQL Developer page and that your TimesTen connection is expanded.
Right-click the name of the database and select Index Advisor, then select Connection Level Capture.
If your table statistics are outdated, an information dialog displays information about the outdated tables. TimesTen recommends that you update your table statistics.
If your table statistics are up to date, the Index Advisor Configuration dialog displays.
To update your table statistics, click Cancel and follow the steps in "Updating the table and column statistics used by the query optimizer" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide. To proceed without updating your table statistics, click OK.
The Index Advisor - Connection Level Capture dialog displays.
In the Configuration tab of the Index Advisor - Connect Level Capture dialog, select the desired capture mode from the Capture mode drop-down list:
Prepare SQL: TimesTen prepares but does not execute the SQL commands from the workload script. The TimesTen Index Advisor makes recommendations using computed statistics and query plan analysis. This is the default capture mode.
Execute SQL: TimesTen executes SQL commands from the workload script. The TimesTen Index Advisor makes recommendations using the actual execution of the workload script. This capture mode may take longer than the Prepare SQL mode because TimesTen has to complete SQL execution.
You are ready to specify your SQL workload script. Locate the Browse button that is to the right of the Workload script field.
Click Browse.
The Open dialog displays.
Select the directory where you saved your SQL workload script.
Select the SQL workload script for which you want to generate index recommendations.
Click Open.
The TimesTen index advisor is now ready to collect data for your SQL workload. Locate the Start button.
To review the SQL commands that are being evaluated by the TimesTen index advisor, click the SQL tab. The SQL tab is located at the top of the Index Advisor - Connection Level Capture dialog.
The Include optimizer hints for Oracle BI server checkbox allows you to use optimizer hints that direct the TimesTen query optimizer to generate a specific execution plan. These optimizer hints are recommended queries generated by the Oracle BI server. If you do not want to use optimizer hints, click Start.
The Index advisor assistant progress dialog displays. Locate the Details >> button.
If the TimesTen index advisor does not have any recommendations, the Index Recommendation Feedback dialog displays. Close this dialog to return to the main SQL developer page.
Click Details >>.
A details pane expands that shows progress information about the index advisor connection level capture. Locate the Close button at the bottom of the dialog.
Click Close.
The Index advisor assistant progress dialog closes. Locate the Index Recommendations tab.
Click the Index Recommendations tab.
The Index Recommendations tab of the Index Advisor - Connection Level Capture dialog displays.
In the Selector column, select the index recommendations that you want to create.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Selector
The check box you select to determine the index recommendations that you want to create.
Index Recommendation
The CREATE INDEX statement that the TimesTen index advisor recommends.
Affected Statement Count
The number of statements that benefit from the recommendation.
Created
Shows if you have already created the index recommendation. This value can be Yes or No.
If you want to select all index recommendations, click the Select all check box.
Once you have selected the index recommendations that you want to apply, click the Create Selected Indexes button.
The Creating Selected Indexes dialog displays. Locate the Details >> button.
Click Details >>.
A details pane expands that shows progress information about creating the selected indexes. Locate the Close button at the bottom of the dialog.
Click Close.
The Creating Selected Indexes dialog closes. TimesTen created the indexes. If you want to save the index recommendations, see "Saving index recommendations" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide.
Before attempting to capture data for the TimesTen Index Advisor, make sure your table statistics have been updated in the past 24 hours. Up-to-date table statistics provide the most up-to-date statistics for data collection and allow statements to be prepared with the optimized query plan.
To collect data for the TimesTen index advisor at the database level, make sure you are on the main SQL Developer page and that your TimesTen connection is expanded.
Right-click the name of the database and select Index Advisor, then select Database Level Capture.
If your table statistics are outdated, an information dialog displays information about the outdated tables. It is recommended that your table statistics are up to date.
If your table statistics are up to date, the Index Advisor - Database Level Capture dialog displays.
To update your table statistics, click Cancel and follow the steps in "Updating the table and column statistics used by the query optimizer" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide. If you want to proceed without updating your table statistics, click OK.
The Index Advisor - Database Capture dialog displays. Locate the Start button at the bottom of the dialog.
In the Control tab of the Index Advisor - Connect Level Capture dialog, click Start.
The Index Advisor Database Capture In Progress dialog displays. Locate the Details >> button.
Click Details >>.
A details pane expands that shows progress information about the index advisor database level capture. Locate the Close button at the bottom of the dialog.
Click Close.
The Index Advisor Database Capture In Progress dialog closes.
Once you have captured your desired SQL workload, click Stop.
If the TimesTen index advisor has recommendations, the Index Advisor Database Capture In Progress dialog displays.
If the TimesTen index advisor does not have any recommendations, the Index Recommendation Feedback dialog displays. You may close this dialog to return to the main SQL developer page.
If the TimesTen index advisor has recommendations, click Details >>.
A details pane expands that shows progress information about the index advisor database capture. Locate the Close button at the bottom of the dialog.
Click Close.
The Index Advisor Database Capture In Progress dialog closes. The Index Advisor Database Capture dialog shows information about the completed database capture. Locate the Index Recommendations tab at the top of the dialog.
Click the Index Recommendations tab.
The Index Recommendations tab of the Index Advisor - Database Capture dialog displays.
In the Selector column, select the index recommendations that you want to create.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Selector
The check box you select to determine the index recommendations that you want to create.
Index Recommendation
The CREATE INDEX statement that the TimesTen index advisor recommends.
Affected Statement Count
The number of statements that benefit from the recommendation.
Created
Shows if you have already created the index recommendation. This value can be Yes or No.
If you want to select all index recommendations, click the Select all check box.
Once you have selected the index recommendations that you want to apply, click the Create Selected Indexes button.
The Creating Selected Indexes dialog displays. Locate the Details >> button.
Click Details >>.
A details pane expands that shows progress information about creating the selected indexes. Locate the Close button at the bottom of the dialog.
Click Close.
The Creating Selected Indexes dialog closes. The indexes are created. If you want to save the index recommendations, see "Saving index recommendations" in the Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide.
The TimesTen index advisor capture state allows you to view the status of connection and database level captures. To view the TimesTen index advisor capture state for a database, make sure you are on the main SQL Developer page.
Right-click the name of the database and select Index Advisor, then select Index Advisor Capture State.
The Index Advisor Capture State dialog displays and you see the current status of connection and database level captures.
You can also click on the column header to sort the table based on the column. A description of each column follows:
Connection ID
The connection ID of the connection that initiated the TimesTen index advisor capture.
Capture Level
The capture level of the TimesTen index advisor capture. This value can be Connection or Database.
Capture Mode
The capture mode of the TimesTen index advisor capture. This value can be Execute SQL or Prepare SQL.
Capture State
The capture state of the TimesTen index advisor capture. This value can be In Progress or Completed.
Prepared Count
The number of prepared SQL statements during the capture period.
Execute Count
The number of executed SQL statements during the capture period.
Start Time
The timestamp of when the index advisor capture began. The timestamp format is YYYY-MM-DD HH:MI:SS.FF, where YYYY is the year, MM the month, DD the day, HH the hour, MI the minutes, SS the seconds, and FF the milliseconds.
End Time
The timestamp of when the index advisor capture ended. The timestamp format is YYYY-MM-DD HH:MI:SS.FF, where YYYY is the year, MM the month, DD the day, HH the hour, MI the minutes, SS the seconds, and FF the milliseconds. This value is empty if the Capture State is in In Progress.
Click Refresh to update the table with the most current information of the TimesTen index advisor captures.
The Index Advisor Capture State dialog is refreshed with the most recent capture state information.