Partitioning -- 9 : System Partitioning
System Partitioning, introduced in 11g, unlike all the traditional Partitioning methods, requires that all DML specify the Target Partition. For a System Partitioned Table, the RDBMS does not use a...
View ArticleSQL Slowdown ? A short list of potential reasons
Jonathan Lewis has published a short list of potential reasons why you might see a slowdown in SQL execution. With newer releases 12.2, 18c and 19c, the list may have to be expanded.
View ArticlePartitioning -- 10 : Virtual Column Based Partitioning
Oracle 11g supports specifying a Virtual Column as the Partition Key.A Virtual Column is a column where the value is derived on the basis of an expression on other columns or sql/plsql functions. The...
View ArticlePartitioning -- 11 : Composite Partitioning
Oracle allows Composite Partitioning where a Partition can, itself, be Sub-Partitioned. Each SubPartition is a distinct segment (allocation of physical Oracle Data blocks) while the Partition itself...
View ArticlePartitioning -- 12 : Data Dictionary Queries
Here's a compilation of some useful data dictionary queries on the implementation of Partitioning.REM List all Partitioned Tables in the database (or filter by OWNER in the WHERE clause)REM Note that...
View ArticlePartioning -- 13a : Relocating a Partition
When you want to / need to move a Partition to a different Tablespace (e.g. as part of a LifeCycle Management Policy), you may need downtime to relocate the Partition. However, version 12cRelease1...
View ArticlePartitioning -- 13b : Splitting a Partition
Let's say the business anticipates growing sales volume in 2019 and new reporting requirements. IT analyses the requirements and decides that the SALES_DATA Table that is currently Partitioned by...
View ArticlePartitioning -- 13c : Merging Partitions
The reverse of SPLITting a Partition is to MERGE two adjacent partitions.I reverse the SPLIT that I did in the previous blog post.SQL> l 1 select partition_name, tablespace_name, high_value 2 from...
View ArticlePartitioning -- 13d : TRUNCATE and DROP Partitions and Global Indexes
A TRUNCATE or DROP Partition makes Global Indexes on a Partitioned Table UNUSABLE.You may be lucky if the target partition was empty, resulting in Oracle maintaining Global Indexes as valid. However,...
View ArticlePartitioning -- 14 : Converting a non-Partitioned Table to a Partitioned Table
Pre-12cRelease2, there were only three methods to convert a non-Partitioned Table to a Partitioned Table(a) Create a new, empty, Partitioned Table and copy (using INSERT .... AS SELECT ... ) all the...
View ArticleEveryone should read this
An excellent article that anyone promising, developing, maintaining or using any system that is non-trivial should read...
View ArticlePartitioning -- 15 : Online Modification of Partitioning Type (Strategy)
Oracle 18c introduces the ability to convert a Partitioned Table from one Type to another -- e.g. from Hash Partitioning to Range Partitioning. This is effectively a change of the Partitioning...
View ArticlePartitioning -- 16 : Hybrid Partitioning
Oracle 19c introduces Hybrid Partitioning whereby you can have external and internal Partitions co-existing. External Partitions are on storage (filesystem) outside the database.Let's say we have a...
View ArticleRecent Blog Series on Partitioning
A recent series of posts on Partitioning1. 1. Introduction (Aug-18)2. 2. Simple Range Partitioning (Aug-18)3. 3a. Indexes on a Partitioned Table (Aug-18)4. 3b. More Indexes on a Partitioned...
View Article2million PageViews
This blog has now achieved 2million PageViews :(The "drop" at the end is the count for only the first week of August 2019).Although this blog began in December 2006, the PageViews counts start with...
View ArticleBasic Replication -- 1 : Introduction
Basic Replication, starting with Read Only Snapshots has been available in Oracle since V7. This was doable with the "CREATE SNAPSHOT" command.In 8i, the term was changed from "Snapshot" to...
View ArticleBasic Replication -- 2a : Elements for creating a Materialized View
The CREATE MATERIALIZED VIEW statement is documented here. It can look quite complex so I am presenting only the important elements here. In this post, I begin with only the basic elements.(EDIT:...
View ArticleBlog Series on 12cR1 RAC
A series of posts in 2017 on 12cR1 RAC :1. 1. Grid Infrastructure Install (Dec-16)2. 2. Convert AdminManaged Database to PolicyManaged (Dec-16)3. 3. Convert PolicyManaged Database back to...
View ArticleBasic Replication -- 2b : Elements for creating a Materialized View
Continuing the previous post, what happens when there is an UPDATE to the source table ?SQL> select * from source_table; ID DATA_ELEMENT_1 DATA_ELEMENT_2 DATE_COL---------- ---------------...
View ArticleBasic Replication -- 3 : Multiple Materialized Views
You can define multiple Materialized Views against the same Source Table with differences in :a) the SELECT clause column listb) Predicates in the WHERE clausec) Joins to one or more other Source...
View Article
More Pages to Explore .....