Tibero Object Usage Guide

Size: px
Start display at page:

Download "Tibero Object Usage Guide"

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 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 information

Tibero Backup & Recovery Guide

Tibero 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 information

Tibero Client Installation Guide

Tibero 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 information

Partitioning Tables and Indexing Them

Partitioning 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 information

Oracle Hyperion Profitability and Cost Management

Oracle 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 information

Table 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 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 information

Oracle Database In-Memory

Oracle 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 information

Jyotheswar Kuricheti

Jyotheswar 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 information

GFC_ARCH_MGMT: SEGMENT MANAGEMENT UTILITY PACKAGE

GFC_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 information

Oracle 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 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 information

ENHANCING DATABASE PERFORMANCE

ENHANCING 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 information

Teradata. 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. 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 information

File Structures and Indexing

File 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 information

5. Single-row function

5. 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 information

Seminar: Presenter: Oracle Database Objects Internals. Oren Nakdimon.

Seminar: 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 information

Creating and Managing Tables Schedule: Timing Topic

Creating 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 information

ORACLE 12C NEW FEATURE. A Resource Guide NOV 1, 2016 TECHGOEASY.COM

ORACLE 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 information

Oracle Tuning Pack. Table Of Contents. 1 Introduction. 2 Installation and Configuration. 3 Documentation and Help. 4 Oracle SQL Analyze

Oracle 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 information

Performance Optimization for Informatica Data Services ( Hotfix 3)

Performance 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 information

Contents. Error Message Descriptions... 7

Contents. 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 information

Chapter 2. DB2 concepts

Chapter 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 information

Oracle Database In-Memory

Oracle 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 information

IBM DB2 9 Database Administrator for Linux UNIX and Windows Upgrade.

IBM 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 information

CHAPTER 44. Java Stored Procedures

CHAPTER 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 information

An Introduction to DB2 Indexing

An 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 information

Automating Information Lifecycle Management with

Automating 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 information

Oracle Alter Table Add Primary Key Using Index

Oracle 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 information

Oracle 1Z0-053 Exam Questions & Answers

Oracle 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 information

SQL Interview Questions

SQL 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 information

Oracle Tables TECHGOEASY.COM

Oracle 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 information

Retek Extract Transform and Load Release Notes

Retek 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 information

Indexes (continued) Customer table with record numbers. Source: Concepts of Database Management

Indexes (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 information

DBArtisan 8.6 New Features Guide. Published: January 13, 2009

DBArtisan 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 information

CUBE, ROLLUP, AND MATERIALIZED VIEWS: MINING ORACLE GOLD John Jay King, King Training Resources

CUBE, 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 information

IBM Informix Large Object Locator DataBlade Module User s Guide

IBM 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 information

Oral Questions and Answers (DBMS LAB) Questions & Answers- DBMS

Oral 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 information

Configuring the Oracle Network Environment. Copyright 2009, Oracle. All rights reserved.

Configuring 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 information

Pass IBM C Exam

Pass 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 information

PostgreSQL: Decoding Partition

PostgreSQL: 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 information

MTA Database Administrator Fundamentals Course

MTA 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 information

04 Storage management 15/07/17 12:34 AM. Storage management

04 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 information

Db2 Sql Alter Table Add Column Default Value

Db2 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 information

Daily, 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 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 information

ORACLE 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 [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 information

Daffodil DB. Design Document (Beta) Version 4.0

Daffodil 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 information

McAfee Management for Optimized Virtual Environments AntiVirus 4.5.0

McAfee 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 information

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

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 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 information

IBM EXAM QUESTIONS & ANSWERS

IBM 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 information

RDBMS Topic 4 Adv. SQL, MSBTE Questions and Answers ( 12 Marks)

RDBMS 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 information

Database Programming with SQL

Database 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 information

Administration Guide Release 5.0

Administration 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 information

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Copyright 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 information

Experiences of Global Temporary Tables in Oracle 8.1

Experiences 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 information

Basics of SQL Transactions

Basics 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 information

Oracle Database 10g: Implement and Administer a Data Warehouse

Oracle 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 information

Oracle 1Z Oracle Database 12c: Advanced PL/SQL.

Oracle 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 information

IBM Spectrum Protect HSM for Windows Version Administration Guide IBM

IBM 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 information

IBM DB2 Query Patroller. Administration Guide. Version 7 SC

IBM 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 information

Tibero TSC Installation Guide

Tibero 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 information

Analytics: Server Architect (Siebel 7.7)

Analytics: 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 information

Copyright Network Management Forum

Copyright 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 information

DBMS Performance Tuning

DBMS 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 information

Data Vault Partitioning Strategies WHITE PAPER

Data 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 information

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

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 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 information

20 Essential Oracle SQL and PL/SQL Tuning Tips. John Mullins

20 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 information

Replication. Some uses for replication:

Replication. 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 information

Arcserve Backup for Windows

Arcserve 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 information

Oracle Database 10g: New Features for Administrators Release 2

Oracle 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 information

Oracle SQL Developer TimesTen In-Memory Database Support

Oracle 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 information

Optimizing Session Caches in PowerCenter

Optimizing 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 information

SQL (Structured Query Language)

SQL (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 information

JSPM 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 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 information

ALTIBASE HDB Release Notes

ALTIBASE 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 information

Create 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 >>>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 information

Using Oracle STATSPACK to assist with Application Performance Tuning

Using 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 information

Contents I Introduction 1 Introduction to PL/SQL iii

Contents 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 information

ADVANTAGES. Via PL/SQL, all sorts of calculations can be done quickly and efficiently without use of Oracle engine.

ADVANTAGES. 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 information

Configure ODBC on ISE 2.3 with Oracle Database

Configure 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 information

About these Release Notes. Documentation Accessibility. New Features in Pro*COBOL

About 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 information

Exploring 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 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 information

Projects. Corporate Trainer s Profile. CMM (Capability Maturity Model) level Project Standard:- TECHNOLOGIES

Projects. 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 information

Interstage Shunsaku Data Manager Operator s Guide

Interstage 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 information

HPE Security Fortify Plugins for Eclipse

HPE 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 information

Chapter 8: Working With Databases & Tables

Chapter 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 information

Tablespace Usage By Schema In Oracle 11g Query To Check Temp

Tablespace 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 information

Oracle Database 10g: Introduction to SQL

Oracle 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 information

Oracle 11g Invisible Indexes Inderpal S. Johal. Inderpal S. Johal, Data Softech Inc.

Oracle 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 information

Database Foundations. 6-3 Data Definition Language (DDL) Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database 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 information

Oracle Database 10g : Administration Workshop II (Release 2) Course 36 Contact Hours

Oracle 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 information

Full file at

Full 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 information

Oracle Database 12c Release 2

Oracle 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 information

Like all programming models, MySQL identifiers follow certain rules and conventions.

Like 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 information

Author: Mounir Babari. Senior Technical Support Engineer UK. IBM B2B & Commerce - Industry Solutions. 1 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 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 information

CHAPTER. Oracle Database 11g Architecture Options

CHAPTER. 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 information

The information contained in this manual is relevant to end-users, application programmers and system administrators.

The 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 information

User's Guide c-treeace SQL Explorer

User'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 information

COMP 3400 Mainframe Administration 1

COMP 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 information

Horizontal Table Partitioning

Horizontal 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 information

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Copyright 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 information

Chapter 11: File System Implementation. Objectives

Chapter 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