SQL Mystery I Anatomie eines SQL Befehls Lothar Flatz Senior Principal Consultant

Ähnliche Dokumente
Hardware versus Brainware

SQL Optimizer und SQL Performance

IT-Symposium

Abteilung Internationales CampusCenter

Prediction Market, 28th July 2012 Information and Instructions. Prognosemärkte Lehrstuhl für Betriebswirtschaftslehre insbes.

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

DIE NEUORGANISATION IM BEREICH DES SGB II AUSWIRKUNGEN AUF DIE ZUSAMMENARBEIT VON BUND LNDERN UND KOMMUNEN

NVR Mobile Viewer for iphone/ipad/ipod Touch

Die Datenmanipulationssprache SQL

Tuning des Weblogic /Oracle Fusion Middleware 11g. Jan-Peter Timmermann Principal Consultant PITSS

Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

EXPERT SURVEY OF THE NEWS MEDIA

p^db=`oj===pìééçêíáåñçêã~íáçå=

J RG IMMENDORFF STANDORT F R KRITIK MALEREI UND INSPIRATION ERSCHEINT ZUR AUSSTELLUNG IM MUSEUM LU

Titelbild1 ANSYS. Customer Portal LogIn

How to access licensed products from providers who are already operating productively in. General Information Shibboleth login...

NoSQL mit Postgres 15. Juni 2015

ReadMe zur Installation der BRICKware for Windows, Version ReadMe on Installing BRICKware for Windows, Version 6.1.2

Einkommensaufbau mit FFI:

Art der Info: Technische Background Info Teil 2 (April 2002)

STRATEGISCHES BETEILIGUNGSCONTROLLING BEI KOMMUNALEN UNTERNEHMEN DER FFENTLICHE ZWECK ALS RICHTSCHNUR FR EIN ZIELGERICHTETE

Englisch Klasse 8 - Name:

Critical Chain and Scrum

HUMANGENETIK IN DER WELT VON HEUTE: 12 SALZBURGER VORLESUNGEN (GERMAN EDITION) BY FRIEDRICH VOGEL

1. General information Login Home Current applications... 3

Aber genau deshalb möchte ich Ihre Aufmehrsamkeit darauf lenken und Sie dazu animieren, der Eventualität durch geeignete Gegenmaßnahmen zu begegnen.

Der SAS DataStep und die Prozedur SQL Cellent Finance Solutions GmbH Seite: 1

German Geography Cookie Unit Haley Crittenden Gordon German Teacher Lee High School & Key Middle School (adapted from Angelika Becker)

ONLINE LICENCE GENERATOR

Geometrie und Bedeutung: Kap 5

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Supplier Status Report (SSR)

Getting started with MillPlus IT V530 Winshape

-Which word (lines 47-52) does tell us that Renia s host brother is a pleasant person?

Urs Meier Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung

Mitglied der Leibniz-Gemeinschaft

Informeller Brief Schreiben

Transaktionen in der Praxis. Dr. Karsten Tolle

p^db=`oj===pìééçêíáåñçêã~íáçå=

job and career at CeBIT 2015

ALL1681 Wireless g Powerline Router Quick Installation Guide

Europe Job Bank Schülerumfrage. Projektpartner. Euro-Schulen Halle

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

6KRSSLQJDW&DPGHQ/RFN 1LYHDX$

Parameter-Updatesoftware PF-12 Plus

Tip: Fill in only fields marked with *. Tipp: Nur Felder ausfüllen, die mit einem * markiert sind.

Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation

Cameraserver mini. commissioning. Ihre Vision ist unsere Aufgabe

2 German sentence: write your English translation before looking at p. 3

ROOMS AND SUITES A place for dreaming. ZIMMER UND SUITEN Ein Platz zum Träumen

XONTRO Newsletter. Financial Institutes. No. 70

After sales product list After Sales Geräteliste

Testsequenz "Cloud-User Unmount volume" (ID 243) Testprotokoll. Testsequenz Projekt > System Test > Cloud-User Unmount volume (ID 243)

MySQL Queries on "Nmap Results"

job and career at HANNOVER MESSE 2015

