1 PVSS Oracle scalability Target = 150 000 changes per second (tested with 160k) 3 000 changes per client 5 nodes RAC 10.2.0.4 2 NAS 3040, each with one.

Slides:



Advertisements
Similar presentations
Tuning a Very Large Data Warehouse Pichai Bala. About Me Working in the IT industry for the past 17 years Working in Oracle since Working in Data.
Advertisements

Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Overview of performance tuning strategies Oracle Performance Tuning Allan Young June 2008.
Adam Jorgensen Pragmatic Works Performance Optimization in SQL Server Analysis Services 2008.
new database engine component fully integrated into SQL Server 2014 optimized for OLTP workloads accessing memory resident data achive improvements.
IO Waits Kyle Hailey #.2 Copyright 2006 Kyle Hailey Waits Covered in this Section  db file sequential read  db file scattered.
Enqueue Waits : Locks. #.2 Copyright 2006 Kyle Hailey Wait Tree - Locks Waits Disk I/O Library Cache Enqueue Undo TX 6 Row Lock TX 4 ITL Lock HW Lock.
Enqueue Waits : Locks. #.2 Copyright 2006 Kyle Hailey Locks REDO Lib Cache Buffer Cache IO Locks Network.
Buffer Cache Waits. #.2 Copyright 2006 Kyle Hailey Buffer Cache Waits Waits Disk I/O Buffer Busy Library Cache Enqueue SQL*Net Free Buffer Hot Blocks.
Acknowledgments Byron Bush, Scott S. Hilpert and Lee, JeongKyu
INTRODUCTION TO ORACLE Lynnwood Brown System Managers LLC Performance And Tuning – Lecture 7 Copyright System Managers LLC 2007 all rights reserved.
Harvard University Oracle Database Administration Session 2 System Level.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © 2006 GridCOMP Grids Programming with components. An.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 11 Database Performance Tuning and Query Optimization.
Waits Defined Kyle Hailey #.2 Copyright 2006 Kyle Hailey Top 36 Foreground Waits write complete waits library cache.
1 Copyright © 2009, Oracle. All rights reserved. Exploring the Oracle Database Architecture.
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 11 Database Performance Tuning and Query Optimization.
CERN - IT Department CH-1211 Genève 23 Switzerland t The High Performance Archiver for the LHC Experiments Manuel Gonzalez Berges CERN, Geneva.
Chapter Oracle Server An Oracle Server consists of an Oracle database (stored data, control and log files.) The Server will support SQL to define.
Oracle on Windows Server Introduction to Oracle10g on Microsoft Windows Server.
1 Robert Wijnbelt Health Check your Database A Performance Tuning Methodology.
Part II : Waits Events Kyle Hailey
Improving Efficiency of I/O Bound Systems More Memory, Better Caching Newer and Faster Disk Drives Set Object Access (SETOBJACC) Reorganize (RGZPFM) w/
Oracle Tuning Considerations. Agenda Why Tune ? Why Tune ? Ways to Improve Performance Ways to Improve Performance Hardware Hardware Software Software.
Copyright  Oracle Corporation, All rights reserved. 1 Oracle Architectural Components.
Oracle Tuning Ashok Kapur Hawkeye Technology, Inc.
1 Chapter 14 DML Tuning. 2 DML Performance Fundamentals DML Performance is affected by: – Efficiency of WHERE clause – Amount of index maintenance – Referential.
DBI313. MetricOLTPDWLog Read/Write mixMostly reads, smaller # of rows at a time Scan intensive, large portions of data at a time, bulk loading Mostly.
Oracle9i Performance Tuning Chapter 12 Tuning Tools.
15 Copyright © 2006, Oracle. All rights reserved. Performance Tuning: Summary.
Achieving Scalability, Performance and Availability on Linux with Oracle 9iR2-RAC Grant McAlister Senior Database Engineer Amazon.com Paper
1 06/05/08 Statspack Kyle Hailey
LFC Replication Tests LCG 3D Workshop Barbara Martelli.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
What is a Package? A package is an Oracle object, which holds other objects within it. Objects commonly held within a package are procedures, functions,
D Copyright © Oracle Corporation, All rights reserved. Loading Data into a Database.
08-Nov Database TEG workshop, Nov 2011 ATLAS Oracle database applications and plans for use of the Oracle 11g enhancements Gancho Dimitrov.
Troubleshooting SQL Server Performance: Tips &Tools Amit Khandelwal.
3 Copyright © 2006, Oracle. All rights reserved. Statistics and Wait Events.
#.1 Average Active Sessions (AAS) The Golden Metric ? Kyle Hailey
Database Performance Eric Grancher - Nilo Segura Oracle Support Team IT/DES.
Scalable data access with Impala Zbigniew Baranowski Maciej Grzybek Daniel Lanza Garcia Kacper Surdy.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
RAC aware change In order to reduce the cluster contention, a new scheme for the insertion has been developed. In the new scheme: - each “client” receives.
External Sorting. Why Sort? A classic problem in computer science! Data requested in sorted order –e.g., find students in increasing gpa order Sorting.
SQL*Net & Other Waits. #.2 Copyright 2006 Kyle Hailey SQL*Net Waits Session Shadow Log Buffer Buffer Cache Log Buffer Buffer Cache SGA Library Cache Host.
Best Practices in Loading Large Datasets Asanka Padmakumara (BSc,MCTS) SQL Server Sri Lanka User Group Meeting Oct 2013.
Eric Grancher, Maaike Limper, CERN IT department Oracle at CERN Database technologies Image courtesy of Forschungszentrum.
Considerations for database servers Castor review – June 2006 Eric Grancher, Nilo Segura Chinchilla IT-DES.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1.
Troubleshooting Dennis Shasha and Philippe Bonnet, 2013.
SQL Advanced Monitoring Using DMV, Extended Events and Service Broker Javier Villegas – DBA | MCP | MCTS.
CERN IT Department CH-1211 Genève 23 Switzerland t Load testing & benchmarks on Oracle RAC Romain Basset – IT PSS DP.
Oracle Database Architectural Components
Performance Tuning Methodology Approach to Attacking Oracle Performance Problems.
The PVSS Oracle Archiver FW WG 6 th July Credits Many people involved IT/DES: Eric Grancher, Nilo Segura, Chris Lambert IT/PSS: Luca Canali ALICE:
Chapter 21 SGA Architecture and Wait Event Summarized & Presented by Yeon JongHeum IDS Lab., Seoul National University.
DB Tuning Ch 14. Parallel Processing Ch 15. Performance of DML Ch 16. Analytic Function Jaeseok Myung Intelligent Database Systems Lab School of Computer.
SQL Trace and TKPROF.
Operating System.
Oracle at CERN Database technologies
Case studies – Atlas and PVSS Oracle archiver
Data Lifecycle Review and Outlook
Predictive Performance
Oracle Memory Internals
Oracle Architectural Components
Index Index.
External Sorting.
Performance And Scalability In Oracle9i And SQL Server 2000
Presentation transcript:

