SlideShare uma empresa Scribd logo
1 de 28
Hybrid Columnar Compression
for Non-Exadata Databases
Peter Brink, Credit Suisse

Enkitec E4 conference, Dallas
13/14 August 2012
About me


  Peter Brink
   15 years experience in Data Warehouse projects within Financials
   13 years working with Oracle databases




Enkitec E4 conference, Dallas                                     Peter Brink
13/14 August 2012                                                     Page 2
Agenda
  Hybrid Columnar Compression without Exadata?
  HCC overview
  HCC proof of concept with ZFS appliance
      - Planning the PoC
      - Test cases and test results
  Get the most out of HCC
  Discussion




Enkitec E4 conference, Dallas                     Peter Brink
13/14 August 2012                                     Page 3
Hybrid Columnar Compression without Exadata?




Enkitec E4 conference, Dallas                   Peter Brink
13/14 August 2012                                   Page 4
Hybrid Columnar Compression without Exadata

 Oracle Press Release, 30th September 2011
  Oracle Announces Hybrid Columnar Compression Support for ZFS
       Storage Appliances and Pillar Axiom Storage Systems




Enkitec E4 conference, Dallas                                Peter Brink
13/14 August 2012                                                Page 5
Hybrid Columnar Compression without Exadata
  HCC compression is built into the 11g database,
      but only enabled when running on Oracle storage
      SQL> select table_name, compression, compress_for
        2    from dba_tables
        3   where table_name = 'T1_ARCHIVE_HIGH';
      TABLE_NAME                     COMPRESS COMPRESS_FOR
      ------------------------------ -------- ------------
      T1_ARCHIVE_HIGH                ENABLED ARCHIVE HIGH

      SQL> select c1 from t1_archive_high;
      select c1 from t1_archive_high
                     *
      ERROR at line 1:
      ORA-64307: hybrid columnar compression is only supported in tablespaces
      residing on Exadata storage


   see Jonathan Lewis’ trick on how to create (and keep) an HCC
   table
  dbms_compression (11.2.0.1)
   creates HCC compressed tables during estimation of compression
   ratios




Enkitec E4 conference, Dallas                                                   Peter Brink
13/14 August 2012                                                                   Page 6
Hybrid Columnar Compression overview

 Table Compression types
  Basic
                                                                      9i
       only available for bulk operations
  OLTP or Advanced Compression
                                                                      11g
       available for all operations
  Hybrid Columnar Compression
       query low
       query high                     } Warehouse compression
                                                                      X
       archive low
       archive high                   } Online archival compression
                                                                      12c




Enkitec E4 conference, Dallas                                          Peter Brink
13/14 August 2012                                                          Page 7
Hybrid Columnar Compression overview

 OLTP Compression
  dictionary compression, self-contained within single blocks
  tables with >255 columns are silently not compressed
  locking works the same as for uncompressed blocks




                           Initial inserts are   PCTFREE triggers   Further uncompressed   PCTFREE triggers
                             uncompressd           compression              inserts          compression




Enkitec E4 conference, Dallas                                                                                 Peter Brink
13/14 August 2012                                                                                                 Page 8
Hybrid Columnar Compression overview

  HCC compression only used for bulk operations
       conventional inserts and updates fall back to OLTP compression
          updates result in rows migrated to new blocks
  Tables are organised in Compression Units (CU)
           Logical structure spanning multiple blocks
           Organised by column during data load
           Columns are compressed individually




       Compression Unit, Database Concepts Guide


Enkitec E4 conference, Dallas                                           Peter Brink
13/14 August 2012                                                           Page 9
Hybrid Columnar Compression overview

 HCC compression types

   Type                         Description
   Query Low                    •   LZO compression algorithm
                                •   Optimised for speed rather than high compression ratio

   Query High                   •   ZLIB compression algorithm
   Archive Low                  •   ZLIB with higher compression level
                                •   Does not necessarily yield higher compression than
                                    Query High
   Archive High                 •   BZIP2 compression
                                •   Yields the highest compression ratio
                                •   Significant cpu overhead