PCIe, DDR4, VNAND Effizienz beginnt im Server

SELF-STUDY DIARY (or Lerntagebuch) GER102

Manuelles Oracle SQL-Tuning

Datenbanken und Oracle, Teil 2

Rough copy for the art project >hardware/software< of the imbenge-dreamhouse artist Nele Ströbel.

job and career for women 2015

Algorithms for graph visualization

Symbio system requirements. Version 5.1

ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel

Einführung in die Robotik Einführung. Mohamed Oubbati Institut für Neuroinformatik. Tel.: (+49) 731 / mohamed.oubbati@uni-ulm.de

Selbstlernmodul bearbeitet von: begonnen: Inhaltsverzeichnis:

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und combit GmbH Untere Laube Konstanz

MySQL Performance Tuning für Entwickler

AEZ Yacht & Yacht SUV highgloss high gloss. DOTZ MUGELLO schwarz glänzend / hornpoliert black / polished

ROOT Tutorial für D. Liko

Oracle Exadata Storage Server Performance erklärt SmartScan

If you have any issue logging in, please Contact us Haben Sie Probleme bei der Anmeldung, kontaktieren Sie uns bitte 1

LITTLE RED RIDING HOOD AND THE WOLF

Supplier Questionnaire

Was haben Viehweiden mit Software zu tun?

Customer-specific software for autonomous driving and driver assistance (ADAS)

Indexing und Performance Tuning

DOWNLOAD. Englisch in Bewegung. Spiele für den Englischunterricht. Britta Buschmann. Downloadauszug aus dem Originaltitel:

Simulation of a Battery Electric Vehicle

Open Source. Legal Dos, Don ts and Maybes. openlaws Open Source Workshop 26 June 2015, Federal Chancellery Vienna

Mash-Up Personal Learning Environments. Dr. Hendrik Drachsler

ELBA2 ILIAS TOOLS AS SINGLE APPLICATIONS

Klausur Verteilte Systeme

Top Tipp. Ref DE. Verwenden externer Dateiinhalte in Disclaimern. (sowie: Verwenden von Images in RTF Disclaimern)

USB Treiber updaten unter Windows 7/Vista

HiOPC Hirschmann Netzmanagement. Anforderungsformular für eine Lizenz. Order form for a license

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Vertretungsstunde Englisch 6. Klasse: Grammatik

GRIPS - GIS basiertes Risikoanalyse-, Informations- und Planungssystem

Exercise (Part VIII) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Login data for HAW Mailer, Emil und Helios

Inequality Utilitarian and Capabilities Perspectives (and what they may imply for public health)

Franke & Bornberg award AachenMünchener private annuity insurance schemes top grades

Object Relational Mapping Layer

FSSL Steinbauer/ /Information_FSSL_GOINDUSTRY.doc

Mehr Ergebnisse: Linguistische Funktionen und Ähnlichkeitssuche mit SQL. Carsten Czarski ORACLE Deutschland B.V. & Co KG München

Objektorientierte Datenbanken

Invitation to the International Anglers Meeting 2015 Silo Canal/Brandenburg

Thema: Sonnenuhren (7.Jahrgangsstufe)

Transkript:

Software & Informatik SQL Mystery I Anatomie eines SQL Befehls Lothar Flatz Senior Principal Consultant

Ich stelle mich vor... Wer bin ich? über 25 Jahre Oracle Database Erfahrung (beginnend mit Version 5) 15 jahre Oracle Mitarbeiter Oak Table Mitglied Ex-Real World Performance Group Oracle ACE Signatur Project: PVSS (CERN) Patent US 8103658 B2 zusammen mit Björn Engsig

Gründung 1994 Rechtsform Standorte Angestellte Aktiengesellschaft in privater Hand Baar ZG und Oberdorf SO 10 Mitarbeitende Zertifizierung SQS Zertifiziertes Managementsystem ISO 9001 Software Beschaffung, Lizenz Management, Software Paketierung, Beratung, Enterprise Reporting

Anatomie eines SQL Befehls Arbeit an Performance Problemen

