SQL Performance Analyzer Inschatten performance impact van wijzigingen Bram van der Vos

Slides:



Advertisements
Verwante presentaties
Versiebeheer Repository Invantive Producer Afstudeerstage Wouter Vos 1.
Advertisements

Applicatieplatform congres 12 & 13 maart
Hoe SQL injection werkt
Datawarehousing in het groot
Deel XIV Eerste echte e-commerce applicatie Implementatie (vervolg) 1 Internetapplicaties Deel 14: Eerste echte e-commerce applicatie: Implementatie (vervolg)
PHP & MYSQL LES 03 PHP & DATABASES. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
LauwersCollege Buitenpost Informatica
Michel Visser Founder EesySoft
Hoofdstuk 6: Controle structuren
Relationele databases: Fysiek databaseontwerp en SQL
Download en installeer de gereedschappen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam
Databases I (H. 1) Wiebren de Jonge Vrije Universiteit, Amsterdam Voorlopige versie 2003.
Workshop PHP Een productencatalogus Met database.
Implementing Cross-Language Text Retrieval Systems for Large-scale text Collections and the World Wide Web n Mark W. Davis and William C.Ogden n AAAI 1997.
Databases.
MICROCONTROLLERS.
Cursus performance tuning voor ontwikkelaars 26 januari 2006 “De beste manier om een query te verbeteren, is door hem niet uit te voeren.”
1 Okt 4, 2005 Oracle en XML. 2 Okt 4, 2005 xml in database Datatype XMLTYPE  hét xml datatype in de database CLOB, varchar2... Opslag XMLType (Object)tabel.
Risk Based Testing van pakketsoftware
SQL ( SERVER ) Les #02: T-SQL. A GENDA Herhaling les 4 Views SELECT…INTO Beheren van tabellen: CREATE ALTER DROP Opdracht voor de volgende les.
Computervaardigheden Hoofdstuk 4 — Databank (Basis)
Vakgroep Telecommunicatie en Informatieverwerking 1 Toegangsmogelijkheden voor applicaties Hoofdstuk 8 Database, Document and Content Management.
Join Indices … as a tool for Spatial Datamining. Inhoud Inleiding Spatial Relations (Spatial) Join Index Implementatie Conclusie.
Vakgroep Telecommunicatie en Informatieverwerking 1 Relationele databases: Het relationeel databasemodel Hoofdstuk 4 Database, Document and Content Management.
De Transmeta Crusoe processor Een VLIW CPU met x86 compatibiliteit.
Row & Column Level Access Peter Rurenga OGh presentatie Martiris
1 July SQL Les July Agenda Herhaling Herhaling Stored Procedures Stored Procedures Oefeningen Oefeningen User Defined Functions User.
Hoofdstuk 11 Databasemanagementsystem. hoofdstuk 112 STROKENDIAGRAMMEN llnrvoornaamtussenvachternaamstraathuisnummerpostcodeplaatstelefoongeslachtgebdatumklas.
2 August SQL Les August Agenda Herhaling Herhaling Cursors Cursors MS SQL Server and MS Excel MS SQL Server and MS Excel Oefeningen.
Les 0 Structured Query Language SQL. Programma Les 0 – Introductieopdracht Les 1 Les 2 Les 3 Schriftelijke toets.
Analyse 3 INFANL01-3 week 3 CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Week 6 BIMAIV03 les B1. DML en DDL ata D anipulation M anguage L ata D efinition D anguage L.
ANALYSE 3 INFANL01-3 WEEK 6 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Subqueries met correlaties ▸ Subqueries zonder correlaties ▸ Views ▸
1 KPN Mobiel – Introductie Repository Object Browser & Designer 10 Designer 10g & Repository Object Browser Maandag 28 februari 2005 Lucas Jellema (AMIS)
Welkom. Inspirerende omgeving Ruim 30 vooraanstaande bedrijven op het gebied van duurzame energie presenteren zich aan u in het Dubo Trade Centre. Uiteenlopende,
Wat is SQL (1)? SQL (Structured Query Language):  is een zeer krachtige taal met een beperkt vocabulaire (aantal ‘woorden’)  is declaratief (‘WAT’ niet.
April 20, 2015 FEWS Lunchlezing Delft-FEWS Database Analyse Marc van Dijk.
LPI 1.05 Marcel Nijenhof. Agenda ● Customize and use the shell environment ● Customize or write simple scripts ● SQL data management.
DBS22 - Recap PL/SQL Wilrik R1_4.44
Databases.
Software Development fundamentals
SQL Cursus deel
Performance Tuning SSIS packages
Genomic Selection in Dairy Cattle
LauwersCollege Buitenpost Informatica
Moving objects in a geo-DBMS
ASP.NET MVC Web Development
Moving objects in a geo-DBMS
Informatie-analyse 1: Er zijn veel manieren om een database te vullen
Databases.
Moving objects in a geo-DBMS
PowerPoint Taal Bijeenkomst 7: Evalueren op schoolniveau
Software Development fundamentals
SQL Les February 2019.
SQL Les February 2019.
ASP.NET MVC Web Development
SQL Les 3 17 February 2019.
SQL Les 7 24 February 2019.
SQL Les 1 5 April 2019.
SQL Les 6 14 April 2019.
SQL Les 9 12 May 2019.
SQL Les May 2019.
Software Development fundamentals
Chapter 1: Introduction
Transcript van de presentatie:

SQL Performance Analyzer Inschatten performance impact van wijzigingen Bram van der Vos

Agenda ● Probleem Situatie ● SQL Performance Analyzer ● Architectuur ● Stappen ● keuzes ● Demo

Praktisch Probleem ● Voorgestelde wijzigingen – initialisatie parameters ● Groei van de data/veranderde statistieken ● Upgrade ● Schemawijzigingen – Indexen – Materialized views – … ● Wijziging Hardware

Real Application Testing ● SQL Performance Analyzer (SPA) ● Database Replay ● Test Data Management/Data Masking

Database Replay

SQL Performance Analyzer ● SQL Performance Analyzer ● Geautomatiseerd ● Impact op statement niveau ● Performance divergentie ● EM of PL/SQL SQL+binds

Workflow:SQL Performance Analyzer Wijzigingen Initiële Meting Bepaal workload Na Meting Vergelijk Review

Vragen vooraf ● Welk SQL neem je mee ● Welke omgeving(en) gebruik je – Productie – Speciale test – Anders... ● Impact analyseren ● Alleen analyse of ook fixen

● De SQL data bevat: ● SQL statement ● Executieomgeving ● Binds ● Parse schema ● Aantal executies van SQL statement Bepaal workload:SQL Tuning Set Select col,..... From table … Where And Select col,..... From table … Where And Select col,..... From table … Where And Select col,..... From table … Where And Select col,..... From table … Where And

Maken van een SQL Tuning Set Create STS DBMS_SQLTUNE.CREATE_SQLSET Modify STS Load STS DBMS_SQLTUNE.LOAD_SQLSET ● Shared Pool ● AWR ● STS ● SQL Trace

Hoe kom ik aan de statistieken ● Test execute ieder SQL statement ● Explain plan ● Converteer SQL tuning set SQL Trial

● Uitvoeren – Geen volgorde & concurrency – Updates alleen select deel – Geen DDL – Elk statement 2 – 10X – Geen parallel DML ● Tijdslimit op evaluatie ● Resource en tijd intensief Methode Test execute

● Explain plan for – incl binds ● Minder overhead ● Minder kwaliteit Methode Explain plan

● Statistiek van SQL Tuning Set naar SQL trial ● Hier betrouwbaar zijn de SQL Tuning Set Statistieken Methode SQL Tuning Set

● Waar breng je ze aan ? Wijzigingen

Vergelijk o.b.v ● Elapsed time (Default) ● CPU time ● User I/O time ● Buffer gets ● Physical I/O ● Optimizer cost ● I/O interconnect bytes ● Combinatie Vergelijk de metingen

● Statement: – Verbeterd – Gelijk – Verslechterd ● Impact: – Statement Level – Workload level ● En dan ?? Rapporteer de analyze

DBMS_SQLPA – CREATE_ANALYSIS_TASK – EXECUTE_ANALYSIS_TASK (2x) – REPORT_ANALYSIS_TASK SPA de PL/SQL Interface

DBMS_SQLPA.CREATE_ANALYSIS_TASK( sqlset_name IN VARCHAR2, basic_filter IN VARCHAR2 := NULL, order_by IN VARCHAR2 := NULL, top_sql IN VARCHAR2 := NULL, task_name IN VARCHAR2 := NULL, description IN VARCHAR2 := NULL sqlset_owner IN VARCHAR2 := NULL) RETURN VARCHAR2;

DBMS_SQLPA.CREATE_ANALYSIS_TASK( sqlset_name IN VARCHAR2, basic_filter IN VARCHAR2 := NULL, order_by IN VARCHAR2 := NULL, top_sql IN VARCHAR2 := NULL, task_name IN VARCHAR2 := NULL, description IN VARCHAR2 := NULL sqlset_owner IN VARCHAR2 := NULL) RETURN VARCHAR2;

DBMS_SQLPA.EXECUTE_ANALYSIS_TASK( task_name IN VARCHAR2, execution_type IN VARCHAR2 execution_name IN VARCHAR2 execution_params IN dbms_advisor.argList execution_desc IN VARCHAR2 );

DBMS_SQLPA.REPORT_ANALYSIS_TASK( task_name IN VARCHAR2, type IN VARCHAR2, level IN VARCHAR2, section IN VARCHAR2, object_id IN NUMBER, top_sql IN NUMBER, execution_name IN VARCHAR2, task_owner IN VARCHAR2, order_by IN VARCHAR2) RETURN CLOB;

DEMO

● DBA_SQLSET ● DBA_SQLSET_STATEMENTS ● DBMS_SQLPA ● DBMS_SQLTUNE ● DBA_ADVISOR_* Relevantie Views & Packages

● SPA biedt mogelijkheid om veranderingen te evalueren op basis van SQL statistieken ● Slim gebruik van test-systemen ● Relatief eenvoudig ● Integratie met advisor framework ● Geavanceerde opties vereisen PL/SQL interface Samenvatting