Enkitec E4 conference, Dallas                                                                Peter Brink
13/14 August 2012                                                                              Page 10
Hybrid Columnar Compression overview

  create table T1 (col1 date, col1 number …)
       partition by             range col1(
          partition             P2009 … compress for archive high,
          partition             P2010 … compress for archive low,
          partition             P2011 … compress for query high,
          partition             P2012Q1 … compress for OLTP,
          partition             P2012Q2 … nocompress
       )
       different compression types can be used for partitions of a single
       table
  alter table T1 compress for query high;
   does not result in existing blocks getting compressed
  alter table T1 nocompress;
   will not decompress blocks in a table
  The table needs to be rebuilt to apply changed compression settings
       to existing data
Enkitec E4 conference, Dallas                                               Peter Brink
13/14 August 2012                                                             Page 11
Introducing the ZFS Storage Appliance

  Oracle Hardware
  Primarily a NAS Storage device
     it runs ZFS inside the device
     Also capable of providing Fibre Channel, iSCSI, etc
  Provides “full service” as NAS storage
     cloning
     Snapshots
     Data deduplication
  Options available from shelves to full racks
        3.3 TB to 1.7 PB of raw capacity


Enkitec E4 conference, Dallas                               Peter Brink
13/14 August 2012                                             Page 12
HCC proof of concept with ZFS storage appliance

 Pre-requirements for HCC compression with ZFS SA
  Database must be running on 11.2.0.3 + patch p13041324
  Database must use NFS datafiles (ideally dNFS)
  Standard requirements for performant NFS implementations
     10 GigE Networking
     Network adjacency (one hop between host and storage)
     Jumbo Frames throughput (MTU 9000)




Enkitec E4 conference, Dallas                                 Peter Brink
13/14 August 2012                                               Page 13
HCC proof of concept – Application Characteristics

  Risk application chosen for POC
        Hybrid between Data Warehouse and OLTP
  10 TB, 2 node RAC cluster used for data loading and reporting
  2.5 TB read-only, archive database

           uses OLTP compression
                                                        }
           subset of tables with data older than 6 month   not in scope
                                                              for POC


  Growth in data volumes driven by:
     business growth
     demand for more detailed analysis
     increased data granularity and risk factors
     more complex risk methodologies
Enkitec E4 conference, Dallas                                              Peter Brink
13/14 August 2012                                                            Page 14
HCC proof of concept – Application Characteristics

 Data loading
  More than 500 GB trade level detail data loaded every week
        -> detail data gets purged within a period of one to six weeks
  Aggregated into > 50 GB of final data
        -> final data is kept forever
  24 x 5.5 loading activity
  No direct path loads!




Enkitec E4 conference, Dallas                                            Peter Brink
13/14 August 2012                                                          Page 15
HCC proof of concept – Application Characteristics

 Reporting and Analysis
  Only aggregated data is used for reporting purposes
  Reporting activity counts for 80% of database workload
  80% of reports are generated for the last 2 COB dates
               data for last 2 COB dates will be in the buffer cache
  Data extracts rely on nested loop joins / index access!




Enkitec E4 conference, Dallas                                          Peter Brink
13/14 August 2012                                                        Page 16
HCC proof of concept – Compression Advisor

 DBMS_COMPRESSION.GET_COMPRESSION_RATIO
  Does not require Exadata storage, only needs a 11r2 database
  The advisor gets the ratio by compressing sample data. It will
        consume CPU and requires disk space
  Accuracy depends on how representative the sample set is
 Sample results:
   Compression type             Predicted Ratio   Ratio during POC
   Archive High                 17.1              16.7 – 27.5
   Archive Low                  13.5              12.9 – 20.8
   Query High                   10.9              10.7 – 17.8
   Query Low                    5.8               6.6 – 9.5


Enkitec E4 conference, Dallas                                        Peter Brink
13/14 August 2012                                                      Page 17
HCC proof of concept – DML performance

 DML Performance Impact
  Updates to compressed data will take longer and expand the space
        used
  Sample results (update primary key to a new value for all rows)
                                Size before   Size after (MB)   Elapsed time
                                (MB)                            (seconds)
   Uncompressed                 860           860               30
   HCC - Query Low              154           694               246


  Updates of a single row of a HCC table locks the Compression Unit
        containing the row

         Avoid updates of HCC compressed rows