Typische Anfrage auf OTN We just migrated to a new dev environment in Linux REDHAT5, and now the query is very slow. I checked toad monitor, it said need to increase db_buffer_cache and shared pool too small.

Typical Antwort If you want more help here, let's start with some DATA. Without this, people here can only guess at the actual cause of your problem, although if enough of us guess for a long enough time, somebody will undoubtedly find the right answer eventually. Senior DBA, Calagry

Reaktion des IT Management

Motivation für Sherlock Holmes In which the hero would treat crime as Dr Bell treated disease and where science would take the place of chance. Dr. Joseph Bell, Das reale Vorbild für Sherlock Holmes (Arthur Conan Doyle)

Realer Fall: Hilferuf eines Kunden Das I/O Subsystem ist überlastet Oracle Partner hat das Problem schon untersucht Es wurde kein Fortschritt erzielt

Realer Fall: Junior Berater Was normalerweise nicht schaden kann: 1. SGA Speicher erhöhen 2. Statistiken aktualisieren

Realer Fall: Senior Berater Ein einziger Befehl verursacht die Misere: SELECT Wir müssen den Applikationshersteller fragen, was sich verändert hat. Die SGA erhöhen und die Statistiken aktuallisieren hat Nichts gebracht.

Was soll der erste Schritt sein? Francis Bacon, Philosoph and Scientist Man, being the servant and interpreter of nature, can do and understand so much and so much only as he has observed in fact or in thought of the course of nature.

Was soll der erste Schritt sein? It is a capital mistake to theorize before you have all the evidence. It biases the judgment. Sherlock Holmes Quote -A Study in Scarlet

Messe! ---------------------------------------------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers Reads ---------------------------------------------------------------------------------------------------------------------------------- 0 SELECT STATEMENT 1 12342 00:00:17.85 306K 237K 1 SORT ORDER BY 1 771 12342 00:00:17.85 306K 237K 2 SORT UNIQUE 1 771 12342 00:00:17.72 306K 237K 3 UNION-ALL 1 19469 00:00:17.68 306K 237K * 4 HASH JOIN 1 297 1038 00:00:00.91 25441 78 * 5 HASH JOIN 1 298 1038 00:00:00.69 24558 78 * 6 TABLE ACCESS BY INDEX ROWID MEDI_B 1 298 40557 00:00:00.59 24033 78 * 7 INDEX RANGE SCAN I2 1 5356 40557 00:00:00.16 105 78 * 8 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 721 00:00:00.01 525 0 * 9 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 10 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.07 883 0 * 11 HASH JOIN 1 474 18431 00:00:16.73 280K 237K * 12 HASH JOIN 1 475 18431 00:00:16.58 279K 237K * 13 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 721 00:00:00.01 525 0 * 14 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 * 15 HASH JOIN 1 7202 957K 00:00:16.23 279K 237K * 16 TABLE ACCESS FULL MEDI_A 1 7161 957K 00:00:12.78 237K 237K * 17 TABLE ACCESS FULL MEDI_B 1 598K 598K 00:00:01.99 41476 0 18 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.04 883 0 ----------------------------------------------------------------------------------------------------------------------------------

Richtlinien Kann der Befehl optimiert werden? Was ist der Kern des Problems? Was verursacht das Problem? Wie kann das Problem gelöst werden?

Kann der Befehl optimiert werden? Martin Berg, Oak Table Member, Tuning Queries by Eliminating Throwaway Internet whitepaper Most badly performing queries usually exhibits a high amount of rows processed and then thrown away because they were not needed in the output.