1 PVSS Oracle scalability Target = changes per second (tested with 160k) changes per client 5 nodes RAC NAS 3040, each with one aggregate of 13 disks (10k rpm FC)

2 PVSS Tuning (1/6) Shared resource: EVENTS_HISTORY (ELEMENT_ID, VALUE…) Each client “measures” input and registers history with a “merge” operation in the EVENTS_HISTORY table Performance: 100 “changes” per second Table events_ history trigger on update eventlast … merge (…) 150 ClientsDB ServersStorage Update eventlastval set … Table event lastval

3 PVSS Tuning (2/6) Initial state observation: database is waiting on the clients “SQL*Net message from client” Use of a generic library C++/DB Individual insert (one statement per entry) Update of a table which keeps “latest state” through a trigger

UKOUG Conference PVSS Tuning (3/6) Changes: bulk insert to a temporary table with OCCI, then call PL/SQL to load data into history table Performance: 2000 changes per second Now top event: “db file sequential read” EventWaitsTime(s)Percent Total DB TimeWait Class db file sequential read29, User I/O enq: TX - contention Other CPU time log file parallel write1, System I/O db file parallel write3, System I/O awrrpt_1_5489_5490.htm l

5 PVSS Tuning (4/6) Changes: Index usage analysis and reduction Table structure changes. IOT. Replacement of merge by insert. Use of “direct path load” with ETL Performance: “changes” per second Now top event: cluster related wait event test5_rac_node1_8709_8710.html EventWaitsTime(s)Avg Wait(ms) % Total Call Time Wait Class gc buffer busy27, Cluster CPU time gc current block busy6, Cluster gc current grant busy24, Cluster gc current block 2- way 118, Cluster

UKOUG Conference PVSS Tuning (5/6) Changes: Each “client” receives a unique number. Partitioned table. Use of “direct path load” to the partition with ETL Performance: changes per second Now top event : “freezes” once upon a while rate75000_awrrpt_2_872_873.html EventWaitsTime(s) Avg Wait(ms) % Total Call TimeWait Class row cache lock Concurrency gc current multi block request7, Cluster CPU time log file parallel write1, System I/O undo segment extension785, Configuration

7 PVSS Tuning (6/6) Problem investigation: Link between foreground process and ASM processes Difficult to interpret ASH report, trace Problem identification: ASM space allocation is blocking some operations Changes: Space pre-allocation, background task. Result: Stable “changes” per second.

8 PVSS Tuning Schema 150 ClientsDB ServersStorage Table events_ history PL/SQL: insert /*+ APPEND */ into eventh (…) partition PARTITION (1) select … from temp Temp table Table events_ history trigger on update eventlast … merge (…) Table event lastval Update eventlastval set … Bulk insert into temp table

9 PVSS Tuning Summary Conclusion: from 100 changes per second to “changes” per second 6 nodes RAC (dual CPU, 4GB RAM), 32 disks SATA with FCP link to host 4 months effort: – Re-writing of part of the application with changes interface (C++ code) –Changes of the database code (PL/SQL) –Schema change –Numerous work sessions, joint work with other CERN IT groups

10 The Tuning Process 1. run the workload, gather ASH/AWR information, 10046… 2. find the top event that slows down the processing 3. understand why time is spent on this event 4. modify client code, database schema, database code, hardware configuration

11 Demo Single.java –Tanel Poder’s snapper.sql –Disable autocommit –Tanel Poder’s snapper.sql Batch.java

12 ProgramTime per rowTop wait eventNotable statistics Single0.76 ms / rowlog file sync 57.1% User commits=user calls=1.4k/s Single autocommit=false 0.31 ms/rowSQL*Net message from client 69.9% Requests to/from client = execute count= 3.69k/s Batch mslog file sync 18.4%, SQL*Net message from client 19.0% * 2.45 * 267

13 The Tuning Process 1. run the workload, gather ASH/AWR information, 10046… 2. find the top event that slows down the processing 3. understand why time is spent on this event 4. modify client code, database schema, database code, hardware configuration