Enkitec E4 conference, Dallas                                                  Peter Brink
13/14 August 2012                                                                Page 18
HCC proof of concept – Query Performance

  Positive impact when disk IO can be reduced or avoided
  Negative impact caused by cpu usage for decompression and
        additional logical IO when majority of blocks are cached
  Test result from a representative set of report queries:
                                               Elapsed Time CPU time IO Wait time
                                               (s)          (s)      (s)
   Uncached                     Uncompressed        24356      3542         20652
                                Query Low            5071      3726          1352
                                Query High           6681      5064           246
   Cached                       Uncompressed         2171      1711           372
                                Query Low            2593      2556            33
                                Query High           3515      3492            30

Enkitec E4 conference, Dallas                                                       Peter Brink
13/14 August 2012                                                                     Page 19
HCC proof of concept – Application Characteristics

 Disk space consumption:
  HCC will give no benefits on 34% space used for indexes
  Challenges adapting HCC for 44% of table space for trade level
        data
          less than 30% of total database size in scope




Enkitec E4 conference, Dallas                                       Peter Brink
13/14 August 2012                                                     Page 20
HCC proof of concept – Configuration

 Compression Matrix by data type
                                Compression             Size before   Size after (GB)
                                                        (GB)
   Trade level                  Uncompressed                  2037                 2037
   Aggregated                   Query High for                1512                  139
                                partitions older than
                                one week,
                                latest partitions are
                                uncompressed
   Static                       Uncompressed                   270                  270
   Audit data                   Rebuild with Query             745                      46
                                High, then set to
                                nocompress without
                                rebuild


Enkitec E4 conference, Dallas                                                                Peter Brink
13/14 August 2012                                                                              Page 21
HCC proof of concept – Application performance test

  Upgrade to 11.2.0.3 resulted in regressed performance for loading
       component. Setting optimizer_features_enable to 11.2.0.2 resolved
       this issue
  No further impact on data loads.
       Occasional updates to HCC rows resulted in rows migrating, but no
       noticeable performance impact and no locking issues
  Reporting application validated previous test results.
       Performance improvement for small percentage of reports retrieving
       HCC rows




Enkitec E4 conference, Dallas                                         Peter Brink
13/14 August 2012                                                       Page 22
Get the most out of HCC

 Design your application to take advantage of HCC
  Get your partitioning right
  Use bulk loads that can use HCC compression
      Avoid updates
      Minimize single row lookups
      In-memory-parallel execution
      Ensure you have sufficient CPU capacity




Enkitec E4 conference, Dallas                       Peter Brink
13/14 August 2012                                     Page 23
Get the most out of HCC

 Moving data from an Exadata to a non-Exadata platform
  Without ZFS or Pillar storage data in HCC format can not be used
       by non-Exadata database
  Using Oracle storage allows accessing HCC blocks when a failover
       / restore of an Exadata database to a non-Exadata platform occurs




Enkitec E4 conference, Dallas                                         Peter Brink
13/14 August 2012                                                       Page 24
Conclusion

  The Oracle ZFS Storage appliance offers genuine storage saving
       capabilities through the Hybrid Columnar Compression feature
  Actual storage savings depend on what objects can be compressed.
       For the application evaluated only a 20% reduction was achievable
  Natural fit for any Oracle database already using Oracle storage
  Being allowed to use HCC compression without a storage platform
       change would be appreciated




Enkitec E4 conference, Dallas                                         Peter Brink
13/14 August 2012                                                       Page 25
Bibliography

  Exadata Hybrid Columnar Compression – Leveraging it fully, Christo
       Kutrovsky, UK OUG 2011
  Expert Oracle Exadata, Kerry Osborne, Randy Johnson, Tanel
       Poder, Apress, 2011
  Oracle Scratchpad, Jonathan Lewis,
       http://jonathanlewis.wordpress.com/category/oracle/exadata/
  Exadata Hybrid Columnar Compression, Oracle
       http://www.oracle.com/technetwork/database/features/availability/31
       1358-132337.pdf
  oracle.com for documentation on HCC and the ZFS storage
       appliance



