SlideShare a Scribd company logo
1© The Pythian Group Inc., 2018
Franky Weber Faust
October 2019
WHY, WHEN AND HOW TO DO IT
ORACLE
PARTITIONING FOR
DEVELOPERS
2© The Pythian Group Inc., 2018 2
FRANKY WEBER FAUST
● Senior Oracle Database Consultant at Pythian
● 29 years old
● Writer at OTNLA and Lore Data Blog
● Speaker at conferences around the world
● High Availability specialist
● Performance researcher
● Exadata, RAC, DataGuard, GoldenGate
● AcroYoga practitioner
● Guitar player
loredata.com.br
3© The Pythian Group Inc., 2018 3
E-mail: faust@pythian.com or franky@loredata.com.br
Blog: http://loredata.com.br/blog
Facebook: https://facebook.com/08Franky.Weber
Instagram: https://www.instagram.com/frankyweber/
Twitter: https://twitter.com/frankyweber
LinkedIn: https://linkedin.com/in/frankyweber/en
Oracle ACE: https://bit.ly/2YxU6bK
Keep in touch
PL/SQL Camp MeetUp 2019 - Oracle Partitioning for Developers
© 2017 Pythian. Confidential 5
Years in Business
20 Pythian Experts
in 35 Countries
400+ Current Clients
Globally
350+
© 2017 Pythian. Confidential 6
WHY THIS PRESENTATION?
7© The Pythian Group Inc., 2018
AGENDA
7
● Partitioning concept
● Background
● Partitioning benefits (Why)
● Implementation scenarios (When)
● Types of partitioning (When)
● Range, List, Interval e Hash partitioning (How)
● The execution plan
© 2017 Pythian. Confidential 8
PARTITIONING CONCEPTS
● Break down a table/index into
smaller pieces
● Partition Key
● Single or multicolumn
● Up to 16 columns
● Unique values are not required
● Every partition is a segment
● Tables
● Heap tables
● Index-organized tables
● Indexes
● Materialized Views
● Clusters
● Performance
● Partition Pruning
© 2017 Pythian. Confidential 9
BACKGROUND HISTORY
● Since Oracle 8 (1997)
● Requires extra licensing and EE
● Manual partitioning using views
● New features every new release
● 19c Hybrid partitioning (Hive, HDFS,
External file)
Partition Maintenance on multiple
partitions, Asynchronous global
index maintenance, Zone maps
Oracle 12cR2
Table creation for partition exchange,
read-only partitions, Filtered partition
maintenance, Online table
conversion to partitioned table
Oracle 18c Online Merging of Partitions
and Subpartitions
Parallel Partition-Wise
SQL Operations
Modifying the Partitioning
Strategy
Auto-list and Multicolumn list
partitioning, Partitioned
external tables
© 2017 Pythian. Confidential 10
PARTITIONING BENEFITS (WHY)
● Increases availability of data
● Eases administration of large
segments
● Might improve the performance of
some queries
● Might reduce contention on hot
OLTP segments
© 2017 Pythian. Confidential 11
IMPLEMENTATION SCENARIOS (WHEN)
● Large volume of data when
administration becomes difficult
● Query performance on large tables
suffers
● Buffer busy waits on high-concurrent
tables
● Horizontal scalability in RAC
● Decreased storage cost
● Compression and row archival
© 2017 Pythian. Confidential 12
TYPES OF PARTITIONING (HOW)
● Range Partitioning
● Dates and numbers are good
candidates
● Upper boundary
● Hash Partitioning
● High-volume OLTP segments
● Data is evenly distributed across
partitions
● List Partitioning
● Categories, colors, sports, brands
● Default values accepted
● Interval Partitioning
● Automated range partitions
● Reference Partitioning
● Relational model PK-FK
● Interval Reference Partitioning
● All child tables will be automatically
maintained
● Virtual Column Based Partitioning
● *Hybrid Partitioning (19c)*
© 2017 Pythian. Confidential 13
RANGE PARTITIONING (HOW)
© 2017 Pythian. Confidential 14
RANGE PARTITIONING (HOW)
© 2017 Pythian. Confidential 15
LIST PARTITIONING (HOW)
© 2017 Pythian. Confidential 16
LIST PARTITIONING (HOW)
© 2017 Pythian. Confidential 17
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 18
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 19
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 20
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 21
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 22
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 23
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 24
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 25
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 26
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 27
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 28
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 29
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 30
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 31
HASH PARTITIONING (HOW)
© 2017 Pythian. Confidential 32
INTERVAL PARTITIONING (HOW)
© 2017 Pythian. Confidential 33
INTERVAL PARTITIONING (HOW)
© 2017 Pythian. Confidential 34
INTERVAL PARTITIONING (HOW)
© 2017 Pythian. Confidential 35
INTERVAL PARTITIONING (HOW)
© 2017 Pythian. Confidential 36
INTERVAL PARTITIONING (HOW)
© 2017 Pythian. Confidential 37
THE EXECUTION PLAN
© 2017 Pythian. Confidential 38
THE EXECUTION PLAN
© 2017 Pythian. Confidential 39
THE EXECUTION PLAN
© 2017 Pythian. Confidential 40
THE EXECUTION PLAN
© 2017 Pythian. Confidential 41
THE EXECUTION PLAN
© 2017 Pythian. Confidential 42
THE EXECUTION PLAN
© 2017 Pythian. Confidential 43
THE EXECUTION PLAN
© 2017 Pythian. Confidential 44
THE EXECUTION PLAN
© 2017 Pythian. Confidential 45
THE EXECUTION PLAN
© 2017 Pythian. Confidential 46
THE EXECUTION PLAN
© 2017 Pythian. Confidential 47
THE EXECUTION PLAN
© 2017 Pythian. Confidential 48
THE EXECUTION PLAN
© 2017 Pythian. Confidential 49
THE EXECUTION PLAN
© 2017 Pythian. Confidential 50
THE EXECUTION PLAN
© 2017 Pythian. Confidential 51
PARTITIONING MAINTENANCE OPERATIONS
online
© 2017 Pythian. Confidential 52
PARTITIONING MAINTENANCE OPERATIONS
© 2017 Pythian. Confidential 53
PARTITIONING MAINTENANCE OPERATIONS
online
© 2017 Pythian. Confidential 54
CONCLUSION
● Range Partitioning, Hash
Partitioning, List Partitioning, Interval
Partitioning
● 12cR2 onwards can perform most
partitioning operations online
● Performance problems in read or
write operations can get better or
worse with partitioning, so plan well
● New releases -> New features, it's
been like that for years.
● Questions?
© The Pythian Group Inc., 2018 55
Stay in touch!
● E-mail: franky@loredata.com.br or faust@pythian.com
● Blog: http://loredata.com.br/blog
● Facebook: https://facebook.com/08Franky.Weber
● Instagram: https://www.instagram.com/frankyweber/
● Twitter: https://twitter.com/frankyweber
● LinkedIn: https://linkedin.com/in/frankyweber/en
● Oracle ACE: https://bit.ly/2YxU6bK
© The Pythian Group Inc., 2018 5656© The Pythian Group Inc., 2018