Kann der Befehl optimiert werden? ---------------------------------------------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers Reads ---------------------------------------------------------------------------------------------------------------------------------- 12342 0 SELECT STATEMENT 1 12342 00:00:17.85 306K 237K 1 SORT ORDER BY 1 771 12342 12342 00:00:17.85 306K 237K 2 SORT UNIQUE 1 771 12342 19469 00:00:17.72 306K 237K 3 UNION-ALL 1 19469 00:00:17.68 306K 237K * 4 HASH JOIN 1 297 1038 1038 00:00:00.91 25441 78 * 5 HASH JOIN 1 298 1038 00:00:00.69 24558 78 * 6 TABLE ACCESS BY INDEX ROWID MEDI_B 1 298 405571038 00:00:00.59 24033 78 * 7 INDEX RANGE SCAN I2 1 5356 40557 00:00:00.16 105 78 * 8 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 721 40557 00:00:00.01 525 0 * 9 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 10 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.07 40557 883 0 * 11 HASH JOIN 1 474 18431 00:00:16.73 721 280K 237K * 12 HASH JOIN 1 475 18431 00:00:16.58 279K 237K * 13 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 721 00:00:00.01 721 525 0 * 14 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 * 15 HASH JOIN 1 7202 957K 00:00:16.23 279K 279K 237K * 16 TABLE ACCESS FULL MEDI_A 1 7161 957K 00:00:12.78 237K 237K * 17 TABLE ACCESS FULL MEDI_B 1 598K 598K 00:00:01.99 18431 41476 0 18 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.04 883 0 ---------------------------------------------------------------------------------------------------------------------------------- 18431 --------- A-Rows ---------- 12342 721 721 957K 957K 598K 279K ----------

Was ist der Kern des Problems? Dr. Wolfgang Breitling, Oak Table Member, Tuning with Cardinality Feedback, 2006 Hotsos Symposium Whenever the CBO chooses a bad plan it can be traced back to an error in the estimation of the cardinality of one or more row sources.

Was ist der Kern des Problems? ---------------------------------------------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers Reads ---------------------------------------------------------------------------------------------------------------------------------- 0 SELECT STATEMENT 1 12342 00:00:17.85 306K 237K 1 SORT ORDER BY 1 771 12342 00:00:17.85 306K 237K 2 SORT UNIQUE 1 771 12342 00:00:17.72 306K 237K 3 UNION-ALL 1 19469 00:00:17.68 306K 237K * 4 HASH JOIN 1 297 1038 00:00:00.91 25441 78 * 5 HASH JOIN 1 298 1038 00:00:00.69 24558 78 * 6 TABLE ACCESS BY INDEX ROWID MEDI_B 1 298 40557 00:00:00.59 24033 78 * 7 INDEX RANGE SCAN I2 1 5356 40557 00:00:00.16 105 78 -------------------------------- * 8 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 721 00:00:00.01 525 0 * 9 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 10 INDEX FAST FULL SCAN E-Rows MEDI_C A-Rows 1 279K A-Time 279K 00:00:00.07 883 0 * 11 HASH JOIN 1 474 18431 00:00:16.73 280K 237K * 12 HASH JOIN 1 475 18431 00:00:16.58 279K 237K * 13 TABLE ACCESS BY -------------------------------- INDEX ROWID MEDI_C 1 2309 721 00:00:00.01 525 0 * 14 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 * 15 HASH JOIN 1 7202 957K 00:00:16.23 279K 237K * 16 TABLE ACCESS FULL 7161 MEDI_A 957K 00:00:12.78 1 7161 237K 237K * 17 TABLE ACCESS FULL MEDI_B 1 598K 598K 00:00:01.99 41476 0 18 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.04 883 0 ---------------------------------------------------------------------------------------------------------------------------------- --------------------------------

Was ist der Kern des Problems? Focus on the step that takes the most time. Cary Millsap, Oak Table Member, entrepreneur and Oracle software performance specialist

Was ist der Kern des Problems? 16 filter (CreationDate>:loaddate OR lastchangedate>:loaddate) AND TO_NUMBER(effective(id))=1

Was ist der Kern des Problems? Isoliere deine Variablen. Ein vitaler Gesichtspunkt bei der Durchführung eines Experiments ist es, nur die spezifische Variable, die du testest, anzupassen (und nicht die anderen Variablen). http://de.wikihow.com/ein-wissenschaftliches-experiment-durchführen

Was ist der Kern des Problems? 16 filter (CreationDate>:loaddate OR lastchangedate>:loaddate) AND TO_NUMBER(effective(id))=1

Was ist der Kern des Problems? Condition Estimate Real Error Factor CD & LUD 806,000 4,924,104 6 CD 403,000 4,784,580 12 LUD 426,000 4,924,104 12

