Oracle Partitioning – Yesterday, Today, and Tomorrow
description
Transcript of Oracle Partitioning – Yesterday, Today, and Tomorrow
![Page 1: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/1.jpg)
![Page 2: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/2.jpg)
<Insert Picture Here>
Oracle Partitioning – Yesterday, Today, and TomorrowAnanth RaghavanSenior Development Manager, Oracle Partitioning
![Page 3: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/3.jpg)
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 material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.
![Page 4: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/4.jpg)
Agenda
• History and evolution of Oracle Partitioning• Proven functionality in 7th generation
• Fundamental concepts for success• Resolving some myths• Upcoming new functionality• Q&A
![Page 5: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/5.jpg)
Agenda
• History and evolution of Oracle Partitioning• Proven functionality in 7th generation
• Fundamental concepts for success• Resolving some myths• Upcoming new functionality• Q&A
![Page 6: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/6.jpg)
It is• Powerful functionality to logically partition objects into
smaller pieces• Only driven by business requirements• Partitioning for Performance, Manageability, and
Availability
It is not• Just a way to physically divide – or clump - any large
data set into smaller buckets• Enabling pre-requirement to support a specific
hardware/software design • Hash mandatory for shared nothing systems
What is Oracle Partitioning?
![Page 7: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/7.jpg)
Logical Partitioning• Does not underlie any constraints
• SMP, MPP, Cluster, Grid does not matter
• Purely based on the business requirement
• Availability. Manageability, Performance
• Beneficial for every environment• Provides the most comprehensive
functionality
DB
Physical versus Logical PartitioningShared Everything Architecture - Oracle
![Page 8: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/8.jpg)
Physical Partitioning• Fundamental system setup
requirement• Node owns piece of DB
• Enables parallelism• Number of partitions is equivalent to
min. parallelism
• Always needs HASH distribution• Equally sized partitions per node
required for proper load balancing
DB DB DB
Physical versus Logical PartitioningShared Nothing Architecture
![Page 9: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/9.jpg)
• Oracle 8.0• RANGE partitioning• Fundamental Maintenance
operations• Static pruning
• Oracle8i• HASH, composite RANGE-HASH• MERGE partitions• Dynamic pruning• Partition-wise joins
• Oracle9i Release 1• LIST partitioning• Global index maintenance
• Oracle9i Release 2• Fast Split• Composite RANGE-LIST• DEFAULT partition for LIST
• Oracle Database10g Release 1• Internal re-architecture (scalability)• Global hash-partitioned indexes• Local index maintenance
• Oracle Database 10g Release 2• One million partitions• Multi-dimensional pruning• Resource optimized drop table
* Lots of enhancements not shown here, e.g. IOTs, MVs
Oracle PartitioningThe way to Oracle Database 10g Release 2
Core functionality: Partitioning techniques
![Page 10: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/10.jpg)
* Lots of enhancements not shown here, e.g. IOTs, MVs
Oracle PartitioningThe way to Oracle Database 10g Release 2
Partition Maintenance
• Oracle 8.0• RANGE partitioning• Fundamental Maintenance
operations• Static pruning
• Oracle8i• HASH, composite RANGE-HASH• MERGE partitions• Dynamic pruning• Partition-wise joins
• Oracle9i Release 1• LIST partitioning• Global index maintenance
• Oracle9i Release 2• Fast Split• Composite RANGE-LIST• DEFAULT partition for LIST
• Oracle Database10g Release 1• Internal re-architecture (scalability)• Global hash-partitioned indexes• Local index maintenance
• Oracle Database 10g Release 2• One million partitions• Multi-dimensional pruning• Resource optimized drop table
![Page 11: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/11.jpg)
* Lots of enhancements not shown here, e.g. IOTs, MVs
Oracle PartitioningThe way to Oracle Database 10g Release 2
Performance
• Oracle 8.0• RANGE partitioning• Fundamental Maintenance
operations• Static pruning
• Oracle8i• HASH, composite RANGE-HASH• MERGE partitions• Dynamic pruning• Partition-wise joins
• Oracle9i Release 1• LIST partitioning• Global index maintenance
• Oracle9i Release 2• Fast Split• Composite RANGE-LIST• DEFAULT partition for LIST
• Oracle Database10g Release 1• Internal re-architecture (scalability)• Global hash-partitioned indexes• Local index maintenance
• Oracle Database 10g Release 2• One million partitions• Multi-dimensional pruning• Resource optimized drop table
![Page 12: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/12.jpg)
Agenda
• History and evolution of Oracle Partitioning• Proven functionality in 7th generation
• Fundamental concepts for success• Resolving some myths• Upcoming new functionality• Q&A
![Page 13: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/13.jpg)
Oracle PartitioningFundamental Concepts for Success
• While performance seems to be the most visible one, don't forget about the rest, e.g.• Partitioning must address all business-relevant areas of
Performance, Manageability, and Availability
• Partition autonomy is crucial• Fundamental requirement for any partition maintenance
operations• Acknowledge partitions as metadata in the data dictionary
![Page 14: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/14.jpg)
Oracle PartitioningFundamental Concepts for Success
• Provide full partition autonomy• Use local indexes whenever possible• Enable partition all table-level operations for partitions, e.g.
TRUNCATE, MOVE, COMPRESS
• Make partitions visible and usable for database administration• Partition naming for ease of use
• Maintenance operations must be partition-aware• Also true for indexes
• Maintenance operations must not interfere with online usage of a partitioned table
![Page 15: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/15.jpg)
Agenda
• History and evolution of Oracle Partitioning• Proven functionality in 7th generation
• Fundamental concepts for success• Resolving some myths• Upcoming new functionality• Q&A
![Page 16: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/16.jpg)
Resolving some Myths
“Global Index maintenance is bad”
• Partition maintenance takes longer when global indexes are updated
• Global index maintenance is incremental• No complete rebuild
• Fully transparent• Table and partition are not locked
• Continuous and transparent availability
![Page 17: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/17.jpg)
Resolving some Myths
“Oracle cannot add or remove data from a partitioned table”
• Oracle provides the most comprehensive set of data add and removal operations• DROP removes a partition, including data and metadata• TRUNCATE provides a fast data removal, preserving the
metadata• EXCHANGE provides the capability to exchange a partition
with a standalone table• Preserves data for both sides of the exchange
• Fast data in • Fast data out
![Page 18: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/18.jpg)
Resolving some Myths
“Local indexes are not important and cannot be used as primary or unique index”
• Local indexes are crucial for full partition autonomy• Logical grouping of partition and index segments enables fast
maintenance operations• Only local indexes enable full physical data separation for partitioned
objects
• Local indexes can be unique or primary keys• Inclusion of partitioning key mandatory for local autonomy
• Most indexes are non-unique
![Page 19: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/19.jpg)
Resolving some Myths
“Oracle's Partition creation syntax is worse than the syntax of other vendors”
• No “syntactical sugar’ in SQL for initial object creation• Provided by Enterprise Manager• No metadata extension
• Subpartition templates provide real metadata• Initial creation and future partitions
• It’s getting even better ..• Stay tuned for the upcoming new features section
![Page 20: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/20.jpg)
Resolving some Myths
“ .. Create partitions every month ..”
![Page 21: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/21.jpg)
Resolving some Myths
![Page 22: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/22.jpg)
• History and evolution of Oracle Partitioning• Proven functionality in 7th generation
• Fundamental concepts for success• Resolving some myths• Upcoming new functionality• Q&A
Agenda
![Page 23: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/23.jpg)
Future Directions (OW 2004/2005 slide)
![Page 24: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/24.jpg)
• Partition techniques enable partitioning for your business• The more techniques the better• Map your business process the most optimal way
• Oracle Database 11g enhances the existing partitioning strategies significantly• Extended composite partitioning strategies• Virtual column based partitioning• Interval Partitioning• REF Partitioning
Extended Partitioning Strategies
![Page 25: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/25.jpg)
<Insert Picture Here>
Extended Composite Partitioning
![Page 26: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/26.jpg)
• Concept of composite partitioning• Data is partitioned along two dimensions (A,B)• A distinct value pair for the two dimensions uniquely
determines the target partitioning• Composite partitioning is complementary to multi-
column range partitioning• Extensions in Oracle Database 11g
• List-Range • Range-Range• List-Hash• List-List
Extended Composite Partitioning Strategies
![Page 27: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/27.jpg)
Table SALESRANGE(order_date)-RANGE(ship_date)
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007
... ...
... ...
...
...
...
...
Jan 2006
Feb 2006
Jan 2007
Composite Partitioning - Concept
![Page 28: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/28.jpg)
Composite Partitioning - Concept
Table SALESRANGE(order_date)-RANGE(ship_date)
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007
... ...
... ...
...
...
...
...
Jan 2006
Feb 2006
May 2006
Mar 2006
• All records with order_date in March 2006
![Page 29: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/29.jpg)
Composite Partitioning - Concept
Table SALESRANGE(order_date)-RANGE(ship_date)
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007
... ...
... ...
...
...
...
...
Jan 2006
Feb 2006
May 2006
• All records with ship_date in May 2006
May2006
![Page 30: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/30.jpg)
Composite Partitioning - Concept
Table SALESRANGE(order_date)-RANGE(ship_date)
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007
... ...
... ...
...
...
...
...
Jan 2006
Feb 2006
May 2006
Mar 2006
• All records with order_date in March 2006 ANDship_date in May 2006
May2006
![Page 31: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/31.jpg)
<Insert Picture Here>
Virtual Column based Partitioning
![Page 32: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/32.jpg)
Virtual Columns
• Extended Schema attributes are fully derived and dependent on existing common data
• Redundant storage or extended view definitions are solving this problem today• Requires additional maintenance and creates overhead
Business Problem
Solution• Oracle Database 11g introduces virtual columns
• Purely virtual, meta-data only• Treated as real columns except no DML
• Virtual columns can have statistics• Virtual columns are eligible as partitioning key
• Enhanced performance and manageability
![Page 33: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/33.jpg)
Virtual Columns - Example
• Base table with all attributes ...
CREATE TABLE accounts
(acc_no number(10) not null,
acc_name varchar2(50) not null, ...
12500 Adams12507 Blake1266612875 Smith
King
![Page 34: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/34.jpg)
Virtual Columns - Example
12500 Adams12507 12Blake12666 1212875 12Smith
King
CREATE TABLE accounts (acc_no number(10) not null, acc_name varchar2(50) not null, ... acc_branch number(2) generated always as (to_number(substr(to_char(acc_no),1,2)))
12
• Base table with all attributes ...• ... is extended with the virtual (derived) column
![Page 35: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/35.jpg)
Virtual Columns - Example
12500 Adams12507 12Blake12666 1212875 12Smith
King
CREATE TABLE accounts (acc_no number(10) not null, acc_name varchar2(50) not null, ... acc_branch number(2) generated always as (to_number(substr(to_char(acc_no),1,2)))partition by list (acc_branch) ...
12
• Base table with all attributes ...• ... is extended with the virtual (derived) column• ... and the virtual column is used as partitioning key
32320 Jones32407 32Clark32758 3232980 32Phillips
32
... Hurd
![Page 36: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/36.jpg)
<Insert Picture Here>
Interval Partitioning
![Page 37: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/37.jpg)
Interval Partitioning
• Partitioning is key-enabling functionality for managing large volumes of data• One logical object for application transparency• Multiple physical segments for Administration
• Improves Manageability, Availability, and Performance MarJan
Feb
CDRs
SQLSQL
Application
Automate the partition management
BUT• Physical segmentation requires additional data
management overhead• E.g. new partitions must be created on-time for new data
![Page 38: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/38.jpg)
Interval Partitioning
• Interval Partitioning• Extension to Range Partitioning• Full automation for equi-sized range partitions
• Partitions are created as metadata information only• Start Partition is made persistent
• Segments are allocated as soon as new data arrives
• No need to create new partitions• Local indexes are created and maintained as well
No need for any partition management
![Page 39: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/39.jpg)
Interval Partitioning
CREATE TABLE sales (order_date DATE, ...)PARTITON BY RANGE (order_date)INTERVAL(NUMTOYMINTERVAL(1,'month')(PARTITION p_first VALUES LESS THAN ('01-JAN-2006');
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
First segment is created
• As easy as One, Two, Three ..
![Page 40: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/40.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
Other partitions only exist in metadata
• As easy as One, Two, Three ..CREATE TABLE sales (order_date DATE, ...)
PARTITON BY RANGE (order_date)
INTERVAL(NUMTOYMINTERVAL(1,'month')
(PARTITION p_first VALUES LESS THAN ('01-JAN-2006');
![Page 41: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/41.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
INSERT INTO sales (order_date DATE, ...)
VALUES ('04-MAR-2006',...);
New segment is automatically allocated
• As easy as One, Two, Three ..CREATE TABLE sales (order_date DATE, ...)
PARTITON BY RANGE (order_date)
INTERVAL(NUMTOYMINTERVAL(1,'month')
(PARTITION p_first VALUES LESS THAN ('01-JAN-2006');
![Page 42: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/42.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
INSERT INTO sales (order_date DATE, ...)
VALUES ('17-OCT-2009',...);
... whenever data for a new partition arrives
• As easy as One, Two, Three ..CREATE TABLE sales (order_date DATE, ...)
PARTITON BY RANGE (order_date)
INTERVAL(NUMTOYMINTERVAL(1,'month')
(PARTITION p_first VALUES LESS THAN ('01-JAN-2006');
![Page 43: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/43.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
• Interval partitioned table can have classical range and automated interval section• Automated new partition management plus full partition
maintenance capabilities: “Best of both worlds”
![Page 44: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/44.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
• Interval partitioned table can have classical range and automated interval section• Automated new partition management plus full partition
maintenance capabilities: “Best of both worlds”
1. MERGE and move old partitions for ILM
Range partition section
![Page 45: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/45.jpg)
Interval Partitioning
Table SALES
Jan 2006
... ...
Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009
...
• Interval partitioned table can have classical range and automated interval section• Automated new partition management plus full partition
maintenance capabilities: “Best of both worlds”
1. MERGE and move old partitions for ILM
Range partition section Interval partition section
VALUES ('13-NOV-2009')1. Insert new data• - Automatic segment creation
![Page 46: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/46.jpg)
Interval Partitioning
Table SALES
...
2005 Q1 2006 Oct 2006
• Range partitioned tables can be extended into interval partitioned tables• Simple metadata command• Investment protection
Q2 2006
...
![Page 47: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/47.jpg)
Interval Partitioning
Table SALES
...
2005 Q1 2006 Oct 2006Q2 2006
ALTER TABLE sales (order_date DATE, ...)
SET INTERVAL(NUMTOYMINTERVAL(1,'month');
• Range partitioned tables can be extended into interval partitioned tables• Simple metadata command• Investment protection
...
New monthlyInterval partitions
Old range partition table
...
![Page 48: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/48.jpg)
<Insert Picture Here>
REF Partitioning
![Page 49: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/49.jpg)
REF Partitioning
• Related tables benefit from same partitioning strategy• Sample order – lineitem
• Redundant storage of the same information solves this problem• Data overhead• Maintenance overhead
Business Problem
Solution• Oracle Database 11g introduces REF Partitioning
• Child table inherits the partitioning strategy of parent table through PK-FK relationship
• Intuitive modelling
• Enhanced Performance and Manageability
![Page 50: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/50.jpg)
Before REF Partitioning
Table ORDERS
Jan 2006
... ...
Feb 2006
Table LINEITEMS
Jan 2006
... ...
Feb 2006
• RANGE(order_date)• Primary key order_id
• RANGE(order_date)• Foreign key order_id
• Redundant storage of order_date• Redundant maintenance
![Page 51: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/51.jpg)
REF Partitioning
Table ORDERS
Jan 2006
... ...
Feb 2006
Table LINEITEMS
Jan 2006
... ...
Feb 2006
• RANGE(order_date)• Primary key order_id
• RANGE(order_date)• Foreign key order_id• RANGE(order_date)• Foreign key order_id
PARTITION BY REFERENCE• Partitioning key inherited through
PK-FK relationship
![Page 52: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/52.jpg)
• Proven functionality in 7th generation• Experience comes with age and customer usage
• Fundamental concepts for success• The most comprehensive and complete offering
• There will be always myths• .. and envious competitors
• Ground-breaking new functionality available soon• 8th generation will be even better
Oracle Partitioning
![Page 53: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/53.jpg)
• Proven functionality in 8th generation• Experience comes with age and customer usage
• Fundamental concepts for success• The most comprehensive and complete offering
• There will be always myths• .. and envious competitors
• Ground-breaking new functionality available soon• 9th generation will be even better
• There is always room for improvements• Any ideas?? Email [email protected]
Oracle Partitioning
![Page 54: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/54.jpg)
The preceding 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 material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.
![Page 55: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/55.jpg)
AQ&
![Page 56: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/56.jpg)
For More Information
http://search.oracle.com
or
http://www.oracle.com/
Oracle Partitioning
![Page 57: Oracle Partitioning – Yesterday, Today, and Tomorrow](https://reader036.fdocuments.in/reader036/viewer/2022081514/5681404c550346895dabc013/html5/thumbnails/57.jpg)