Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Oracle Statistiken im HORIZON-Umfeld

Ähnliche Präsentationen


Präsentation zum Thema: "Oracle Statistiken im HORIZON-Umfeld"—  Präsentation transkript:

1 Oracle Statistiken im HORIZON-Umfeld
Highway to Statistics Oracle Statistiken im HORIZON-Umfeld Lars Eisenblatt, Coniatos AG, Wolfgang Graf, FIDUCIA IT AG, ITB2DC| JBFOne 2009

2 Ziel dieses Vortrags Sie erfahren die Abläufe zum Optimieren eines SQL-Statements Sie lernen verschiedene Basis-Schritte eines Zugriffsplanes und deren spezifische Vor- und Nachteile kennen Sie erkennen, was notwendig ist, um SQL-Anweisungen mit optimalem Ressourcenverbrauch auszuführen Sie erfahren, warum für SOA durch den Betrieb neue Verfahren entwickelt werden

3 Agenda Funktionsweise der Oracle Cost Based Optimizers (CBO)
Oracle Tabellen-Statistiken Anpassung der Oracle Statistiken an HORIZON Fazit und Ausblick

4 Agenda Funktionsweise der Oracle Cost Based Optimizers (CBO)
Oracle Tabellen Statistiken Anpassung der Oracle Statistiken an HORIZON Fazit und Ausblick

5 vom SQL zum Ausführungsplan
Stored Outlines/ Profiles Cursor Sharing ja Ausführungsplan v$sql Stored Outlines/Profiles vorhanden und aktiviert? nein regelbasierter Optimizer (Obsolete) Literale ersetzen Wahl des Optimizers

6 TABLE ACCESS (BY ROWID)
SELECT * FROM messdaten WHERE rowid = :b1; OPERATION OPTION OBJECT_NAME SELECT STATMENT TABLE ACCESS BY ROWID A A

7 db_file_multiblock_read_count
TABLE ACCESS (FULL) SELECT count(*) FROM messdaten; OPERATION OPTION OBJECT_NAME SELECT STATMENT TABLE ACCESS FULL MESSDATEN db_file_multiblock_read_count

8 Ergebnis ist bereits sortiert!
INDEX (RANGE SCAN) SELECT * FROM messdaten WHERE id BETWEEN 20 AND 30 ORDER BY id; Plan SELECT STATEMENT INDEX RANGE SCAN messdaten_pk Ergebnis ist bereits sortiert! Logisch Physikalisch

9 Aber tolle Buffer Hit Ratio Nested Loop A B SELECT * FROM a, b
WHERE a.id = b.id Plan SELECT STATEMENT NESTED LOOP TABLE ACCESS FULL A TABLE ACCESS FULL B Aber tolle Buffer Hit Ratio

10 Hash Joins Plan ----------------------- SELECT STATEMENT HASH JOIN
TABLE ACCESS FULL A TABLE ACCESS FULL B Hash usw. usw. usw. ... A B Hauptspeicher

11 Optimizer Um einen optimalen Plan aus Operationen heraus zu bauen, benötigt der Cost Based Optimizer Informationen darüber, wie viele Rows in jedem Schritt erzeugt werden Die Anzahl der Rows entspricht etwa den Kosten für die Operation Der Optimizer wählt den Plan, der durch Kombination verschiedener Operationen die niedrigsten Kosten verursacht Die Schätzung erfolgt an Hand der zyklisch generierten, in der DB gespeicherten „Statistiken“ Min,max Werte Anzahl unterschiedlicher Werte (Number Distinct Value) Sortiertheit der Datenblöcke über einen Index (Clustering Factor) Unterstützt durch Annahmen aus dem physikalischen Layout, z. B. alle Partitionen etwa gleich groß Stimmen die Statistiken nicht, wird ein falscher Plan ausgewählt

12 Ausführungspläne & CBO
Ausführungsplan SQL /*+ HINTS */ USE_NL... FULL... INDEX... Objekt Statistiken OPTIMIZER_MAX_PERMUTATIONS OPTIMIZER_INDEX_COST_ADJ System Statistiken init.ora

13 Agenda Funktionsweise der Oracle Cost Based Optimizers (CBO)
Oracle Tabellen Statistiken Anpassung der Oracle Statistiken an HORIZON Fazit und Ausblick

14 ORACLE Tabellen Statistiken
BATCH B BATCH C BATCH A BATCH D ORACLE gather_stats() (Zeit)

15 SOA Tabellen Statistiken - pro Service
BATCH B POST PRE BATCH C BATCH A PRE BATCH D POST Batch unabh.Statistiksammlung (Zeit)

16 Agenda Funktionsweise der Oracle Cost Based Optimizers (CBO)
Oracle Tabellen Statistiken Anpassung der Oracle Statistiken an HORIZON Fazit und Ausblick

17 Tabellen Klassifizierung
technische Tabellen wie JBF00* ZVBAS_MESSAGE_ID_T01 KONTO_SPUMSATZ_A_T01 KONTO_SPPROTOKOLL_A_T01 PROD01_KONTO_* ZVBAS_LOBTABREF_T01 JoJo Tabellen täglich Auslagerung Dictionary Dyn. Sampling

18 Technische Lösung CRONACLE DAILY MONTHLY DICTIONARY ZVBAS

19 Technische Lösung Protokolltabelle Samplesize Zustand Dyn. Sampling
Global Stale Partition Stale Max Runtime Gruppenzuordnung Cronacle Gruppe Tabellenname DAILY ZVBAS_PAYMENTMSGFILE_T01 DAILY ZVBAS_SWAP_T01 DAILY KONTO_SPUMSATZ_T01 (StoredProc)

20 Agenda Funktionsweise der Oracle Cost Based Optimizers (CBO)
Oracle Tabellen Statistiken Anpassung der Oracle Statistiken an HORIZON Fazit und Ausblick

21 Resümee SOA Statistiken Zentrale Steuerung Dynamic Sampling Restart
Qualität

22 Automatische Laufzeitbegrenzung und -überwachung
Zukunft Automatische Laufzeitbegrenzung und -überwachung Reporting  DBMS Portal Berücksichtigung der Statistikanforderungen bereits im Datenmodell Einsatz außerhalb von HORIZON

23 Fragen? – Diskussion? Lars Eisenblatt coniatos AG Kreuzberger Ring Wiesbaden Wolfgang Graf FIDUCIA IT AG ITB2DC

24 Ihr IT-Partner Vielen Dank


Herunterladen ppt "Oracle Statistiken im HORIZON-Umfeld"

Ähnliche Präsentationen


Google-Anzeigen