8/13/2019 Partitioning Introduction 111101040823 Phpapp01
1/24
1 MyOnlineITCourses.com
1 MyOnlineITCourses.com
1 MyOnlineITCourses.com
Oracle Partitioning -- A Primer
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
2/24
2 MyOnlineITCourses.com
2 MyOnlineITCourses.com
2 MyOnlineITCourses.com
Partitioning
Partitioning is the ability of the database to take verylarge tables or indexes and
physically break them into
smaller
manageable pieces.
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
3/24
3 MyOnlineITCourses.com
3 MyOnlineITCourses.com
3 MyOnlineITCourses.com
Partitioned VSNon Partitioned Table
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
4/24
4 MyOnlineITCourses.com
4 MyOnlineITCourses.com
4 MyOnlineITCourses.com
Partitions - Benefits
Large Table
Difficult to Manage
Partition
Divide and Conquer
Easier to Manage
Improve Performance
Composite Partition
Better Performance
More flexibility to matchbusiness needs
JAN FEB
USA
EUROPE
ORDERS
Transparent to applications
ORDERS
JAN FEB
ORDERS
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
5/24
5 MyOnlineITCourses.com
5 MyOnlineITCourses.com
5 MyOnlineITCourses.com
Partitioning - Benefits
Faster
Queries will access only those relevantpartitions
Cheaper
An entire partition can be exported
Exported partition can be deleted fromdatabase
Flexible
Partition Maintenance is simpler when
compared to a large un-partitioned table Partition backup/restoration is easier
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
6/24
6 MyOnlineITCourses.com
6 MyOnlineITCourses.com
6 MyOnlineITCourses.com
When To Partition - Table
Here are some suggestions for when to partition a table:
Tables greater than 2 GBshould always be considered ascandidates for partitioning.
Tables containing historical data, in which new data isadded into the newest partition.
A typical example is a historical tablewhere only thecurrent month's data is updatable and the other 11
months are read only. When the contents of a table need to be distributed across
different types of storage devices.
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
7/24 7 MyOnlineITCourses.com7 MyOnlineITCourses.com7 MyOnlineITCourses.com
Partition Strategies
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
8/24 8 MyOnlineITCourses.com8 MyOnlineITCourses.com8 MyOnlineITCourses.com
Partition Type .. (Examples)
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
9/24 9 MyOnlineITCourses.com9 MyOnlineITCourses.com9 MyOnlineITCourses.com
Range Partitioned Tables
Data distribution is based on range of values
Data distribution is continuous
Best performance when data distribution is even onthe partition key.
Knowledge of data is critical before choosing this
Definition
Date as partitioning keyJan 2011, Feb 2011, Mar 2011 so on..
Department code as partitioning keyValues 30
Example
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
10/24 10 MyOnlineITCourses.com10 MyOnlineITCourses.com10 MyOnlineITCourses.com
DDL Example
CREATE TABLE DEPT (
DEPTNO NUMBER (2),
DEPT_NAME VARCHAR2 (30))
PARTITION BY RANGE (DEPTNO)(
PARTITION D1 VALUES LESS THAN (10)TABLESPACE DEPT1,
PARTITION D2 VALUES LESS THAN (20)TABLESPACE DEPT2,
PARTITION D1 VALUES LESS THAN (MAXVALUE)TABLESPACEDEPT3
)
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
11/24 11 MyOnlineITCourses.com11 MyOnlineITCourses.com11 MyOnlineITCourses.com
Range Partition (Multi column)
Defined on two or morecolumns of the table
Multi Column RangePartition
Enhances Query performanceif searched on partition key
Improves the Manageability ofpartitionsAdvantages
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
12/24 12 MyOnlineITCourses.com12 MyOnlineITCourses.com12 MyOnlineITCourses.com
When to use Range Partition
Very largetables beingscanned on a
range predicatelike Order-Date
Need to maintainrolling window of
data
Very less timeforadministrativeoperations like
backup on largetables
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
13/24 13 MyOnlineITCourses.com13 MyOnlineITCourses.com13 MyOnlineITCourses.com
Hash Partitioning
Partitio
n
Key
Specify thenumber ofpartitions
AlwaysDefine
2n
Partitions
Oracledatabaseinserts
rowsbased onhash valueof partition
key
Storage
Specifystorage forthe entire
table andthetablespacefor
partitions
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
14/24 14 MyOnlineITCourses.com14 MyOnlineITCourses.com14 MyOnlineITCourses.com
Hash Partition Example
Hash-partitioned table that splits the table into four parts based onthe hash of the partition key, acct_no.
CREATE TABLE CUST_SALES_HASH (
ACCT_NO NUMBER (5),
CUST_NAME CHAR (30))
PARTITION BY HASH (ACCT_NO) PARTITIONS4
STORE IN (USERS1, USERS2, USERS3, USERS4);
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
15/24 15 MyOnlineITCourses.com15 MyOnlineITCourses.com15 MyOnlineITCourses.com
When to use Hash Partition
ImproveManageability/availability of
Large tables
Avoid data skew inpartitions
Maximize I/0 throughput
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
16/24 16 MyOnlineITCourses.com16 MyOnlineITCourses.com16 MyOnlineITCourses.com
List Partitioning
Segmenting data with a list of values
Flexible means of partitioning where data is better understood
Similar to Range Partitioning, but without any max valueDefinition
CREATE TABLE DEPT_PART (DEPTNO NUMBER (2),DNAME VARCHAR2 (14),LOC
VARCHAR2 (13))
PARTITION BY LIST (DNAME)
(PARTITION D1_EAST VALUES (NEW YORK),
PARTITION D2_WEST VALUES (SAN FRANCISCO, LOS ANGELES),
PARTITION D3_SOUTH VALUES (ATLANTA,DALLAS,HOUSTON),
PARTITION D4_NORTH VALUES (CHICAGO,DETROIT));
Example
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
17/24
17 MyOnlineITCourses.com17 MyOnlineITCourses.com17 MyOnlineITCourses.com
Range ,List , Hash Partitions
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
18/24
18 MyOnlineITCourses.com18 MyOnlineITCourses.com18 MyOnlineITCourses.com
Composite Partitioning
Data isPartitionedalong two
dimensions
A distinct valuepair for the two
dimensionsuniquely
determines thetarget partition
CompositePartitioning is
complementaryto multi
column rangepartition
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
19/24
19 MyOnlineITCourses.com19 MyOnlineITCourses.com19 MyOnlineITCourses.com
Composite Partitioning Strategies
New 11g Strategy Use Case
List Range Geography Time
Range - Range Ship Date Order Date
List - Hash Geography OrderID
List - List Geography Product
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
20/24
20 MyOnlineITCourses.com20 MyOnlineITCourses.com20 MyOnlineITCourses.com
Range List Partitioning
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
21/24
21 MyOnlineITCourses.com21 MyOnlineITCourses.com21 MyOnlineITCourses.com
Composite PartitioningRange - Range
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007
... ...
... ...
...
...
...
...
Jan2006
Feb2006
May
2006
Mar 2006
All records withorder_date inMarch 2006ANDship_date in May2006
May
2006
ship_date
order_date
Table SALESRANGE(order_date)-RANGE(ship_date)
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
22/24
22 MyOnlineITCourses.com22 MyOnlineITCourses.com22 MyOnlineITCourses.com
Would like to learn more about
oracle ???
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
23/24
23 MyOnlineITCourses.com23 MyOnlineITCourses.com23 MyOnlineITCourses.com
www.MyOnlineITCourses.com
We give quality online trainings by IT Professionals for Oracle SQL , PL/SQL
Oracle DBA
Oracle Performance Tuning
Data Modelling with Erwin Tool
To get more details contact us
+91 991 2323 000
www.Facebook.com/MyOnlineITCourses
8/13/2019 Partitioning Introduction 111101040823 Phpapp01
24/24
24 MyOnlineITCourses com24 MyOnlineITCourses com24 MyOnlineITCourses.com
Top Related