Was ist der Kern des Problems? x + a n = n k=0 n k xk a n k Jonathan Lewis, Oak Table Member, Ordinary Genius and CBO Expert

Rows Anatomie eines SQL Befehls Was verursacht das Problem? 7,344,000? 12.11.09 Dates 03.01.14 31.03.14

Rows Anatomie eines SQL Befehls Was verursacht das Problem? 7,344,000 Annahme: kürzlicher Anstieg der Datenmenge 12.11.09 03.01.14 31.03.14

Wie kann das Problem gelöst werden? Christian Antognini, Senior Principal Consultant, Oak Table Member Before you apply tuning techniques make sure the initialization parameters are correctly set and all the necessary system and object statistics are in place.

Wie kann das Problem gelöst werden? exec dbms_stats.gather_schema_stats(user, estimate_percent=> 100, method_opt=> 'for all columns size skewonly')

Wie kann das Problem gelöst werden? ---------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers ---------------------------------------------------------------------------------------------- 0 SELECT STATEMENT 1 1 00:00:01.68 21984 1 SORT AGGREGATE 1 1 1 00:00:01.68 21984 * 2 INDEX FAST FULL SCAN MEDI_A_I01 1 6470K 4924K 00:00:01.26 21984 ---------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - filter(("last_update_date">:ladedatumzeit OR "CREATION_DATE">:LADEDATUMZEIT))

Was ist der Kern des Problems? Condition Estimate Real Error Factor TO_NUMBER(effective (id))=1 73,440 7,344,000 100

Was ist der Kern des Problems? FUNCTION effective (p_id IN VARCHAR2) RETURN VARCHAR2 IS BEGIN -- IF p_id = '0 -- OR p_id = current_id -- OR current_id = '0 -- THEN RETURN('1'); -- ELSE -- RETURN('0'); -- END IF; END;

Was verursacht das Problem? The default selectivity for a unknown functions is 1%. Joze Senegacnik, Oak Table Member

Wie kann das Problem gelöst werden? ASSOCIATE STATISTICS WITH FUNCTIONS effective DEFAULT SELECTIVITY 100;

Wie kann das Problem gelöst werden? The best execution plan usually starts with the best filter condition and minimizes reads to the largest tables. Dr. Daniel Tow, former head of Oracle Applications tuning was lecturing sql tuning at Stanford University, USA. NoCoug Journal, September 2011

Wie kann das Problem gelöst werden? Dan Tow intuitiv erklärt: Wie das Wasser sich den kürzesten Weg von einem Berg sucht, indem es die tiefsten Punkte verbindet

Wie kann das Problem gelöst werden? The source of biggest throw away will often indicate the point of best selectivity Lothar Flatz, Oak Table Member

Wie kann das Problem gelöst werden? ---------------------------------------------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers Reads ---------------------------------------------------------------------------------------------------------------------------------- 12342 0 SELECT STATEMENT 1 12342 00:00:17.85 306K 237K 1 SORT ORDER BY 1 771 12342 00:00:17.85 306K 237K 2 SORT UNIQUE 1 771 12342 00:00:17.72 306K 237K 3 UNION-ALL 1 19469 00:00:17.68 306K 237K * 4 HASH JOIN 1 297 00:00:00.91 25441 78 * 5 HASH JOIN 1 298 1038 00:00:00.69 24558 78 * 6 TABLE ACCESS BY INDEX ROWID MEDI_B 1 298 40557 00:00:00.59 24033 78 * 7 INDEX RANGE SCAN I2 1 5356 1038 40557 00:00:00.16 105 78 * 8 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 40557 721 00:00:00.01 525 0 * 9 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 10 INDEX FAST FULL SCAN I3 1 279K 40557 279K 00:00:00.07 883 0 * 11 HASH JOIN 1 474 18431 00:00:16.73 280K 237K * 12 HASH JOIN 1 475 721 18431 00:00:16.58 279K 237K * 13 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 00:00:00.01 525 0 * 14 INDEX RANGE SCAN I1 1 2317 721 00:00:00.01 5 0 * 15 HASH JOIN 1 7202 957K 00:00:16.23 279K 237K * 16 TABLE ACCESS FULL MEDI_A 1 7161 279K 957K 00:00:12.78 237K 237K * 17 TABLE ACCESS FULL MEDI_B 1 598K 18431 598K 00:00:01.99 41476 0 18 INDEX FAST FULL SCAN I3 1 279K 279K 00:00:00.04 883 0 ---------------------------------------------------------------------------------------------------------------------------------- --------- A-Rows ---------- 12342 18431 721 721 957K 957K 598K 279K ----------