More Related Content

PPTX
We Thought Barcoding Would Make Our Life Easier….?!
PPTX
POUG 2019 - Oracle Partitioning for DBAs and Devs
PDF
Oracle Partitioning for DBAs and Developers
PDF
How to scale MongoDB
PDF
graymatter-pentaho-consulting-services-.pdf
PPTX
YugaByte DB - "Designing a Distributed Database Architecture for GDPR Complia...
PDF
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
PDF
Implementing MySQL Database-as-a-Service using open source tools
We Thought Barcoding Would Make Our Life Easier….?!
POUG 2019 - Oracle Partitioning for DBAs and Devs
Oracle Partitioning for DBAs and Developers
How to scale MongoDB
graymatter-pentaho-consulting-services-.pdf
YugaByte DB - "Designing a Distributed Database Architecture for GDPR Complia...
ROMA NOVIKOV, BAQ, "Prometheus + grafana based monitoring"
Implementing MySQL Database-as-a-Service using open source tools

Similar to PL/SQL Camp MeetUp 2019 - Oracle Partitioning for Developers (20)

PPTX
Distributed Database Architecture for GDPR
PPTX
Delicious : EDQ, OGG and ODI over Exadata for Perfection
PDF
SPUnite17 Transforming your Organisation into a Digital Workplace
PPTX
Industrialiser spark
PDF
Deploying MariaDB for HA on Google Cloud Platform
PDF
The Value of Metadata
PDF
One bridge to connect them all. Oracle GoldenGate for Big Data.UKOUG Tech 2018
PDF
Data Day Seattle 2017: Scaling Data Science at Stitch Fix
PDF
Putting data science to work
PPTX
Custom Machine Learning Recipes for the Enterprise
PPTX
Make your data fly - Building data platform in AWS
PDF
Mastering Data Modeling for NoSQL Platforms
PDF
Why Data Vault?
ODP
Python and big data : a good match?
PPTX
Hypothetical Partitioning for PostgreSQL
PDF
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
PDF
There and back_again_oracle_and_big_data_16x9
PDF
[db tech showcase Tokyo 2017] C13:There and back again or how to connect Orac...
PDF
Whats new in ep3
PPTX
Citizen Developers Intro to jQuery Customizations in SharePoint
Distributed Database Architecture for GDPR
Delicious : EDQ, OGG and ODI over Exadata for Perfection
SPUnite17 Transforming your Organisation into a Digital Workplace
Industrialiser spark
Deploying MariaDB for HA on Google Cloud Platform
The Value of Metadata
One bridge to connect them all. Oracle GoldenGate for Big Data.UKOUG Tech 2018
Data Day Seattle 2017: Scaling Data Science at Stitch Fix
Putting data science to work
Custom Machine Learning Recipes for the Enterprise
Make your data fly - Building data platform in AWS
Mastering Data Modeling for NoSQL Platforms
Why Data Vault?
Python and big data : a good match?
Hypothetical Partitioning for PostgreSQL
OSMC 2018 | Distributed Tracing FAQ by Gianluca Arbezzano
There and back_again_oracle_and_big_data_16x9
[db tech showcase Tokyo 2017] C13:There and back again or how to connect Orac...
Whats new in ep3
Citizen Developers Intro to jQuery Customizations in SharePoint
Ad

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
KodekX | Application Modernization Development
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Electronic commerce courselecture one. Pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Empathic Computing: Creating Shared Understanding
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
Teaching material agriculture food technology
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Per capita expenditure prediction using model stacking based on satellite ima...
KodekX | Application Modernization Development
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Understanding_Digital_Forensics_Presentation.pptx
Electronic commerce courselecture one. Pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Empathic Computing: Creating Shared Understanding
Reach Out and Touch Someone: Haptics and Empathic Computing
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The Rise and Fall of 3GPP – Time for a Sabbatical?
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
MIND Revenue Release Quarter 2 2025 Press Release
Machine learning based COVID-19 study performance prediction
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Mobile App Security Testing_ A Comprehensive Guide.pdf
Ad