Enkitec E4 conference, Dallas                                          Peter Brink
13/14 August 2012                                                        Page 26
HCC for Non-Exadata Databases




                                Discussion




Enkitec E4 conference, Dallas                Peter Brink
13/14 August 2012                              Page 27
Thanks to Duncan Lawie, Credit Suisse, for his work on this.




                                Thank you for your attention.




 peter.brink@credit-suisse.com




Enkitec E4 conference, Dallas                                   Peter Brink
13/14 August 2012                                                 Page 28

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Clickhouse Capacity Planning for OLAP Workloads, Mik Kocikowski of CloudFlare
Clickhouse Capacity Planning for OLAP Workloads, Mik Kocikowski of CloudFlareClickhouse Capacity Planning for OLAP Workloads, Mik Kocikowski of CloudFlare
Clickhouse Capacity Planning for OLAP Workloads, Mik Kocikowski of CloudFlare
 
Db2
Db2Db2
Db2
 
ZFS appliance
ZFS applianceZFS appliance
ZFS appliance
 
How to Use EXAchk Effectively to Manage Exadata Environments
How to Use EXAchk Effectively to Manage Exadata EnvironmentsHow to Use EXAchk Effectively to Manage Exadata Environments
How to Use EXAchk Effectively to Manage Exadata Environments
 
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdfDeep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
 
Tso and ispf
Tso and ispfTso and ispf
Tso and ispf
 
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIESORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
 
IBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration BasicsIBM DB2 for z/OS Administration Basics
IBM DB2 for z/OS Administration Basics
 
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander ZaitsevClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
 
PostgreSQL + ZFS best practices
PostgreSQL + ZFS best practicesPostgreSQL + ZFS best practices
PostgreSQL + ZFS best practices
 
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
 
ClickHouse Query Performance Tips and Tricks, by Robert Hodges, Altinity CEO
ClickHouse Query Performance Tips and Tricks, by Robert Hodges, Altinity CEOClickHouse Query Performance Tips and Tricks, by Robert Hodges, Altinity CEO
ClickHouse Query Performance Tips and Tricks, by Robert Hodges, Altinity CEO
 
My SYSAUX tablespace is full, please
My SYSAUX tablespace is full, pleaseMy SYSAUX tablespace is full, please
My SYSAUX tablespace is full, please
 
Introduction of ISPF
Introduction of ISPFIntroduction of ISPF
Introduction of ISPF
 
MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較
 
All about Zookeeper and ClickHouse Keeper.pdf
All about Zookeeper and ClickHouse Keeper.pdfAll about Zookeeper and ClickHouse Keeper.pdf
All about Zookeeper and ClickHouse Keeper.pdf
 
db tech showcase 2019 D10 Oracle Database New Features
db tech showcase 2019 D10 Oracle Database New Featuresdb tech showcase 2019 D10 Oracle Database New Features
db tech showcase 2019 D10 Oracle Database New Features
 
DataGuard体験記
DataGuard体験記DataGuard体験記
DataGuard体験記
 
High Performance, High Reliability Data Loading on ClickHouse
High Performance, High Reliability Data Loading on ClickHouseHigh Performance, High Reliability Data Loading on ClickHouse
High Performance, High Reliability Data Loading on ClickHouse
 
Oracle AWR Data mining
Oracle AWR Data miningOracle AWR Data mining
Oracle AWR Data mining
 

Destaque

Xen server poc template
Xen server poc template Xen server poc template
Xen server poc template
wmosquera
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 

Destaque (14)

PoC Oracle Exadata - Retour d'expérience
PoC Oracle Exadata - Retour d'expériencePoC Oracle Exadata - Retour d'expérience
PoC Oracle Exadata - Retour d'expérience
 
Test Driving Big Data with a Proof of Concept
Test Driving Big Data with a Proof of ConceptTest Driving Big Data with a Proof of Concept
Test Driving Big Data with a Proof of Concept
 
Xen server poc template
Xen server poc template Xen server poc template
Xen server poc template
 
