Tibero Object Usage Guide
|
|
- Laurence Newman
- 6 years ago
- Views:
Transcription
1 Tibero Object Usage Guide Copyright 2014 TIBERO Co., Ltd. All Rights Reserved.
2 Copyright Notice Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. 5, Hwangsaeul-ro 329beon-gil, Bundang-gu, Seongnam-si, Gyeonggi-do, Korea Restricted Rights Legend All TIBERO Software (Tibero and documents are protected by copyright laws and international convention. TIBERO software and documents are made available under the terms of the TIBERO License Agreement and may only be used or copied in accordance with the terms of this agreement. No part of this document may be transmitted, copied, deployed, or reproduced in any form or by any means, electronic, mechanical, or optical, without the prior written consent of TIBERO Co., Ltd. Trademarks Tibero DB is a registered trademark of TIBERO Co., Ltd. Other products, titles or services may be registered trademarks of their respective companies. Document Information Document Name: Tibero Object Usage Guide Document Created: Software Version: Tibero 5 Document Version: 2.1.1
3 Table of Contents About This Document... vii Chapter 1. IOT (Index Organized Table Basic Concept Creating an IOT... 3 Chapter 2. Partition Table Basic Concept Type of Partition Table Range Partition Hash Partition List Partition Composite Partition Managing Partition Tables Partition Index Chapter 3. External Table Basic Concept Creating an External Table Chapter 4. External Procedure Basic Concept External C Procedure Execution Environment Configuration Creating External C Procedures External Java Procedure Execution Environment Configuration Creating External Java Procedures Tibero iii
4
5 List of Figures [Figure 1.1] Structure of an Ordinary Table and IOT... 1 [Figure 4.1] Execution of an External C Procedure [Figure 4.2] Execution of a Java External Procedure Tibero v
6
7 About This Document Intended Audience This guide is intended for database users who plan to use objects. Required Knowledge This guide describes how to use objects. To fully understand this guide, users must have an understanding of the following: Database RDBMS SQL tbpsm Document Scope This guide does not contain all the information needed for the actual application or operation of objects. About This Document vii
8 Conventions Convention <AaBbCc123> <Ctrl>+C [Button] Boldface " " (double quotes 'Input Item' Hyperlink > Note Meaning Filename of a program or source code Hold the Control key and press C Button or Menu name Emphasis Reference to chapters or sections in the manual, or to other related documentation Description for an input item on the screen account, website, or a link to other chapters or sections Progress order of menus Files or directories exist below Files or directories do not exist below Reference or note [Figure 1.1] [Table 1.1] AaBbCc123 Figure name Table name Command, execution result, or example code { } [ ] Required argument Optional argument viii Tibero Object Usage Guide
9 Chapter 1. IOT (Index Organized Table This chapter describes an IOT and how it can be created Basic Concept When an ordinary table uses an index to access a record, the table first looks up the index using the key value. The table uses the key value to get a ROWID and uses it to read data. To enable fast random access, data for an index-organized table is stored in a tree index structure in a primary key sorted manner. An IOT can be applied to three different types of tables: master tables using a nested-loop algorithm, tables with fewer columns that are primarily indexes, and tables that don't need an index except for primary key fields. IOTs and ordinary tables have the following differences. An ordinary table distinguish rows using a ROWID but an IOT uses a primary key. A full scan of ordinary tables randomly returns the rows, but an IOT outputs the rows based on its primary key values. An IOT must create a primary key. IOTs requires less storage than ordinary tables. [Figure 1.1] Structure of an Ordinary Table and IOT Chapter 1. IOT (Index Organized Table 1
10 The following table shows the advantages and disadvantages of an IOT. Category Advantage Description Faster random access of the primary key compared to ordinary tables Lower storage requirements because primary keys are not duplicated Disadvantage When changing data, sort operations occur and results in lower system performance (If data input, modification, and deletion frequently occur, IOT is not recommended. Direct path insert does not work for an IOT Becomes slower as more columns are added Features of Tibero IOT Category Supported Description The column size can be modified The default, NULL, and NOT NULL values of a column can be specified Multiple columns can be simultaneously modified Columns and column constraints can be deleted Not Supported Partitioning-related clauses for ALTER TABLE can be used in a partitioned IOT (DROP PARTITION and MODIFY PARTITION are not supported Possible to only modify NULL and NOT NULL (CHECK and UNIQUE constraints are not supported Modifying a primary key (will be supported in later versions Note They are the features for Tibero 5 r Tibero Object Usage Guide
11 1.2. Creating an IOT Creating an IOT CREATE TABLE <Table Name> ( <column 1>, <column 2>, <column 3>, PRIMARY KEY (<column 1, column 2> ORGANIZATION INDEX TABLESPACE <Tablespace Name> PCTTHRESHOLD <row ratio> INCLUDING <column> OVERFLOW TABLESPACE <Tablespace name>; The following table describes the items required to create an IOT. Item ORGANIZATION INDEX PCTTHRESHOLD Description Defines the creation of an IOT and uses the specified tablespace. Specifies a threshold value as a percentage of the block size. If the input data exceeds the specified size limit, the non-key columns are moved to the tablespace set in the OVERFLOW TABLESPACE clause. If INCLUDING is not specified, the column values that exceed the specified size limit are moved to the overflow tablespace. If INCLUDING is specified, if the columns following the specified INCLUDING column exceed the PCTTHRESHOLD range, they are stored in the overflow segment. INCLUDING OVERFLOW All columns after the specified INCLUDING column are stored in the overflow segment. INCLUDING is the last column of the primary key but any column other than the primary key can be specified by this option. Specifies the tablespace to store data in the overflow area. Chapter 1. IOT (Index Organized Table 3
12 Creating an IOT SQL> CREATE TABLE JOB_IOT ( JOBID VARCHAR(10 BYTE, JOBNAME VARCHAR(35 BYTE, MINSAL NUMBER(6, MAXSAL NUMBER(6, PRIMARY KEY (JOBID ORGANIZATION INDEX TABLESPACE USERS PCTTHRESHOLD 20 INCLUDING JOBID OVERFLOW TABLESPACE USERS; ; Table 'JOB_IOT' created. Total elapsed time 00:00: Be aware of the followings when creating an IOT. Either LOB or LONG must be excluded. The maximum number of columns is A maximum of 255 columns can be specified in the index field. If the number of columns exceeds the limit, an overflow tablespace must be specified. The value of PCTTHRESHOLD is However, due to structural problems, the maximum size of the rows to be stored in the index field is less than 50% of the maximum size of the block. All columns must be smaller than PCTTHRESHOLD. 4 Tibero Object Usage Guide
13 Chapter 2. Partition Table This chapter explains the basic concept of a partition table and how it is created Basic Concept Tables are split into smaller units (partitions to avoid performance degradation when the amount of data increases. Splitting tables into smaller units facilitates easy operation and management of tables. Tables and indexes can be partitioned. While each partition shares the definition of the table columns and constraints, the partitions can be individually managed as a segment having different physical attributes. The following table shows the advantages and disadvantages of a partition table. Category Advantage Description The number of data accesses is reduced when checking data. Fewer data accesses can improve data processing. Tables are physically partitioned into multiple areas to minimize the damage to the entire data and to improve the availability of the data. Possible to perform a backup and recovery of each partition. Distributes disk I/O with table partitioning so that I/O contention is reduced. Disadvantage When updating (Drop or Split the partitions where data is accumulated, the global index becomes unusable. An error occurs when data that is out of the partitioning range is received. Partitions must be periodically created or deleted. Chapter 2. Partition Table 5
14 2.2. Type of Partition Table Range Partition Range Partitioning allows a table to be partitioned by a specified range of the partitioning key; it is often used with dates. Users can use the partitioning key to identify which partition the data is stored in, making this partition table advantageous when managing data. However, there can be some problems with range partitioning. Data distribution for table partitions is dependent upon its partition keys, a partition may receive too much data compared to others. Creating a range partition table How to create CREATE TABLE <Table Name> ( <Column 1>, <Column 2>, <Column 3> PARTITION BY RANGE(<Column> ( PARTITION <Partition Name> VALUES LESS THAN (<Value>, PARTITION <Partition Name> VALUES LESS THAN (<Value>, PARTITION <Partition Name> VALUES LESS THAN (MAXVALUE ENABLE ROW MOVEMENT; Example SQL> CREATE TABLE DEPT_PART_R ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PARTITION BY RANGE(DEPTNO ( PARTITION PART1 VALUES LESS THAN (11, PARTITION PART2 VALUES LESS THAN (21, PARTITION PART3 VALUES LESS THAN (31, PARTITION PART4 VALUES LESS THAN (41, PARTITION PARTMAX VALUES LESS THAN (MAXVALUE ENABLE ROW MOVEMENT; Table 'DEPT_PART_R' created. 6 Tibero Object Usage Guide
15 Verifying the creation of the data and range partition tables 1. Create data. SQL> INSERT INTO DEPT_PART_R SELECT LEVEL, CHR(65+MOD(LEVEL,26, LEVEL, LEVEL FROM DUAL CONNECT BY LEVEL <= 60; 60 rows inserted. SQL> COMMIT; Commit completed. 2. Collect statistical information. SQL> begin dbms_stats.gather_table_stats(ownname=>'dbtech', TABNAME=>'DEPT_PART_R', ESTIMATE_PERCENT=>100; end; / PSM completed. 3. Verify the amount of accumulated data and the creation of partition tables. SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col BOUND format a10 SQL> col NUM_ROWS format 999,999,999 SQL> SQL> SELECT TABLE_NAME, PARTITION_NAME, BOUND, NUM_ROWS FROM USER_TAB_PARTITIONS WHERE table_name = 'DEPT_PART_R'; TABLE_NAME PARTITION_NAME BOUND NUM_ROWS DEPT_PART_R PART DEPT_PART_R PART DEPT_PART_R PART DEPT_PART_R PART DEPT_PART_R PARTMAX MAXVALUE 20 5 rows selected. Chapter 2. Partition Table 7
16 Hash Partition Hash Partitioning maps data to partitions based on a hashing algorithm. This is the ideal method to improve the performance of data processing rather than data management. As data is distributed based on the hash key, users cannot identify which partition the data is stored in. However, the hashing algorithm evenly distributes data among partitions, giving partitions approximately the same size. Creating a hash partition table How to create CREATE TABLE <Table Name> ( <Column 1>, <Column 2>, <Column 3> PARTITION BY HASH(<Column> ( PARTITION <Partition Name>, PARTITION <Partition Name>, PARTITION <Partition Name>, PARTITION <Partition Name> ENABLE ROW MOVEMENT; Example SQL> CREATE TABLE DEPT_PART_H ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PARTITION BY HASH(DEPTNO ( PARTITION HASH1, PARTITION HASH2, PARTITION HASH3, PARTITION HASH4 ENABLE ROW MOVEMENT; Table 'DEPT_PART_H' created. 8 Tibero Object Usage Guide
17 Verifying the creation of data and hash partition tables 1. Create data. SQL> INSERT INTO DEPT_PART_H SELECT LEVEL, CHR(65+MOD(LEVEL,26, LEVEL, LEVEL FROM DUAL CONNECT BY LEVEL <= 48; 48 rows inserted. SQL> COMMIT; Commit completed. 2. Collect statistical information. SQL> begin dbms_stats.gather_table_stats(ownname=>'dbtech', TABNAME=>'DEPT_PART_H', ESTIMATE_PERCENT=>100; end; / PSM completed. 3. Verify the amount of accumulated data and the creation of partition tables. SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col BOUND format a10 SQL> col NUM_ROWS format 999,999,999 SQL> SQL> SELECT TABLE_NAME, PARTITION_NAME, BOUND, NUM_ROWS FROM USER_TAB_PARTITIONS WHERE TABLE_NAME = 'DEPT_PART_H'; TABLE_NAME PARTITION_NAME BOUND NUM_ROWS DEPT_PART_H HASH1 14 DEPT_PART_H HASH2 13 DEPT_PART_H HASH3 10 DEPT_PART_H HASH rows selected. Chapter 2. Partition Table 9
18 List Partition List Partitioning is different from range partitioning in that it accepts a single column rather than a list of columns. Each partition must be explicitly defined. List partitions do not need to be declared in any particular order, and unrelated partitioned tables can be easily grouped for management. Creating a list partition table How to create CREATE TABLE <Table Name> ( <Column 1>, <Column 2>, <Column 3> PARTITION BY LIST(<Column> ( PARTITION <Partition Name> VALUES (<Value>, PARTITION <Partition Name> VALUES (<Value>, PARTITION <Partition Name> VALUES (<Value>, PARTITION <Partition Name> VALUES (<Value> ENABLE ROW MOVEMENT; Example SQL> CREATE TABLE DEPT_PART_L ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PARTITION BY LIST(DEPTNO ( PARTITION LIST1 VALUES(1, PARTITION LIST2 VALUES(2, PARTITION LIST3 VALUES(3, PARTITION LIST4 VALUES(4 ENABLE ROW MOVEMENT; Table 'DEPT_PART_L' created. 10 Tibero Object Usage Guide
19 Verifying the creation of data and hash partition tables 1. Create data. SQL> INSERT INTO DEPT_PART_L SELECT LEVEL, CHR(65+MOD(LEVEL,26, LEVEL, LEVEL FROM DUAL CONNECT BY LEVEL <= 4; 4 rows inserted. SQL> COMMIT; Commit completed. 2. Collect statistical information. SQL> begin dbms_stats.gather_table_stats(ownname=>'dbtech', TABNAME=>'DEPT_PART_L', ESTIMATE_PERCENT=>100 ; end; / PSM completed. 3. Verify the amount of accumulated data and the creation of partition tables. SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col BOUND format a10 SQL> col NUM_ROWS format 999,999,999 SQL> SQL> SELECT TABLE_NAME, PARTITION_NAME, BOUND, NUM_ROWS FROM USER_TAB_PARTITIONS WHERE TABLE_NAME = 'DEPT_PART_L';t TABLE_NAME PARTITION_NAME BOUND NUM_ROWS DEPT_PART_L LIST1 1 1 DEPT_PART_L LIST2 2 1 DEPT_PART_L LIST3 3 1 DEPT_PART_L LIST rows selected. Chapter 2. Partition Table 11
20 Composite Partition Composite Partitioning is a partitioning technique that combines portions of hash and list partitioning. The table is initially partitioned by the hash partitioning method and then each partition is sub-partitioned by the list partitioning method. If the range-hash partitioning method is used, users can take advantage of both partitioning methods: data management and performance improvement. Creating and verifying the composite partition (Range-Range Partitioning tables How to create SQL> CREATE TABLE DEPT_PART_RR ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY RANGE(DEPTNO SUBPARTITION BY RANGE(MGRNO ( PARTITION R_RANGE1 VALUES LESS THAN (10 (SUBPARTITION R_RANGE1_SUB1 VALUES LESS THAN (10, SUBPARTITION R_RANGE1_SUB2 VALUES LESS THAN (30, SUBPARTITION R_RANGE1_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION R_RANGE2 VALUES LESS THAN (20 (SUBPARTITION R_RANGE2_SUB1 VALUES LESS THAN (10, SUBPARTITION R_RANGE2_SUB2 VALUES LESS THAN (30, SUBPARTITION R_RANGE2_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION R_RANGE3 VALUES LESS THAN (30 (SUBPARTITION R_RANGE3_SUB1 VALUES LESS THAN (10, SUBPARTITION R_RANGE3_SUB2 VALUES LESS THAN (30, SUBPARTITION R_RANGE3_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION R_RANGE4 VALUES LESS THAN (40 (SUBPARTITION R_RANGE4_SUB1 VALUES LESS THAN (10, SUBPARTITION R_RANGE4_SUB2 VALUES LESS THAN (30, SUBPARTITION R_RANGE4_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION R_RANGEMAX VALUES LESS THAN (MAXVALUE (SUBPARTITION R_RANGEMAX_SUB1 VALUES LESS THAN (10, SUBPARTITION R_RANGEMAX_SUB2 VALUES LESS THAN (30, SUBPARTITION R_RANGEMAX_SUB_MAX VALUES LESS THAN (MAXVALUE 12 Tibero Object Usage Guide
21 ENABLE ROW MOVEMENT; Table 'DEPT_PART_RR' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_RR'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_RR R_RANGE1 R_RANGE1_SUB DEPT_PART_RR R_RANGE1 R_RANGE1_SUB DEPT_PART_RR R_RANGE1 R_RANGE1_SUB_MAX 3 MAXVALUE DEPT_PART_RR R_RANGE2 R_RANGE2_SUB DEPT_PART_RR R_RANGE2 R_RANGE2_SUB DEPT_PART_RR R_RANGE2 R_RANGE2_SUB_MAX 3 MAXVALUE DEPT_PART_RR R_RANGE3 R_RANGE3_SUB DEPT_PART_RR R_RANGE3 R_RANGE3_SUB DEPT_PART_RR R_RANGE3 R_RANGE3_SUB_MAX 3 MAXVALUE DEPT_PART_RR R_RANGE4 R_RANGE4_SUB DEPT_PART_RR R_RANGE4 R_RANGE4_SUB DEPT_PART_RR R_RANGE4 R_RANGE4_SUB_MAX 3 MAXVALUE DEPT_PART_RR R_RANGEMAX R_RANGEMAX_SUB DEPT_PART_RR R_RANGEMAX R_RANGEMAX_SUB DEPT_PART_RR R_RANGEMAX R_RANGEMAX_SUB_MAX 3 MAXVALUE 15 rows selected. Chapter 2. Partition Table 13
22 Creating and verifying the composite partition (Range-List Partitioning tables Example SQL> CREATE TABLE DEPT_PART_RL ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY RANGE(DEPTNO SUBPARTITION BY LIST(MGRNO ( PARTITION R_LIST1 VALUES LESS THAN (10 (SUBPARTITION R_LIST1_SUB1 VALUES (10, SUBPARTITION R_LIST1_SUB2 VALUES (30, PARTITION R_LIST2 VALUES LESS THAN (20 (SUBPARTITION R_LIST2_SUB1 VALUES (10, SUBPARTITION R_LIST2_SUB2 VALUES (30, PARTITION R_LIST3 VALUES LESS THAN (30 (SUBPARTITION R_LIST3_SUB1 VALUES (10, SUBPARTITION R_LIST3_SUB2 VALUES (30, PARTITION R_LIST4 VALUES LESS THAN (40 (SUBPARTITION R_LIST4_SUB1 VALUES (10, SUBPARTITION R_LIST4_SUB2 VALUES (30, PARTITION R_LISTMAX VALUES LESS THAN (MAXVALUE (SUBPARTITION R_LISTMAX_SUB1 VALUES (10, SUBPARTITION R_LISTMAX_SUB2 VALUES (30 ENABLE ROW MOVEMENT; Table 'DEPT_PART_RL' created. 14 Tibero Object Usage Guide
23 Checking the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_RL'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_RL R_LIST1 R_LIST1_SUB DEPT_PART_RL R_LIST1 R_LIST1_SUB DEPT_PART_RL R_LIST2 R_LIST2_SUB DEPT_PART_RL R_LIST2 R_LIST2_SUB DEPT_PART_RL R_LIST3 R_LIST3_SUB DEPT_PART_RL R_LIST3 R_LIST3_SUB DEPT_PART_RL R_LIST4 R_LIST4_SUB DEPT_PART_RL R_LIST4 R_LIST4_SUB DEPT_PART_RL R_LISTMAX R_LISTMAX_SUB DEPT_PART_RL R_LISTMAX R_LISTMAX_SUB rows selected. Creating and verifying the composite partition (Range-Hash Partitioning tables Example SQL> CREATE TABLE DEPT_PART_RH ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY RANGE(DEPTNO SUBPARTITION BY HASH(MGRNO ( PARTITION R_HASH1 VALUES LESS THAN (10 SUBPARTITIONS 4, PARTITION R_HASH2 VALUES LESS THAN (20 SUBPARTITIONS 4, Chapter 2. Partition Table 15
24 PARTITION R_HASH3 VALUES LESS THAN (30 SUBPARTITIONS 4, PARTITION R_HASH4 VALUES LESS THAN (40 SUBPARTITIONS 4, PARTITION R_HASHMAX VALUES LESS THAN (MAXVALUE SUBPARTITIONS 4 ENABLE ROW MOVEMENT; Table 'DEPT_PART_RH' created. Verifying the creation SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NO format 999,999,999 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NO FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_RH'; TABLE_NAME PARTITION_NAME SUBPARTITION_NO DEPT_PART_RH R_HASH1 1 DEPT_PART_RH R_HASH1 2 DEPT_PART_RH R_HASH1 3 DEPT_PART_RH R_HASH1 4.. DEPT_PART_RH R_HASHMAX 1 DEPT_PART_RH R_HASHMAX 2 DEPT_PART_RH R_HASHMAX 3 DEPT_PART_RH R_HASHMAX 4 20 rows selected. Creating and verifying the composite partition (List-Range Partitioning tables Example SQL> CREATE TABLE DEPT_PART_LR ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 16 Tibero Object Usage Guide
25 PARTITION BY LIST(DEPTNO SUBPARTITION BY RANGE(MGRNO ( PARTITION L_RANGE1 VALUES (10 (SUBPARTITION L_RANGE1_SUB1 VALUES LESS THAN (10, SUBPARTITION L_RANGE1_SUB2 VALUES LESS THAN (30, SUBPARTITION L_RANGE1_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION L_RANGE2 VALUES (20 (SUBPARTITION L_RANGE2_SUB1 VALUES LESS THAN (10, SUBPARTITION L_RANGE2_SUB2 VALUES LESS THAN (30, SUBPARTITION L_RANGE2_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION L_RANGE3 VALUES (30 (SUBPARTITION L_RANGE3_SUB1 VALUES LESS THAN (10, SUBPARTITION L_RANGE3_SUB2 VALUES LESS THAN (30, SUBPARTITION L_RANGE3_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION L_RANGE4 VALUES (40 (SUBPARTITION L_RANGE4_SUB1 VALUES LESS THAN (10, SUBPARTITION L_RANGE4_SUB2 VALUES LESS THAN (30, SUBPARTITION L_RANGE4_SUB_MAX VALUES LESS THAN (MAXVALUE ENABLE ROW MOVEMENT; Table 'DEPT_PART_LR' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> ELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_LR'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_LR L_RANGE1 L_RANGE1_SUB DEPT_PART_LR L_RANGE1 L_RANGE1_SUB DEPT_PART_LR L_RANGE1 L_RANGE1_SUB_MAX 3 Chapter 2. Partition Table 17
26 MAXVALUE DEPT_PART_LR L_RANGE2 L_RANGE2_SUB DEPT_PART_LR L_RANGE2 L_RANGE2_SUB DEPT_PART_LR L_RANGE2 L_RANGE2_SUB_MAX 3 MAXVALUE DEPT_PART_LR L_RANGE3 L_RANGE3_SUB DEPT_PART_LR L_RANGE3 L_RANGE3_SUB DEPT_PART_LR L_RANGE3 L_RANGE3_SUB_MAX 3 MAXVALUE DEPT_PART_LR L_RANGE4 L_RANGE4_SUB DEPT_PART_LR L_RANGE4 L_RANGE4_SUB DEPT_PART_LR L_RANGE4 L_RANGE4_SUB_MAX 3 MAXVALUE 12 rows selected. Creating and verifying the composite partition (List-List Partitioning tables Example SQL> CREATE TABLE DEPT_PART_LL ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY LIST(DEPTNO SUBPARTITION BY LIST(MGRNO ( PARTITION L_LIST1 VALUES (10 (SUBPARTITION L_LIST1_SUB1 VALUES (10, SUBPARTITION L_LIST1_SUB2 VALUES (30, PARTITION L_LIST2 VALUES (20 (SUBPARTITION L_LIST2_SUB1 VALUES (10, SUBPARTITION L_LIST2_SUB2 VALUES (30, PARTITION L_LIST3 VALUES (30 (SUBPARTITION L_LIST3_SUB1 VALUES (10, SUBPARTITION L_LIST3_SUB2 VALUES (30, PARTITION L_LIST4 VALUES (40 (SUBPARTITION L_LIST4_SUB1 VALUES (10, SUBPARTITION L_LIST4_SUB2 VALUES (30 18 Tibero Object Usage Guide
27 ENABLE ROW MOVEMENT; Table 'DEPT_PART_LL' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_LL'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_LL L_LIST1 L_LIST1_SUB DEPT_PART_LL L_LIST1 L_LIST1_SUB DEPT_PART_LL L_LIST2 L_LIST2_SUB DEPT_PART_LL L_LIST2 L_LIST2_SUB DEPT_PART_LL L_LIST3 L_LIST3_SUB DEPT_PART_LL L_LIST3 L_LIST3_SUB DEPT_PART_LL L_LIST4 L_LIST4_SUB DEPT_PART_LL L_LIST4 L_LIST4_SUB rows selected. Creating and verifying the composite partition (List-Hash Partitioning tables Example SQL> CREATE TABLE DEPT_PART_LH ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY LIST(DEPTNO SUBPARTITION BY HASH(MGRNO ( Chapter 2. Partition Table 19
28 PARTITION L_HASH1 VALUES (10 SUBPARTITIONS 4, PARTITION L_HASH2 VALUES (20 SUBPARTITIONS 4, PARTITION L_HASH3 VALUES (30 SUBPARTITIONS 4, PARTITION L_HASH4 VALUES (40 SUBPARTITIONS 4 ENABLE ROW MOVEMENT; Table 'DEPT_PART_LH' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_LH'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_LH L_HASH1 TUNING_SUBP DEPT_PART_LH L_HASH1 TUNING_SUBP DEPT_PART_LH L_HASH1 TUNING_SUBP DEPT_PART_LH L_HASH1 TUNING_SUBP DEPT_PART_LH L_HASH2 TUNING_SUBP DEPT_PART_LH L_HASH2 TUNING_SUBP DEPT_PART_LH L_HASH2 TUNING_SUBP DEPT_PART_LH L_HASH2 TUNING_SUBP DEPT_PART_LH L_HASH3 TUNING_SUBP DEPT_PART_LH L_HASH3 TUNING_SUBP DEPT_PART_LH L_HASH3 TUNING_SUBP DEPT_PART_LH L_HASH3 TUNING_SUBP DEPT_PART_LH L_HASH4 TUNING_SUBP DEPT_PART_LH L_HASH4 TUNING_SUBP DEPT_PART_LH L_HASH4 TUNING_SUBP DEPT_PART_LH L_HASH4 TUNING_SUBP rows selected. Creating and verifying the composite partition (Hash-Range Partitioning tables 20 Tibero Object Usage Guide
29 Example SQL> CREATE TABLE DEPT_PART_HR ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY HASH(DEPTNO SUBPARTITION BY RANGE(MGRNO ( PARTITION H_RANGE1 (SUBPARTITION H_RANGE1_SUB1 VALUES LESS THAN (10, SUBPARTITION H_RANGE1_SUB2 VALUES LESS THAN (30, SUBPARTITION H_RANGE1_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION H_RANGE2 (SUBPARTITION H_RANGE2_SUB1 VALUES LESS THAN (10, SUBPARTITION H_RANGE2_SUB2 VALUES LESS THAN (30, SUBPARTITION H_RANGE2_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION H_RANGE3 (SUBPARTITION H_RANGE3_SUB1 VALUES LESS THAN (10, SUBPARTITION H_RANGE3_SUB2 VALUES LESS THAN (30, SUBPARTITION H_RANGE3_SUB_MAX VALUES LESS THAN (MAXVALUE, PARTITION H_RANGE4 (SUBPARTITION H_RANGE4_SUB1 VALUES LESS THAN (10, SUBPARTITION H_RANGE4_SUB2 VALUES LESS THAN (30, SUBPARTITION H_RANGE4_SUB_MAX VALUES LESS THAN (MAXVALUE ENABLE ROW MOVEMENT; Table 'DEPT_PART_HR' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, Chapter 2. Partition Table 21
30 BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_HR'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_HR H_RANGE1 H_RANGE1_SUB DEPT_PART_HR H_RANGE1 H_RANGE1_SUB DEPT_PART_HR H_RANGE1 H_RANGE1_SUB_MAX 3 MAXVALUE DEPT_PART_HR H_RANGE2 H_RANGE2_SUB DEPT_PART_HR H_RANGE2 H_RANGE2_SUB DEPT_PART_HR H_RANGE2 H_RANGE2_SUB_MAX 3 MAXVALUE DEPT_PART_HR H_RANGE3 H_RANGE3_SUB DEPT_PART_HR H_RANGE3 H_RANGE3_SUB DEPT_PART_HR H_RANGE3 H_RANGE3_SUB_MAX 3 MAXVALUE DEPT_PART_HR H_RANGE4 H_RANGE4_SUB DEPT_PART_HR H_RANGE4 H_RANGE4_SUB DEPT_PART_HR H_RANGE4 H_RANGE4_SUB_MAX 3 MAXVALUE 12 rows selected. Creating and verifying the composite partition (Hash-List Partitioning tables Example SQL> CREATE TABLE DEPT_PART_HL ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 PCTFREE 10 INITRANS 2 PARTITION BY HASH(DEPTNO SUBPARTITION BY LIST(MGRNO ( PARTITION H_LIST1 (SUBPARTITION H_LIST1_SUB1 VALUES (10, SUBPARTITION H_LIST1_SUB2 VALUES (30, PARTITION H_LIST2 (SUBPARTITION H_LIST2_SUB1 VALUES (10, 22 Tibero Object Usage Guide
31 SUBPARTITION H_LIST2_SUB2 VALUES (30, PARTITION H_LIST3 (SUBPARTITION H_LIST3_SUB1 VALUES (10, SUBPARTITION H_LIST3_SUB2 VALUES (30, PARTITION H_LIST4 (SUBPARTITION H_LIST4_SUB1 VALUES (10, SUBPARTITION H_LIST4_SUB2 VALUES (30 ENABLE ROW MOVEMENT; Table 'DEPT_PART_HL' created. Verifying the creation SQL> set LINESIZE 150 SQL> col TABLE_NAME format a15 SQL> col PARTITION_NAME format a15 SQL> col SUBPARTITION_NAME format a20 SQL> col SUBPARTITION_NO format 999,999 SQL> col BOUND format a10 SQL> SELECT TABLE_NAME, PARTITION_NAME, SUBPARTITION_NAME, SUBPARTITION_NO, BOUND FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME = 'DEPT_PART_HL'; TABLE_NAME PARTITION_NAME SUBPARTITION_NAME SUBPARTITION_NO BOUND DEPT_PART_HL H_LIST1 H_LIST1_SUB DEPT_PART_HL H_LIST1 H_LIST1_SUB DEPT_PART_HL H_LIST2 H_LIST2_SUB DEPT_PART_HL H_LIST2 H_LIST2_SUB DEPT_PART_HL H_LIST3 H_LIST3_SUB DEPT_PART_HL H_LIST3 H_LIST3_SUB DEPT_PART_HL H_LIST4 H_LIST4_SUB DEPT_PART_HL H_LIST4 H_LIST4_SUB rows selected. Chapter 2. Partition Table 23
32 Note The composite partitions supported by Tibero 5 are the Range-Range, Range-List, Range-Hash, List-Range, List-List, List-Hash, and Hash-Range, and Hash-List partitioning methods Managing Partition Tables Deleting a partition Usage ALTER TABLE <Table Name> DROP PARTITION <Partition Name> Example SQL> ALTER TABLE DEPT_PART_R DROP PARTITION PARTMAX; Table 'DEPT_PART_R' altered. Adding a partition Usage ALTER TABLE <Table Name> ADD PARTITIOM <Partition Name> VALUES LESS THAN (< > Example SQL> ALTER TABLE DEPT_PART_R ADD PARTITION PART6 VALUES LESS THAN (61; Table 'DEPT_PART_R' altered. Splitting partitions Usage ALTER TABLE <Table Name> SPLIT PARTITION <Name of the partition to be split into> AT (<Value> INTO (<Name of the partition whose value is less than the PARTITION value>, <Name of the partition whose value is greater than the PARTITION value> 24 Tibero Object Usage Guide
33 Example SQL> ALTER TABLE DEPT_PART_R SPLIT PARTITION PART6 AT (51 INTO (PARTITION PART5, PARTITION PART6; Table 'DEPT_PART_R' altered. Adding the name of a partition Usage ALTER TABLE <Table Name> RENAME PARTITION <Partition Name> TO <Name of the partition to change> Example SQL> ALTER TABLE DEPT_PART_R RENAME PARTITION PART1 TO PART1_NEW; Table 'DEPT_PART_R' altered. Changing a partition tablespace Usage ALTER TABLE <> MOVE PARTITION <Partition Name> TABLESPACE <Tablespace Name> Example SQL> ALTER TABLE DEPT_PART_R MOVE PARTITION PART1 TABLESPACE NEW_TS; Table 'DEPT_PART_R' altered. Usage ALTER TABLE <Table Name> TRUNCATE PARTITION <Partition Name> Example SQL> ALTER TABLE DEPT_PART_R TRUNCATE PARTITION PART2; Table 'DEPT_PART_R' altered. Chapter 2. Partition Table 25
34 2.4. Partition Index Partitioning of indexes can improve database performance. Indexes can be partitioned locally and logically. Detailed information about the indexes is shown below. Global Index A globally partitioned index can be made regardless of whether the table is partitioned or not. A partition of the global partition index can indicate the row of any partition in the table. The following is an example of creating a global index. SQL> CREATE INDEX GLOBAL_IDX ON DEPT_PART_R (DEPTNO GLOBAL PARTITION BY RANGE(DEPTNO ( PARTITION GLOBAL_IDX_PART1 VALUES LESS THAN (16, PARTITION GLOBAL_IDX_PART2 VALUES LESS THAN (31, PARTITION GLOBAL_IDX_PARTMAX VALUES LESS THAN (MAXVALUE; Index 'GLOBAL_IDX' created. Local Index Partitions are split based on the key of the table partition. Users can only declare 'LOCAL' for each partition without having to enter any other information. The name is automatically created and other information is set with the default value. A locally partitioned index corresponds to a partition of the table in a 1:1 relationship, and one partition of the local partitioned index only indicates a row in one partition of the table. The following is an example of creating a local index. SQL> CREATE INDEX LOCAL_IDX ON DEPT_PART_R (MGRNO LOCAL; Index 'LOCAL_IDX' created. The following table shows the unusable states of a partition index. Depending on the partitioning operations, a partitioned index may become unusable and affect the query performance. Partitioning Operations ADD DROP SPLIT RENAME MOVE Local Index - - Unusable - Unusable Global Index - Unusable Unusable - Unusable 26 Tibero Object Usage Guide
35 Partitioning Operations TRUNCATE Local Index - Global Index Unusable Chapter 2. Partition Table 27
36
37 Chapter 3. External Table This chapter explains the basic concept of an external table and how it is created Basic Concept Tibero allows read-only access to data in external tables. An external table is a virtual table. Actual data exists outside the database, but the meta data for the external table exists within the database. The following are the features of an external table. Read-only table. DML operation is not possible. Index creation is not possible. The following table shows the advantage and disadvantage of an external table. Category Advantage Description SQLLOAD and ETL are unnecessary when loading large volumes of data. Table are created almost instantly. Once a table is created, SELECT can be used. Can be used when converting massive amounts of data between heterogenous systems. Disadvantage As data columns increase, the SELECT processing rate decreases. Disk I/O increases. Cannot create an index. Chapter 3. External Table 29
38 3.2. Creating an External Table Fixed Record Format The following is an example of creating an external table in the fixed record format. 1. Create a data file and the directory. mkdir /home/tibero/samdata 2. Create a DEPT data file. (DEPT.dat 100 Administration Marketing Purchasing Human Resources Shipping IT Public Relations Sales Connect to tbsql. tbsql sys/tibero 4. Create a directory object name. (The CREATE ANY DIRECTORY permission is required. SQL> CREATE DIRECTORY SAMDATA AS '/home/tibero/samdata'; Directory 'SAMDATA' created. 5. Grant permission. SQL> GRANT READ,WRITE ON DIRECTORY SAMDATA TO dbtech; Granted. 6. Connect the database with the user account. SQL> conn dbtech/dbtech Connected to Tibero. 30 Tibero Object Usage Guide
39 7. Create an external table. SQL> CREATE TABLE DEPT_EXT_TBL ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 ORGANIZATION EXTERNAL external table. ( DEFAULT DIRECTORY SAMDATA directory object. ACCESS PARAMETERS ( LOAD DATA INTO TABLE DEPT_EXT_TBL ( DEPTNO POSITION(1:4, the data file. DEPTNAME POSITION(5:34, MGRNO POSITION(35:40, LOCNO POSITION(41:44 LOCATION ('DEPT.dat' file. ; -- Define the creation of an -- Set the name of the -- Set the location within -- Set the name of the data Table 'DEPT_EXT_TBL' created. 8. Select the data. SQL> select * from DEPT_EXT_TBL; DEPTNO DEPTNAME MGRNO LOCNO Administration Marketing Purchasing Human Resources Shipping IT Public Relations Sales Chapter 3. External Table 31
40 Delimited Record Format The following is an example of creating an external table in the delimited record format. 1. Create a data file directory. mkdir /home/tibero/samdata 2. Create a DEPT data file. (DEPT1.dat "100","Administration","2000","2700" "200","Marketing","2010","2800" "300","Purchasing","1140","2700" "400","Human Resources","2030","3400" "500","Shipping","1210","2500" "600","IT","1030","2400" "700","Public Relations","2040","3700" "800","Sales","1450","3500" "3800","Payroll","2160","2700" 3. Connect to tbsql. tbsql sys/tibero 4. Create a directory object name. (The CREATE ANY DIRECTORY permission is required. SQL> CREATE DIRECTORY SAMDATA AS '/home/tibero/samdata'; Directory 'SAMDATA' created. 5. Grant permission. SQL> GRANT READ,WRITE ON DIRECTORY SAMDATA TO dbtech; Granted. 6. Connect the database with the user account. SQL> conn dbtech/dbtech Connected to Tibero. 7. Create an external table. SQL> CREATE TABLE DEPT1_EXT_TBL ( DEPTNO NUMBER(4, DEPTNAME VARCHAR(30 BYTE, MGRNO NUMBER(6, LOCNO NUMBER(4 32 Tibero Object Usage Guide
41 ORGANIZATION EXTERNAL -- Define the creation of an external table. ( DEFAULT DIRECTORY SAMDATA -- Set the name of the directory object. ACCESS PARAMETERS ( LOAD DATA INTO TABLE DEPT1_EXT_TBL FIELDS TERMINATED BY ',' -- Set the field delimitor. OPTIONALLY ENCLOSED BY '"' -- Set the characters enclosing the field. ESCAPED BY '\\' -- Set the ESCAPE character using special letters. LINES TERMINATED BY '\n' -- Set a record termination character. IGNORE 0 LINES -- Set the lines to be excluded. (if 5, the lines from 1~5 will be excluded DEPTNO, DEPTNAME, MGRNO, LOCNO LOCATION ('DEPT1.dat' ; 8. Search data. SQL> select * from DEPT1_EXT_TBL; DEPTNO DEPTNAME MGRNO LOCNO Administration Marketing Purchasing Human Resources Shipping IT Public Relations Sales Chapter 3. External Table 33
42
43 Chapter 4. External Procedure This chapter explains the basic concept of External Procedure and how it is created Basic Concept External Procedure is a function users write in any programming language such as C or Java. The procedure is treated as a PSM function (or procedure in Tibero. Users can invoke the procedure when they want to use any user defined library. They can also get the processed result. Tibero supports the C and Java programming languages for creating external procedures External C Procedure This section explains the environment configuration for an external C procedure and how it is created Execution 1. User specifies a PSM to be run, in order to execute a user shared library. 2. When a user created application program calls the user shared library, the PSM module included in the Tibero server checks if the library is located outside the database, and executes an external process. 3. The server process delivers the library information (such as the library location, the function to be called, parameter information, etc. to the tbepa process, and waits for the processing results. 4. The tbepa process dynamically loads a library to call the function. The process then sends the results to the server. 5. The server analyzes the results received from the tbepa process and delivers the results to the user-created application program. 6. The tbepa process is automatically terminated when the session ends. Chapter 4. External Procedure 35
44 [Figure 4.1] Execution of an External C Procedure Environment Configuration Set an external C procedure in the tbepa.cfg file (the file can be manually created located in the $TB_HOME/client/tbepa directory (the directory can be manually created. LOG_DIR=$TB_HOME/client/tbepa/log LOG_LVL=2 MAX_LOG_SIZE=20k MAX_LOG_CNT=5 The following table shows the parameters defined in the above example. Parameter LOG_DIR LOG_LVL Description The path to the tbepa log file. (Default value: $TB_HOME/client/tbepa The logging level. (Default value: 2 1: Error related events. 2: Warning related events. 3: The basic trace events. 4: Detailed level trace events (for debugging. 5: The most detailed logging level. MAX_LOG_SIZE The maximum size of the log file (in bytes. (Default value: 0 When the value is 0: There is no limit to the size of the log file. When a value is specified and the size of a log file exceeds the maximum size, the log file is backed up. 36 Tibero Object Usage Guide
45 Parameter MAX_LOG_CNT Description The maximum number of backup log files. Used only when the backup function is enabled. (Default value: 0 When the value is less than 1: A backup log file is not created. When a value is specified and the number of backup files exceeds the specified value, the oldest backup file is deleted Creating External C Procedures Users should follow the following steps to create an external C procedure. 1. Write a C function. <extproc.c> long find_max(long x, long y { if (x >= y return x; else return y; } 2. Compile. (When compilation completes, copy the so file to the directory where the library is stored. cc -g -fpic -shared -o libextproc.so extproc.c 3. Register the library object. SQL> CREATE LIBRARY extproc IS '/usr/mylib/libextproc.so'; 4. Map a specific function (find_max within the library object, to the PSM. SQL> CREATE OR REPLACE FUNCTION ext_find_max(num1 BINARY_INTEGER, num2 BINARY_INTEGER RETURN BINARY_INTEGER AS LANGUAGE C LIBRARY extproc NAME "find_max" PARAMETERS(num1 int, num2 int; 5. Check the result. SQL> select ext_find_max(10,11 from dual; Chapter 4. External Procedure 37
46 EXT_FIND_MAX(10, row selected External Java Procedure This section explains the environment configuration for Java External Procedure and how it is created Execution 1. A JEPA process is created when a database server is started. 2. The user registers a user Java class (Java source:class as a Java object in the database. 3. The user writes a PSM program to map to the Java object. 4. The PSM program connects to the JEPA process to call a function. The program delivers the library information (such as class name, function name, parameter information, etc. to any of the JEPA processes, and waits for the processing result. 5. The JEPA process searches for the function to execute. The process then sends the result to the server. 6. The database server analyzes the result received from the JEPA process and sends it to the user. 7. The connection is established again when the PSM program is called after a session is made. 8. The JEPA process automatically closes when the database server is closed. [Figure 4.2] Execution of a Java External Procedure 38 Tibero Object Usage Guide
47 Environment Configuration TIP File Parameter Setting The $TB_SID.tip file is specified as shown below. _PSM_BOOT_JEPA=Y JAVA_CLASS_PATH=/home/tibero/tibero5/instance/tibero/java The following table shows the description of the parameters defined in the above example. Initialization Parameter _PSM_BOOT_JEPA Description Specifies whether to start the JEPA process. Y: To start a JEPA process, specify the initialization parameter as 'Y'. N: The database server is started, but the JEPA process is not. JAVA_CLASS_PATH A path where the compilation output for Java objects will reside. If not specified, Java class files are created in the sub directory specified in the initialization parameter, DB_CREATE_FILE_DEST. JAVA_CLASS_PATH should not set to be a directory that can be affected by other factors such as the location where Tibero binary is installed when upgrading or patching the product. JEPA Connection Information Specify JEPA connection information in the tbdsn.tbr.tbr file located in the $TB_HOMEUP_HOME/client/config directory. The following example shows the connection information specified in the tbdsn.tbr file. epa=( (EXTPROC=(LANG=JAVA (LISTENER=(HOST=localhost (PORT=9390 JEPA Environment Configuration Modify the epa.cfg file located in the $TB_HOMEUP_HOME/client/epa/java/config directory to customize the user environment. Chapter 4. External Procedure 39
48 # listener port LISTENER_PORT=9390 # initial thread pool size INIT_POOL_SIZE=10 # max thread pool size MAX_POOL_SIZE=1000 # tbjavaepa encoding "ASCII", "EUC-KR", "MSWIN949", "UTF-8", "UTF-16", "SHIFT-JIS" ENCODING=MSWIN949 The following table shows the parameters defined in the above example. Parameter LISTENER_PORT INIT_POOL_SIZE MAX_POOL_SIZE ENCODING Description Must be the same value as the port number specified in the tbdsn.tbr file. The number of threads to create when the JEPA process is first started. The maximum number of threads that can be created by the JEPA process. The encoding method to be used by the JEPA process. For synchronization, the specified encoding must be the same as the database encoding. When referencing an external library (not needed when a jar file is not used. To run the external Java compiler, add the path to the jar file in the psmjavac script located in the $TB_HOME/bin directory. javac -classpath <jar path>:${classpath} ${src} If the exptest.jar file exists in the /tibero/tibero5/tbdata/lib directory, set as shown below. javac -classpath /tibero/tibero5/tbdata/lib/exptest.jar:${classpath} ${src} Since JEPA is executed by the tbjavaepa script in the $TB_HOME/client/bin directory, add the path of the library with the -classpath option of the exec java command statement of #Classpath and #Main Class. #Classpath gnucrypto=/tibero/tibero5/tbdata/lib/gnu-crypto.jar #Main Class exec java -verbose:gc -Xms128m -Xmx512m -Djepa.home=$javaepahome -Dlog4j.configuration=$log4jfile -classpath $pool: $collections:$activation:$mail:$msllogger:$log4j: $jdbc:$epa:$config:$gnucrypto $mainclass CONFIG=$configfile 40 Tibero Object Usage Guide
49 Creating External Java Procedures The following are the steps to create an external Java procedure. 1. Write a Java object. SQL> CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "JavaExtproc" AS public class SimpleMath { public static int findmax(int x, int y { if (x >= y return x; else return y; } } Java Source 'JavaExtproc' created. 2. Verify the created object in USER_OBJECTS. SQL> col OBJECT_NAME format a15 SQL> SELECT OBJECT_NAME, OBJECT_TYPE, STATUS FROM USER_OBJECTS WHERE OBJECT_TYPE = 'JAVA'; OBJECT_NAME OBJECT_TYPE STATUS JavaExtproc JAVA VALID 1 row selected. 3. Create a PSM function. SQL> CREATE OR REPLACE FUNCTION find_max(x PLS_INTEGER, y PLS_INTEGER 2 RETURN PLS_INTEGER IS 3 LANGUAGE JAVA NAME 'SimpleMath.findMax(int, int return int'; 4 5 / Function 'FIND_MAX' created. 4. Execute. SQL> select find_max(4,60 from dual; FIND_MAX(4, row selected. Chapter 4. External Procedure 41
50
Tibero Migration Utility Guide
Tibero Migration Utility Guide Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. 5, Hwangsaeul-ro 329beon-gil, Bundang-gu, Seongnam-si,
More informationTibero Backup & Recovery Guide
Tibero Backup & Recovery Guide Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. 5, Hwangsaeul-ro 329beon-gil, Bundang-gu, Seongnam-si,
More informationTibero Client Installation Guide
Tibero Client Installation Guide Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2014 TIBERO Co., Ltd. All Rights Reserved. Restricted Rights Legend All TIBERO Software
More informationPartitioning Tables and Indexing Them
Partitioning Tables and Indexing Them Hemant K Chitale Product Specialist, Standard Chartered Bank Oracle ACE `whoami` DBA with 20 years experience on wide variety of platforms DBA team lead and consultant
More informationOracle Hyperion Profitability and Cost Management
Oracle Hyperion Profitability and Cost Management Configuration Guidelines for Detailed Profitability Applications November 2015 Contents About these Guidelines... 1 Setup and Configuration Guidelines...
More informationTable Compression in Oracle9i Release2. An Oracle White Paper May 2002
Table Compression in Oracle9i Release2 An Oracle White Paper May 2002 Table Compression in Oracle9i Release2 Executive Overview...3 Introduction...3 How It works...3 What can be compressed...4 Cost and
More informationOracle Database In-Memory
Oracle Database In-Memory Mark Weber Principal Sales Consultant November 12, 2014 Row Format Databases vs. Column Format Databases Row SALES Transactions run faster on row format Example: Insert or query
More informationJyotheswar Kuricheti
Jyotheswar Kuricheti 1 Agenda: 1. Performance Tuning Overview 2. Identify Bottlenecks 3. Optimizing at different levels : Target Source Mapping Session System 2 3 Performance Tuning Overview: 4 What is
More informationGFC_ARCH_MGMT: SEGMENT MANAGEMENT UTILITY PACKAGE
T E C H N I C A L N O T E GFC_ARCH_MGMT: SEGMENT MANAGEMENT UTILITY PACKAGE Prepared By David Kurtz, Go-Faster Consultancy Ltd. Technical Note Version 0.08 Tuesday 15 July 2014 (E-mail: david.kurtz@go-faster.co.uk,
More informationOracle SQL Developer. Oracle TimesTen In-Memory Database Support User's Guide Release 4.0 E
Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide Release 4.0 E39882-02 December 2013 Oracle SQL Developer Oracle TimesTen In-Memory Database Support User's Guide, Release 4.0
More informationENHANCING DATABASE PERFORMANCE
ENHANCING DATABASE PERFORMANCE Performance Topics Monitoring Load Balancing Defragmenting Free Space Striping Tables Using Clusters Using Efficient Table Structures Using Indexing Optimizing Queries Supplying
More informationTeradata. This was compiled in order to describe Teradata and provide a brief overview of common capabilities and queries.
Teradata This was compiled in order to describe Teradata and provide a brief overview of common capabilities and queries. What is it? Teradata is a powerful Big Data tool that can be used in order to quickly
More informationFile Structures and Indexing
File Structures and Indexing CPS352: Database Systems Simon Miner Gordon College Last Revised: 10/11/12 Agenda Check-in Database File Structures Indexing Database Design Tips Check-in Database File Structures
More information5. Single-row function
1. 2. Introduction Oracle 11g Oracle 11g Application Server Oracle database Relational and Object Relational Database Management system Oracle internet platform System Development Life cycle 3. Writing
More informationSeminar: Presenter: Oracle Database Objects Internals. Oren Nakdimon.
Seminar: Oracle Database Objects Internals Presenter: Oren Nakdimon www.db-oriented.com oren@db-oriented.com 054-4393763 @DBoriented 1 Oren Nakdimon Who Am I? Chronology by Oracle years When What Where
More informationCreating and Managing Tables Schedule: Timing Topic
9 Creating and Managing Tables Schedule: Timing Topic 30 minutes Lecture 20 minutes Practice 50 minutes Total Objectives After completing this lesson, you should be able to do the following: Describe the
More informationORACLE 12C NEW FEATURE. A Resource Guide NOV 1, 2016 TECHGOEASY.COM
ORACLE 12C NEW FEATURE A Resource Guide NOV 1, 2016 TECHGOEASY.COM 1 Oracle 12c New Feature MULTITENANT ARCHITECTURE AND PLUGGABLE DATABASE Why Multitenant Architecture introduced with 12c? Many Oracle
More informationOracle Tuning Pack. Table Of Contents. 1 Introduction. 2 Installation and Configuration. 3 Documentation and Help. 4 Oracle SQL Analyze
Oracle Tuning Pack Readme Release 2.1.0.0.0 for Windows February 2000 Part No. A76921-01 Table Of Contents 1 Introduction 2 Installation and Configuration 3 Documentation and Help 4 Oracle SQL Analyze
More informationPerformance Optimization for Informatica Data Services ( Hotfix 3)
Performance Optimization for Informatica Data Services (9.5.0-9.6.1 Hotfix 3) 1993-2015 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic,
More informationContents. Error Message Descriptions... 7
2 Contents Error Message Descriptions.................................. 7 3 4 About This Manual This Unify DataServer: Error Messages manual lists the errors that can be produced by the Unify DataServer
More informationChapter 2. DB2 concepts
4960ch02qxd 10/6/2000 7:20 AM Page 37 DB2 concepts Chapter 2 Structured query language 38 DB2 data structures 40 Enforcing business rules 49 DB2 system structures 52 Application processes and transactions
More informationOracle Database In-Memory
Oracle Database In-Memory Under The Hood Andy Cleverly andy.cleverly@oracle.com Director Database Technology Oracle EMEA Technology Safe Harbor Statement The following is intended to outline our general
More informationIBM DB2 9 Database Administrator for Linux UNIX and Windows Upgrade.
IBM 000-736 DB2 9 Database Administrator for Linux UNIX and Windows Upgrade http://killexams.com/exam-detail/000-736 with three partitions in which part 1 will be placed in table space TBSP0, part 2 will
More informationCHAPTER 44. Java Stored Procedures
CHAPTER 44 Java Stored Procedures 752 Oracle Database 12c: The Complete Reference You can write stored procedures, triggers, object type methods, and functions that call Java classes. In this chapter,
More informationAn Introduction to DB2 Indexing
An Introduction to DB2 Indexing by Craig S. Mullins This article is adapted from the upcoming edition of Craig s book, DB2 Developer s Guide, 5th edition. This new edition, which will be available in May
More informationAutomating Information Lifecycle Management with
Automating Information Lifecycle Management with Oracle Database 2c The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
More informationOracle Alter Table Add Primary Key Using Index
Oracle Alter Table Add Primary Key Using Index Partition open Syntax for Schema Objects and Parts in SQL Statements One or more columns of a table, a partitioned table, an index-organized table, or a cluster
More informationOracle 1Z0-053 Exam Questions & Answers
Oracle 1Z0-053 Exam Questions & Answers Number: 1Z0-053 Passing Score: 660 Time Limit: 120 min File Version: 38.8 http://www.gratisexam.com/ Oracle 1Z0-053 Exam Questions & Answers Exam Name: Oracle Database
More informationSQL Interview Questions
SQL Interview Questions SQL stands for Structured Query Language. It is used as a programming language for querying Relational Database Management Systems. In this tutorial, we shall go through the basic
More informationOracle Tables TECHGOEASY.COM
Oracle Tables TECHGOEASY.COM 1 Oracle Tables WHAT IS ORACLE DATABASE TABLE? -Tables are the basic unit of data storage in an Oracle Database. Data is stored in rows and columns. -A table holds all the
More informationRetek Extract Transform and Load Release Notes
Retek Extract Transform and Load 10.3 Release Notes Retek Extract Transform and Load The software described in this documentation is furnished under a license agreement, is the confidential information
More informationIndexes (continued) Customer table with record numbers. Source: Concepts of Database Management
12 Advanced Topics Objectives Use indexes to improve database performance Examine the security features of a DBMS Discuss entity, referential, and legal-values integrity Make changes to the structure of
More informationDBArtisan 8.6 New Features Guide. Published: January 13, 2009
Published: January 13, 2009 Embarcadero Technologies, Inc. 100 California Street, 12th Floor San Francisco, CA 94111 U.S.A. This is a preliminary document and may be changed substantially prior to final
More informationCUBE, ROLLUP, AND MATERIALIZED VIEWS: MINING ORACLE GOLD John Jay King, King Training Resources
CUBE, ROLLUP, AND MATERIALIZED VIEWS: MINING ORACLE GOLD John Jay, Training Resources Abstract: Oracle8i provides new features that reduce the costs of summary queries and provide easier summarization.
More informationIBM Informix Large Object Locator DataBlade Module User s Guide
IBM Informix Large Object Locator DataBlade Module User s Guide Version 1.2A March 2003 Part No. CT1V1NA Note: Before using this information and the product it supports, read the information in the appendix
More informationOral Questions and Answers (DBMS LAB) Questions & Answers- DBMS
Questions & Answers- DBMS https://career.guru99.com/top-50-database-interview-questions/ 1) Define Database. A prearranged collection of figures known as data is called database. 2) What is DBMS? Database
More informationConfiguring the Oracle Network Environment. Copyright 2009, Oracle. All rights reserved.
Configuring the Oracle Network Environment Objectives After completing this lesson, you should be able to: Use Enterprise Manager to: Create additional listeners Create Oracle Net Service aliases Configure
More informationPass IBM C Exam
Pass IBM C2090-612 Exam Number: C2090-612 Passing Score: 800 Time Limit: 120 min File Version: 37.4 http://www.gratisexam.com/ Exam Code: C2090-612 Exam Name: DB2 10 DBA for z/os Certkey QUESTION 1 Workload
More informationPostgreSQL: Decoding Partition
PostgreSQL: Decoding Partition Beena Emerson February 14, 2019 1 INTRODUCTION 2 What is Partitioning? Why partition? When to Partition? What is Partitioning? Subdividing a database table into smaller parts.
More informationMTA Database Administrator Fundamentals Course
MTA Database Administrator Fundamentals Course Session 1 Section A: Database Tables Tables Representing Data with Tables SQL Server Management Studio Section B: Database Relationships Flat File Databases
More information04 Storage management 15/07/17 12:34 AM. Storage management
Storage management 1 "High water" and "low water" marks PCTFREE and PCTUSED parameters PCTFREE ("high water" mark) and PCTUSED ("low water" mark) parameters control the use of free space for inserts and
More informationDb2 Sql Alter Table Add Column Default Value
Db2 Sql Alter Table Add Column Default Value The RazorSQL alter table tool includes an Add Column option for adding were can I modify de NULL & DEFAULT default values for DB2 V9.1 for z/os 1.11. Adds or
More informationDaily, Weekly or Monthly Partitions? A discussion of several factors for this important decision
Daily, Weekly or Monthly Partitions? A discussion of several factors for this important decision Copyright 2006 Mercury Consulting Published in July 2006 Conventions The following typographical conventions
More informationORACLE 11g RDBMS Features: Oracle Total Recall Oracle FLEXCUBE Universal Banking Release [May] [2017]
ORACLE 11g RDBMS Features: Oracle Total Recall Oracle FLEXCUBE Universal Banking Release 12.4.0.0.0 [May] [2017] Table of Contents 1. INTRODUCTION... 2 2. REQUIREMENT /PROBLEM STATEMENT... 3 3. PREREQUISITES...
More informationDaffodil DB. Design Document (Beta) Version 4.0
Daffodil DB Design Document (Beta) Version 4.0 January 2005 Copyright Daffodil Software Limited Sco 42,3 rd Floor Old Judicial Complex, Civil lines Gurgaon - 122001 Haryana, India. www.daffodildb.com All
More informationMcAfee Management for Optimized Virtual Environments AntiVirus 4.5.0
Migration Guide McAfee Management for Optimized Virtual Environments AntiVirus 4.5.0 For use with McAfee epolicy Orchestrator COPYRIGHT 2016 Intel Corporation TRADEMARK ATTRIBUTIONS Intel and the Intel
More informationOracle Flashback Data Archive (FDA) O R A C L E W H I T E P A P E R M A R C H
Oracle Flashback Data Archive (FDA) O R A C L E W H I T E P A P E R M A R C H 2 0 1 8 Table of Contents Disclaimer 1 Introduction 2 Tracking/Viewing Changes is Complicated 3 Enabling Flashback Data Archive
More informationIBM EXAM QUESTIONS & ANSWERS
IBM 000-730 EXAM QUESTIONS & ANSWERS Number: 000-730 Passing Score: 800 Time Limit: 120 min File Version: 69.9 http://www.gratisexam.com/ IBM 000-730 EXAM QUESTIONS & ANSWERS Exam Name: DB2 9 Fundamentals
More informationRDBMS Topic 4 Adv. SQL, MSBTE Questions and Answers ( 12 Marks)
2017 RDBMS Topic 4 Adv. SQL, MSBTE Questions and Answers ( 12 Marks) 2016 Q. What is view? Definition of view: 2 marks) Ans : View: A view is a logical extract of a physical relation i.e. it is derived
More informationDatabase Programming with SQL
Database Programming with SQL 13-1 Objectives In this lesson, you will learn to: List and categorize the main database objects Review a table structure Describe how schema objects are used by the Oracle
More informationAdministration Guide Release 5.0
[1]Oracle Application Express Administration Guide Release 5.0 E39151-06 November 2015 Oracle Application Express Administration Guide, Release 5.0 E39151-06 Copyright 2003, 2015, Oracle and/or its affiliates.
More informationCopyright 2013, Oracle and/or its affiliates. All rights reserved.
2 Copyright 23, Oracle and/or its affiliates. All rights reserved. Oracle Database 2c Heat Map, Automatic Data Optimization & In-Database Archiving Platform Technology Solutions Oracle Database Server
More informationExperiences of Global Temporary Tables in Oracle 8.1
Experiences of Global Temporary Tables in Oracle 8.1 Global Temporary Tables are a new feature in Oracle 8.1. They can bring significant performance improvements when it is too late to change the design.
More informationBasics of SQL Transactions
www.dbtechnet.org Basics of SQL Transactions Big Picture for understanding COMMIT and ROLLBACK of SQL transactions Files, Buffers,, Service Threads, and Transactions (Flat) SQL Transaction [BEGIN TRANSACTION]
More informationOracle Database 10g: Implement and Administer a Data Warehouse
Oracle Database 10g: Implement and Administer a Data Warehouse Student Guide Volume 1 D18957GC10 Edition 1.0 November 2005 D22685 Authors Donna Keesling Jean Francois Verrier Jim Womack Technical Contributors
More informationOracle 1Z Oracle Database 12c: Advanced PL/SQL.
Oracle 1Z0-148 Oracle Database 12c: Advanced PL/SQL https://killexams.com/pass4sure/exam-detail/1z0-148 QUESTION: 67 Examine this Java method in class Employee, loaded into the Oracle database: Public
More informationIBM Spectrum Protect HSM for Windows Version Administration Guide IBM
IBM Spectrum Protect HSM for Windows Version 8.1.0 Administration Guide IBM IBM Spectrum Protect HSM for Windows Version 8.1.0 Administration Guide IBM Note: Before you use this information and the product
More informationIBM DB2 Query Patroller. Administration Guide. Version 7 SC
IBM DB2 Query Patroller Administration Guide Version 7 SC09-2958-00 IBM DB2 Query Patroller Administration Guide Version 7 SC09-2958-00 Before using this information and the product it supports, be sure
More informationTibero TSC Installation Guide
Technical Training Tibero TSC Installation Guide 2014. 05. 26. Table of Contents 1. Pre-Installation Tasks... 4 1.1. Configuring the Operating System... 4 1.1.1. Installing Linux... 4 1.1.2. Creating VM
More informationAnalytics: Server Architect (Siebel 7.7)
Analytics: Server Architect (Siebel 7.7) Student Guide June 2005 Part # 10PO2-ASAS-07710 D44608GC10 Edition 1.0 D44917 Copyright 2005, 2006, Oracle. All rights reserved. Disclaimer This document contains
More informationCopyright Network Management Forum
SPIRIT Platform Blueprint SPIRIT COBOL Language Portability Guide (SPIRIT Issue 3.0) Network Management Forum Copyright December 1995, Network Management Forum All rights reserved. No part of this publication
More informationDBMS Performance Tuning
DBMS Performance Tuning DBMS Architecture GCF SCF PSF OPF QEF RDF QSF ADF SXF GWF DMF Shared Memory locks log buffers Recovery Server Work Areas Databases log file DBMS Servers Manages client access to
More informationData Vault Partitioning Strategies WHITE PAPER
Dani Schnider Data Vault ing Strategies WHITE PAPER Page 1 of 18 www.trivadis.com Date 09.02.2018 CONTENTS 1 Introduction... 3 2 Data Vault Modeling... 4 2.1 What is Data Vault Modeling? 4 2.2 Hubs, Links
More informationSecureFiles Migration O R A C L E W H I T E P A P E R F E B R U A R Y
SecureFiles Migration O R A C L E W H I T E P A P E R F E B R U A R Y 2 0 1 8 Table of Contents Disclaimer 1 Introduction 2 Using SecureFiles 2 Migration Techniques 3 Migration with Online Redefinition
More information20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins
20 Essential Oracle SQL and PL/SQL Tuning Tips John Mullins jmullins@themisinc.com www.themisinc.com www.themisinc.com/webinars Presenter John Mullins Themis Inc. (jmullins@themisinc.com) 30+ years of
More informationReplication. Some uses for replication:
Replication SQL Server 2000 Replication allows you to distribute copies of data from one database to another, on the same SQL Server instance or between different instances. Replication allows data to
More informationArcserve Backup for Windows
Arcserve Backup for Windows Agent for Sybase Guide r17.0 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation
More informationOracle Database 10g: New Features for Administrators Release 2
Oracle University Contact Us: +27 (0)11 319-4111 Oracle Database 10g: New Features for Administrators Release 2 Duration: 5 Days What you will learn This course introduces students to the new features
More informationOracle SQL Developer TimesTen In-Memory Database Support
Oracle SQL Developer TimesTen In-Memory Database Support Release Notes Release 2.1 E15859-03 March 2010 This document provides late-breaking information as well as information that is not yet part of the
More informationOptimizing Session Caches in PowerCenter
Optimizing Session Caches in PowerCenter 1993-2015 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise)
More informationSQL (Structured Query Language)
Dear Student, Based upon your enquiry we are pleased to send you the course curriculum for Oracle DBA 11g SQL (Structured Query Language) Software Installation (Environment Setup for Oracle on Window10)
More informationJSPM s Bhivarabai Sawant Institute of Technology & Research, Wagholi, Pune Department of Information Technology
JSPM s Bhivarabai Sawant Institute of Technology & Research, Wagholi, Pune Department of Information Technology Introduction A database administrator (DBA) is a person responsible for the installation,
More informationALTIBASE HDB Release Notes
6.5.1 Release Notes Table of Contents Table of Contents... 2 1. System Requirements... 3 Minimum Hardware Requirements... 4 Supported Operating Systems and Platforms... 4 2. Release Information... 5 2.1
More informationCreate A Private Database Link In Another Schema In Oracle 11g Drop >>>CLICK HERE<<<
Create A Private Database Link In Another Schema In Oracle 11g Drop Posts about create database link in another schema written by John Hallas. 11g new features 12c new features addm ASM Blogroll Grid control
More informationUsing Oracle STATSPACK to assist with Application Performance Tuning
Using Oracle STATSPACK to assist with Application Performance Tuning Scenario You are experiencing periodic performance problems with an application that uses a back-end Oracle database. Solution Introduction
More informationContents I Introduction 1 Introduction to PL/SQL iii
Contents I Introduction Lesson Objectives I-2 Course Objectives I-3 Human Resources (HR) Schema for This Course I-4 Course Agenda I-5 Class Account Information I-6 Appendixes Used in This Course I-7 PL/SQL
More informationADVANTAGES. Via PL/SQL, all sorts of calculations can be done quickly and efficiently without use of Oracle engine.
1 PL/SQL INTRODUCTION SQL does not have procedural capabilities. SQL does not provide the programming techniques of condition checking, looping and branching that is required for data before permanent
More informationConfigure ODBC on ISE 2.3 with Oracle Database
Configure ODBC on ISE 2.3 with Oracle Database Contents Introduction Prerequisites Requirements Components Used Configure Step 1. Oracle Basic Configuration Step 2. ISE Basic Configuration Step 3. Configure
More informationAbout these Release Notes. Documentation Accessibility. New Features in Pro*COBOL
Pro*COBOL Release Notes 12c Release 1 (12.1) E18407-06 April 2013 About these Release Notes This document contains important information about Pro*COBOL 12c Release 1 (12.1). It contains the following
More informationExploring Oracle Database 11g/12c Partitioning New Features and Best Practices. Ami Aharonovich Oracle ACE & OCP
Exploring Oracle Database 11g/12c Partitioning New Features and Best Practices Ami Aharonovich Oracle ACE & OCP Ami@DBAces.com About Me Oracle ACE Oracle Certified Professional DBA (OCP) Founder and CEO,
More informationProjects. Corporate Trainer s Profile. CMM (Capability Maturity Model) level Project Standard:- TECHNOLOGIES
Corporate Trainer s Profile Corporate Trainers are having the experience of 4 to 12 years in development, working with TOP CMM level 5 comapnies (Project Leader /Project Manager ) qualified from NIT/IIT/IIM
More informationInterstage Shunsaku Data Manager Operator s Guide
Interstage Shunsaku Data Manager Operator s Guide Operator s Guide Trademarks Trademarks of other companies are used in this manual only to identify particular products or systems. Product Microsoft, Visual
More informationHPE Security Fortify Plugins for Eclipse
HPE Security Fortify Plugins for Eclipse Software Version: 17.20 Installation and Usage Guide Document Release Date: November 2017 Software Release Date: November 2017 Legal Notices Warranty The only warranties
More informationChapter 8: Working With Databases & Tables
Chapter 8: Working With Databases & Tables o Working with Databases & Tables DDL Component of SQL Databases CREATE DATABASE class; o Represented as directories in MySQL s data storage area o Can t have
More informationTablespace Usage By Schema In Oracle 11g Query To Check Temp
Tablespace Usage By Schema In Oracle 11g Query To Check Temp The APPS schema has access to the complete Oracle E-Business Suite data model. E-Business Suite Release 12.2 requires an Oracle database block
More informationOracle Database 10g: Introduction to SQL
ORACLE UNIVERSITY CONTACT US: 00 9714 390 9000 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database
More informationOracle 11g Invisible Indexes Inderpal S. Johal. Inderpal S. Johal, Data Softech Inc.
ORACLE 11G INVISIBLE INDEXES Inderpal S. Johal, Data Softech Inc. INTRODUCTION In this document we will work on another Oracle 11g interesting feature called Invisible Indexes. This will be very helpful
More informationDatabase Foundations. 6-3 Data Definition Language (DDL) Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Database Foundations 6-3 Roadmap You are here Introduction to Oracle Application Express Structured Query Language (SQL) Data Definition Language (DDL) Data Manipulation Language (DML) Transaction Control
More informationOracle Database 10g : Administration Workshop II (Release 2) Course 36 Contact Hours
Oracle Database 10g : Administration Workshop II (Release 2) Course 36 Contact Hours What you will learn This course advances your success as an Oracle professional in the area of database administration.
More informationFull file at
ch2 True/False Indicate whether the statement is true or false. 1. The SQL command to create a database table is an example of DML. 2. A user schema contains all database objects created by a user. 3.
More informationOracle Database 12c Release 2
Oracle Database 12c Release 2 New Features (OVERVIEW) Rhoda Sarmiento-Pereira Oracle Support Safe Harbor Statement The following is intended to outline our general product direction. It is intended for
More informationLike all programming models, MySQL identifiers follow certain rules and conventions.
Identifier Names Like all programming models, MySQL identifiers follow certain rules and conventions. Here are the rules to adhere to for naming identifiers to create objects in MySQL: - Contain any alphanumeric
More informationAuthor: Mounir Babari. Senior Technical Support Engineer UK. IBM B2B & Commerce - Industry Solutions. 1 Reclaiming wasted space in Oracle database
Reclaiming wasted space in Oracle database Author: Mounir Babari Senior Technical Support Engineer UK IBM B2B & Commerce - Industry Solutions 1 Reclaiming wasted space in Oracle database Reclaiming space
More informationCHAPTER. Oracle Database 11g Architecture Options
CHAPTER 1 Oracle Database 11g Architecture Options 3 4 Part I: Critical Database Concepts Oracle Database 11g is a significant upgrade from prior releases of Oracle. New features give developers, database
More informationThe information contained in this manual is relevant to end-users, application programmers and system administrators.
August 2002 2002 Preface Purpose This manual describes the GCOS 7 SQL CMA (Client Mode Access) product. This product is intended for anyone who wishes to perform networking operations with databases from
More informationUser's Guide c-treeace SQL Explorer
User's Guide c-treeace SQL Explorer Contents 1. c-treeace SQL Explorer... 4 1.1 Database Operations... 5 Add Existing Database... 6 Change Database... 7 Create User... 7 New Database... 8 Refresh... 8
More informationCOMP 3400 Mainframe Administration 1
COMP 3400 Mainframe Administration 1 Christian Grothoff christian@grothoff.org http://grothoff.org/christian/ 1 These slides are based in part on materials provided by IBM s Academic Initiative. 1 Databases
More informationHorizontal Table Partitioning
Horizontal Table Partitioning Dealing with a manageable slice of the pie. Richard Banville Fellow, OpenEdge Development August 7, 2013 Agenda OverviewFunctionalityUsageSummary 2 Agenda 1 Overview 2 Feature
More informationCopyright 2012, Oracle and/or its affiliates. All rights reserved.
1 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any
More informationChapter 11: File System Implementation. Objectives
Chapter 11: File System Implementation Objectives To describe the details of implementing local file systems and directory structures To describe the implementation of remote file systems To discuss block
More information