PL/SQL Camp MeetUp 2019 - Oracle Partitioning for Developers

  • 1. 1© The Pythian Group Inc., 2018 Franky Weber Faust October 2019 WHY, WHEN AND HOW TO DO IT ORACLE PARTITIONING FOR DEVELOPERS
  • 2. 2© The Pythian Group Inc., 2018 2 FRANKY WEBER FAUST ● Senior Oracle Database Consultant at Pythian ● 29 years old ● Writer at OTNLA and Lore Data Blog ● Speaker at conferences around the world ● High Availability specialist ● Performance researcher ● Exadata, RAC, DataGuard, GoldenGate ● AcroYoga practitioner ● Guitar player loredata.com.br
  • 3. 3© The Pythian Group Inc., 2018 3 E-mail: faust@pythian.com or franky@loredata.com.br Blog: http://loredata.com.br/blog Facebook: https://facebook.com/08Franky.Weber Instagram: https://www.instagram.com/frankyweber/ Twitter: https://twitter.com/frankyweber LinkedIn: https://linkedin.com/in/frankyweber/en Oracle ACE: https://bit.ly/2YxU6bK Keep in touch
  • 5. © 2017 Pythian. Confidential 5 Years in Business 20 Pythian Experts in 35 Countries 400+ Current Clients Globally 350+
  • 6. © 2017 Pythian. Confidential 6 WHY THIS PRESENTATION?
  • 7. 7© The Pythian Group Inc., 2018 AGENDA 7 ● Partitioning concept ● Background ● Partitioning benefits (Why) ● Implementation scenarios (When) ● Types of partitioning (When) ● Range, List, Interval e Hash partitioning (How) ● The execution plan
  • 8. © 2017 Pythian. Confidential 8 PARTITIONING CONCEPTS ● Break down a table/index into smaller pieces ● Partition Key ● Single or multicolumn ● Up to 16 columns ● Unique values are not required ● Every partition is a segment ● Tables ● Heap tables ● Index-organized tables ● Indexes ● Materialized Views ● Clusters ● Performance ● Partition Pruning
  • 9. © 2017 Pythian. Confidential 9 BACKGROUND HISTORY ● Since Oracle 8 (1997) ● Requires extra licensing and EE ● Manual partitioning using views ● New features every new release ● 19c Hybrid partitioning (Hive, HDFS, External file) Partition Maintenance on multiple partitions, Asynchronous global index maintenance, Zone maps Oracle 12cR2 Table creation for partition exchange, read-only partitions, Filtered partition maintenance, Online table conversion to partitioned table Oracle 18c Online Merging of Partitions and Subpartitions Parallel Partition-Wise SQL Operations Modifying the Partitioning Strategy Auto-list and Multicolumn list partitioning, Partitioned external tables
  • 10. © 2017 Pythian. Confidential 10 PARTITIONING BENEFITS (WHY) ● Increases availability of data ● Eases administration of large segments ● Might improve the performance of some queries ● Might reduce contention on hot OLTP segments
  • 11. © 2017 Pythian. Confidential 11 IMPLEMENTATION SCENARIOS (WHEN) ● Large volume of data when administration becomes difficult ● Query performance on large tables suffers ● Buffer busy waits on high-concurrent tables ● Horizontal scalability in RAC ● Decreased storage cost ● Compression and row archival
  • 12. © 2017 Pythian. Confidential 12 TYPES OF PARTITIONING (HOW) ● Range Partitioning ● Dates and numbers are good candidates ● Upper boundary ● Hash Partitioning ● High-volume OLTP segments ● Data is evenly distributed across partitions ● List Partitioning ● Categories, colors, sports, brands ● Default values accepted ● Interval Partitioning ● Automated range partitions ● Reference Partitioning ● Relational model PK-FK ● Interval Reference Partitioning ● All child tables will be automatically maintained ● Virtual Column Based Partitioning ● *Hybrid Partitioning (19c)*
  • 13. © 2017 Pythian. Confidential 13 RANGE PARTITIONING (HOW)
  • 14. © 2017 Pythian. Confidential 14 RANGE PARTITIONING (HOW)
  • 15. © 2017 Pythian. Confidential 15 LIST PARTITIONING (HOW)
  • 16. © 2017 Pythian. Confidential 16 LIST PARTITIONING (HOW)
  • 17. © 2017 Pythian. Confidential 17 HASH PARTITIONING (HOW)
  • 18. © 2017 Pythian. Confidential 18 HASH PARTITIONING (HOW)
  • 19. © 2017 Pythian. Confidential 19 HASH PARTITIONING (HOW)
  • 20. © 2017 Pythian. Confidential 20 HASH PARTITIONING (HOW)
  • 21. © 2017 Pythian. Confidential 21 HASH PARTITIONING (HOW)
  • 22. © 2017 Pythian. Confidential 22 HASH PARTITIONING (HOW)
  • 23. © 2017 Pythian. Confidential 23 HASH PARTITIONING (HOW)
  • 24. © 2017 Pythian. Confidential 24 HASH PARTITIONING (HOW)
  • 25. © 2017 Pythian. Confidential 25 HASH PARTITIONING (HOW)
  • 26. © 2017 Pythian. Confidential 26 HASH PARTITIONING (HOW)
  • 27. © 2017 Pythian. Confidential 27 HASH PARTITIONING (HOW)
  • 28. © 2017 Pythian. Confidential 28 HASH PARTITIONING (HOW)
  • 29. © 2017 Pythian. Confidential 29 HASH PARTITIONING (HOW)
  • 30. © 2017 Pythian. Confidential 30 HASH PARTITIONING (HOW)
  • 31. © 2017 Pythian. Confidential 31 HASH PARTITIONING (HOW)
  • 32. © 2017 Pythian. Confidential 32 INTERVAL PARTITIONING (HOW)
  • 33. © 2017 Pythian. Confidential 33 INTERVAL PARTITIONING (HOW)
  • 34. © 2017 Pythian. Confidential 34 INTERVAL PARTITIONING (HOW)
  • 35. © 2017 Pythian. Confidential 35 INTERVAL PARTITIONING (HOW)
  • 36. © 2017 Pythian. Confidential 36 INTERVAL PARTITIONING (HOW)
  • 37. © 2017 Pythian. Confidential 37 THE EXECUTION PLAN
  • 38. © 2017 Pythian. Confidential 38 THE EXECUTION PLAN
  • 39. © 2017 Pythian. Confidential 39 THE EXECUTION PLAN
  • 40. © 2017 Pythian. Confidential 40 THE EXECUTION PLAN
  • 41. © 2017 Pythian. Confidential 41 THE EXECUTION PLAN
  • 42. © 2017 Pythian. Confidential 42 THE EXECUTION PLAN
  • 43. © 2017 Pythian. Confidential 43 THE EXECUTION PLAN
  • 44. © 2017 Pythian. Confidential 44 THE EXECUTION PLAN
  • 45. © 2017 Pythian. Confidential 45 THE EXECUTION PLAN
  • 46. © 2017 Pythian. Confidential 46 THE EXECUTION PLAN
  • 47. © 2017 Pythian. Confidential 47 THE EXECUTION PLAN
  • 48. © 2017 Pythian. Confidential 48 THE EXECUTION PLAN
  • 49. © 2017 Pythian. Confidential 49 THE EXECUTION PLAN
  • 50. © 2017 Pythian. Confidential 50 THE EXECUTION PLAN
  • 51. © 2017 Pythian. Confidential 51 PARTITIONING MAINTENANCE OPERATIONS online
  • 52. © 2017 Pythian. Confidential 52 PARTITIONING MAINTENANCE OPERATIONS
  • 53. © 2017 Pythian. Confidential 53 PARTITIONING MAINTENANCE OPERATIONS online
  • 54. © 2017 Pythian. Confidential 54 CONCLUSION ● Range Partitioning, Hash Partitioning, List Partitioning, Interval Partitioning ● 12cR2 onwards can perform most partitioning operations online ● Performance problems in read or write operations can get better or worse with partitioning, so plan well ● New releases -> New features, it's been like that for years. ● Questions?
  • 55. © The Pythian Group Inc., 2018 55 Stay in touch! ● E-mail: franky@loredata.com.br or faust@pythian.com ● Blog: http://loredata.com.br/blog ● Facebook: https://facebook.com/08Franky.Weber ● Instagram: https://www.instagram.com/frankyweber/ ● Twitter: https://twitter.com/frankyweber ● LinkedIn: https://linkedin.com/in/frankyweber/en ● Oracle ACE: https://bit.ly/2YxU6bK
  • 56. © The Pythian Group Inc., 2018 5656© The Pythian Group Inc., 2018