Automation testing in Agile project
Automation testing in Agile projectAutomation testing in Agile project
Automation testing in Agile project
 
Agados POC Report to Build/Rebuild for ERP PKG
Agados POC Report to Build/Rebuild for ERP PKG Agados POC Report to Build/Rebuild for ERP PKG
Agados POC Report to Build/Rebuild for ERP PKG
 
VMWare Lab For Training, Testing or Proof of Concept
VMWare Lab For Training, Testing or Proof of ConceptVMWare Lab For Training, Testing or Proof of Concept
VMWare Lab For Training, Testing or Proof of Concept
 
Agile & Scrum Training
Agile & Scrum TrainingAgile & Scrum Training
Agile & Scrum Training
 
Test planning
Test planningTest planning
Test planning
 
SAP Testing with SolMan and SAP Quality Center
SAP Testing with SolMan and SAP Quality CenterSAP Testing with SolMan and SAP Quality Center
SAP Testing with SolMan and SAP Quality Center
 
How to Build a Proof of Concept
How to Build a Proof of Concept How to Build a Proof of Concept
How to Build a Proof of Concept
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
 
Project Management Plan Template
Project Management Plan TemplateProject Management Plan Template
Project Management Plan Template
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
 

Semelhante a Hybrid Columnar Compression in a non-Exadata System

OOW09 EBS Tech Essentials
OOW09 EBS Tech EssentialsOOW09 EBS Tech Essentials
OOW09 EBS Tech Essentials
jucaab
 
Oracle 11g data warehouse introdution
Oracle 11g data warehouse introdutionOracle 11g data warehouse introdution
Oracle 11g data warehouse introdution
Aditya Trivedi
 
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
HostedbyConfluent
 
Storage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, WhiptailStorage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, Whiptail
Internet World
 

Semelhante a Hybrid Columnar Compression in a non-Exadata System (20)

IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
 
Machine Learning and Artificial Intelligence
Machine Learning and Artificial IntelligenceMachine Learning and Artificial Intelligence
Machine Learning and Artificial Intelligence
 
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
 
Ceph Day Berlin: Ceph on All Flash Storage - Breaking Performance Barriers
Ceph Day Berlin: Ceph on All Flash Storage - Breaking Performance BarriersCeph Day Berlin: Ceph on All Flash Storage - Breaking Performance Barriers
Ceph Day Berlin: Ceph on All Flash Storage - Breaking Performance Barriers
 
Frb Briefing Database
Frb Briefing DatabaseFrb Briefing Database
Frb Briefing Database
 
Comparing Dell Compellent network-attached storage to an industry-leading NAS...
Comparing Dell Compellent network-attached storage to an industry-leading NAS...Comparing Dell Compellent network-attached storage to an industry-leading NAS...
Comparing Dell Compellent network-attached storage to an industry-leading NAS...
 
OOW09 EBS Tech Essentials
OOW09 EBS Tech EssentialsOOW09 EBS Tech Essentials
OOW09 EBS Tech Essentials
 
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
 
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and ContributionsCeph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
 
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and ContributionsCeph on Intel: Intel Storage Components, Benchmarks, and Contributions
Ceph on Intel: Intel Storage Components, Benchmarks, and Contributions
 
Red hat Storage Day LA - Designing Ceph Clusters Using Intel-Based Hardware
Red hat Storage Day LA - Designing Ceph Clusters Using Intel-Based HardwareRed hat Storage Day LA - Designing Ceph Clusters Using Intel-Based Hardware
Red hat Storage Day LA - Designing Ceph Clusters Using Intel-Based Hardware
 
Emc isilon overview
Emc isilon overview Emc isilon overview
Emc isilon overview
 
Oracle 11g data warehouse introdution
Oracle 11g data warehouse introdutionOracle 11g data warehouse introdution
Oracle 11g data warehouse introdution
 
TUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data CenterTUT18972: Unleash the power of Ceph across the Data Center
TUT18972: Unleash the power of Ceph across the Data Center
 
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
Give Your Confluent Platform Superpowers! (Sandeep Togrika, Intel and Bert Ha...
 
Apache CarbonData:New high performance data format for faster data analysis
Apache CarbonData:New high performance data format for faster data analysisApache CarbonData:New high performance data format for faster data analysis
Apache CarbonData:New high performance data format for faster data analysis
 
A guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on KubernetesA guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on Kubernetes
 
Storage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, WhiptailStorage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, Whiptail
 
CLFS 2010
CLFS 2010CLFS 2010
CLFS 2010
 
optimizing_ceph_flash
optimizing_ceph_flashoptimizing_ceph_flash
optimizing_ceph_flash
 

Mais de Enkitec

Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture Performance
Enkitec
 
OGG Architecture Performance
OGG Architecture PerformanceOGG Architecture Performance
OGG Architecture Performance
Enkitec
 
APEX Security Primer
APEX Security PrimerAPEX Security Primer
APEX Security Primer
Enkitec
 
How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?
Enkitec
 
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Enkitec
 
Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)
Enkitec
 
Profiling the logwriter and database writer
Profiling the logwriter and database writerProfiling the logwriter and database writer
Profiling the logwriter and database writer
Enkitec
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014
Enkitec
 

Mais de Enkitec (20)

Using Angular JS in APEX
Using Angular JS in APEXUsing Angular JS in APEX
Using Angular JS in APEX
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014
 
Engineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service DemonstrationEngineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service Demonstration
 
Think Exa!
Think Exa!Think Exa!
Think Exa!
 
In Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry OsborneIn Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry Osborne
 
In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1
 
Mini Session - Using GDB for Profiling
Mini Session - Using GDB for ProfilingMini Session - Using GDB for Profiling
Mini Session - Using GDB for Profiling
 
Profiling Oracle with GDB
Profiling Oracle with GDBProfiling Oracle with GDB
Profiling Oracle with GDB
 
Oracle Performance Tools of the Trade
Oracle Performance Tools of the TradeOracle Performance Tools of the Trade
Oracle Performance Tools of the Trade
 
Oracle Performance Tuning Fundamentals
Oracle Performance Tuning FundamentalsOracle Performance Tuning Fundamentals
Oracle Performance Tuning Fundamentals
 
SQL Tuning Tools of the Trade
SQL Tuning Tools of the TradeSQL Tuning Tools of the Trade
SQL Tuning Tools of the Trade
 
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan StabilityUsing SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture Performance
 
OGG Architecture Performance
OGG Architecture PerformanceOGG Architecture Performance
OGG Architecture Performance
 
APEX Security Primer
APEX Security PrimerAPEX Security Primer
APEX Security Primer
 
How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?
 
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
 
Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)
 