End Resultat mit Hints --------------------------------------------------------------------------------------------------------------------------- Id Operation Name Starts E-Rows A-Rows A-Time Buffers --------------------------------------------------------------------------------------------------------------------------- 0 SELECT STATEMENT 1 2618 00:00:03.68 51765 1 SORT ORDER BY 1 2814 2618 00:00:03.68 51765 2 SORT UNIQUE 1 2814 2618 00:00:03.66 51765 3 UNION-ALL 1 70207 00:00:03.45 51765 * 4 HASH JOIN 1 297 0 00:00:00.01 544 * 5 HASH JOIN 1 297 0 00:00:00.01 544 * 6 TABLE ACCESS BY INDEX ROWID MEDI_B 1 297 73 00:00:00.01 26 * 7 INDEX RANGE SCAN I2_X 1 5352 73 00:00:00.01 3 * 8 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 712 00:00:00.01 518 * 9 INDEX RANGE SCAN I1 1 2318 712 00:00:00.01 5 10 INDEX FAST FULL SCAN I3 0 278K 0 00:00:00.01 0 11 CONCATENATION 1 70207 00:00:02.95 51221 12 NESTED LOOPS 1 1228 0 00:00:00.39 23200 13 NESTED LOOPS 1 1230 0 00:00:00.39 23200 14 NESTED LOOPS 1 2500 7915 00:00:00.19 7481 * 15 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 712 00:00:00.01 518 * 16 INDEX RANGE SCAN I1 1 2318 712 00:00:00.01 5 17 TABLE ACCESS BY INDEX ROWID MEDI_B 712 1 7915 00:00:00.15 6963 * 18 INDEX RANGE SCAN I2_X 712 1 7915 00:00:00.08 1570 19 TABLE ACCESS BY INDEX ROWID MEDI_A 7915 1 0 00:00:00.17 15719 * 20 INDEX RANGE SCAN i4_x 7915 1 0 00:00:00.07 15719 * 21 INDEX UNIQUE SCAN I3 0 1 0 00:00:00.01 0 22 NESTED LOOPS 1 1488 70207 00:00:02.38 28021 23 NESTED LOOPS 1 1491 70207 00:00:01.55 27339 24 NESTED LOOPS 1 2500 7915 00:00:00.18 7626 * 25 TABLE ACCESS BY INDEX ROWID MEDI_C 1 2309 712 00:00:00.01 518 * 26 INDEX RANGE SCAN I1 1 2318 712 00:00:00.01 5 27 TABLE ACCESS BY INDEX ROWID MEDI_B 712 1 7915 00:00:00.14 7108 * 28 INDEX RANGE SCAN I2_X 712 1 7915 00:00:00.07 1715 * 29 TABLE ACCESS BY INDEX ROWID MEDI_A 7915 1 70207 00:00:01.14 19713 * 30 INDEX RANGE SCAN I4_X 7915 1 70207 00:00:00.60 15976 * 31 INDEX UNIQUE SCAN I3 70207 1 70207 00:00:00.36 682 ---------------------------------------------------------------------------------------------------------------------------

Ergebnis Database überlädt das I/O sub system => logical reads reduziert um Faktor > 50 => physical reads reduziert auf beinahe Null: Mission abgeschlossen (?)

Ruessenstrasse 12 6340 Baar ZG (Switzerland) Phone: +41 (0)41 511 44 00 Direct: +41 (0)78 626 43 31 Fax: +41 (0)41 511 44 07 mailto:lothar.flatz@bbi.ch http://www.bbi.ch