This document discusses partitioning tables and indexing them in Oracle databases. It covers the different types of partitioning including range, list, hash, and composite partitioning. It provides examples of creating partitioned tables and indexes. It also discusses strategies for maintaining partitioned tables, including adding, dropping, splitting, merging and exchanging partitions. It recommends different partitioning and indexing approaches for optimizing query performance and archiving old data.