Profiling the logwriter and database writer
Profiling the logwriter and database writerProfiling the logwriter and database writer
Profiling the logwriter and database writer
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Hybrid Columnar Compression in a non-Exadata System

  • 1. Hybrid Columnar Compression for Non-Exadata Databases Peter Brink, Credit Suisse Enkitec E4 conference, Dallas 13/14 August 2012
  • 2. About me Peter Brink  15 years experience in Data Warehouse projects within Financials  13 years working with Oracle databases Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 2
  • 3. Agenda  Hybrid Columnar Compression without Exadata?  HCC overview  HCC proof of concept with ZFS appliance - Planning the PoC - Test cases and test results  Get the most out of HCC  Discussion Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 3
  • 4. Hybrid Columnar Compression without Exadata? Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 4
  • 5. Hybrid Columnar Compression without Exadata Oracle Press Release, 30th September 2011  Oracle Announces Hybrid Columnar Compression Support for ZFS Storage Appliances and Pillar Axiom Storage Systems Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 5
  • 6. Hybrid Columnar Compression without Exadata  HCC compression is built into the 11g database, but only enabled when running on Oracle storage SQL> select table_name, compression, compress_for 2 from dba_tables 3 where table_name = 'T1_ARCHIVE_HIGH'; TABLE_NAME COMPRESS COMPRESS_FOR ------------------------------ -------- ------------ T1_ARCHIVE_HIGH ENABLED ARCHIVE HIGH SQL> select c1 from t1_archive_high; select c1 from t1_archive_high * ERROR at line 1: ORA-64307: hybrid columnar compression is only supported in tablespaces residing on Exadata storage see Jonathan Lewis’ trick on how to create (and keep) an HCC table  dbms_compression (11.2.0.1) creates HCC compressed tables during estimation of compression ratios Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 6
  • 7. Hybrid Columnar Compression overview Table Compression types  Basic 9i only available for bulk operations  OLTP or Advanced Compression 11g available for all operations  Hybrid Columnar Compression query low query high } Warehouse compression X archive low archive high } Online archival compression 12c Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 7
  • 8. Hybrid Columnar Compression overview OLTP Compression  dictionary compression, self-contained within single blocks  tables with >255 columns are silently not compressed  locking works the same as for uncompressed blocks Initial inserts are PCTFREE triggers Further uncompressed PCTFREE triggers uncompressd compression inserts compression Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 8
  • 9. Hybrid Columnar Compression overview  HCC compression only used for bulk operations conventional inserts and updates fall back to OLTP compression updates result in rows migrated to new blocks  Tables are organised in Compression Units (CU)  Logical structure spanning multiple blocks  Organised by column during data load  Columns are compressed individually Compression Unit, Database Concepts Guide Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 9
  • 10. Hybrid Columnar Compression overview HCC compression types Type Description Query Low • LZO compression algorithm • Optimised for speed rather than high compression ratio Query High • ZLIB compression algorithm Archive Low • ZLIB with higher compression level • Does not necessarily yield higher compression than Query High Archive High • BZIP2 compression • Yields the highest compression ratio • Significant cpu overhead Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 10
  • 11. Hybrid Columnar Compression overview  create table T1 (col1 date, col1 number …) partition by range col1( partition P2009 … compress for archive high, partition P2010 … compress for archive low, partition P2011 … compress for query high, partition P2012Q1 … compress for OLTP, partition P2012Q2 … nocompress ) different compression types can be used for partitions of a single table  alter table T1 compress for query high; does not result in existing blocks getting compressed  alter table T1 nocompress; will not decompress blocks in a table  The table needs to be rebuilt to apply changed compression settings to existing data Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 11
  • 12. Introducing the ZFS Storage Appliance  Oracle Hardware  Primarily a NAS Storage device  it runs ZFS inside the device  Also capable of providing Fibre Channel, iSCSI, etc  Provides “full service” as NAS storage  cloning  Snapshots  Data deduplication  Options available from shelves to full racks 3.3 TB to 1.7 PB of raw capacity Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 12
  • 13. HCC proof of concept with ZFS storage appliance Pre-requirements for HCC compression with ZFS SA  Database must be running on 11.2.0.3 + patch p13041324  Database must use NFS datafiles (ideally dNFS)  Standard requirements for performant NFS implementations  10 GigE Networking  Network adjacency (one hop between host and storage)  Jumbo Frames throughput (MTU 9000) Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 13
  • 14. HCC proof of concept – Application Characteristics  Risk application chosen for POC Hybrid between Data Warehouse and OLTP  10 TB, 2 node RAC cluster used for data loading and reporting  2.5 TB read-only, archive database  uses OLTP compression }  subset of tables with data older than 6 month not in scope for POC  Growth in data volumes driven by:  business growth  demand for more detailed analysis  increased data granularity and risk factors  more complex risk methodologies Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 14
  • 15. HCC proof of concept – Application Characteristics Data loading  More than 500 GB trade level detail data loaded every week -> detail data gets purged within a period of one to six weeks  Aggregated into > 50 GB of final data -> final data is kept forever  24 x 5.5 loading activity  No direct path loads! Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 15
  • 16. HCC proof of concept – Application Characteristics Reporting and Analysis  Only aggregated data is used for reporting purposes  Reporting activity counts for 80% of database workload  80% of reports are generated for the last 2 COB dates data for last 2 COB dates will be in the buffer cache  Data extracts rely on nested loop joins / index access! Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 16
  • 17. HCC proof of concept – Compression Advisor DBMS_COMPRESSION.GET_COMPRESSION_RATIO  Does not require Exadata storage, only needs a 11r2 database  The advisor gets the ratio by compressing sample data. It will consume CPU and requires disk space  Accuracy depends on how representative the sample set is Sample results: Compression type Predicted Ratio Ratio during POC Archive High 17.1 16.7 – 27.5 Archive Low 13.5 12.9 – 20.8 Query High 10.9 10.7 – 17.8 Query Low 5.8 6.6 – 9.5 Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 17
  • 18. HCC proof of concept – DML performance DML Performance Impact  Updates to compressed data will take longer and expand the space used  Sample results (update primary key to a new value for all rows) Size before Size after (MB) Elapsed time (MB) (seconds) Uncompressed 860 860 30 HCC - Query Low 154 694 246  Updates of a single row of a HCC table locks the Compression Unit containing the row Avoid updates of HCC compressed rows Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 18
  • 19. HCC proof of concept – Query Performance  Positive impact when disk IO can be reduced or avoided  Negative impact caused by cpu usage for decompression and additional logical IO when majority of blocks are cached  Test result from a representative set of report queries: Elapsed Time CPU time IO Wait time (s) (s) (s) Uncached Uncompressed 24356 3542 20652 Query Low 5071 3726 1352 Query High 6681 5064 246 Cached Uncompressed 2171 1711 372 Query Low 2593 2556 33 Query High 3515 3492 30 Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 19
  • 20. HCC proof of concept – Application Characteristics Disk space consumption:  HCC will give no benefits on 34% space used for indexes  Challenges adapting HCC for 44% of table space for trade level data less than 30% of total database size in scope Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 20
  • 21. HCC proof of concept – Configuration Compression Matrix by data type Compression Size before Size after (GB) (GB) Trade level Uncompressed 2037 2037 Aggregated Query High for 1512 139 partitions older than one week, latest partitions are uncompressed Static Uncompressed 270 270 Audit data Rebuild with Query 745 46 High, then set to nocompress without rebuild Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 21
  • 22. HCC proof of concept – Application performance test  Upgrade to 11.2.0.3 resulted in regressed performance for loading component. Setting optimizer_features_enable to 11.2.0.2 resolved this issue  No further impact on data loads. Occasional updates to HCC rows resulted in rows migrating, but no noticeable performance impact and no locking issues  Reporting application validated previous test results. Performance improvement for small percentage of reports retrieving HCC rows Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 22
  • 23. Get the most out of HCC Design your application to take advantage of HCC  Get your partitioning right  Use bulk loads that can use HCC compression  Avoid updates  Minimize single row lookups  In-memory-parallel execution  Ensure you have sufficient CPU capacity Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 23
  • 24. Get the most out of HCC Moving data from an Exadata to a non-Exadata platform  Without ZFS or Pillar storage data in HCC format can not be used by non-Exadata database  Using Oracle storage allows accessing HCC blocks when a failover / restore of an Exadata database to a non-Exadata platform occurs Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 24
  • 25. Conclusion  The Oracle ZFS Storage appliance offers genuine storage saving capabilities through the Hybrid Columnar Compression feature  Actual storage savings depend on what objects can be compressed. For the application evaluated only a 20% reduction was achievable  Natural fit for any Oracle database already using Oracle storage  Being allowed to use HCC compression without a storage platform change would be appreciated Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 25
  • 26. Bibliography  Exadata Hybrid Columnar Compression – Leveraging it fully, Christo Kutrovsky, UK OUG 2011  Expert Oracle Exadata, Kerry Osborne, Randy Johnson, Tanel Poder, Apress, 2011  Oracle Scratchpad, Jonathan Lewis, http://jonathanlewis.wordpress.com/category/oracle/exadata/  Exadata Hybrid Columnar Compression, Oracle http://www.oracle.com/technetwork/database/features/availability/31 1358-132337.pdf  oracle.com for documentation on HCC and the ZFS storage appliance Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 26
  • 27. HCC for Non-Exadata Databases Discussion Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 27
  • 28. Thanks to Duncan Lawie, Credit Suisse, for his work on this. Thank you for your attention. peter.brink@credit-suisse.com Enkitec E4 conference, Dallas Peter Brink 13/14 August 2012 Page 28