Plan Szkolenia
Metodologia optymalizacji aplikacji
- Znajdowanie problemu
- Diagnozowanie przyczyny
- Zastosowanie rozwiązania
Architektura bazy danych i instancji
- Podstawowe informacje o plikach serwera i procesach
- Struktury pamięci (SGA, PGA)
- Proces analizowania i dzielenia kursorów
Analiza planu wykonywania poleceń
- Sposoby uzyskania hipotetycznego i rzeczywistego planu zapytania (EXPLAIN PLAN, DBMS_XPLAN, SQLPlus Autotrace)
- Oznaczanie kolejności kroków algorytmu
- Interpretacja zawartości drzewa planu
- Adaptacyjne plany
Proces optymalizacji kosztowej i kontrolowanie działania optymalizatora kosztowego
- Właściwości optymalizacji kosztowej i regułowej
- Parametry sesji i instancji
- Podpowiedzi (hints)
- Zasady planów zapytań (outlines)
- Zarządzanie planami zapytań (baselines, Profile, SQL Patch)
Statystyki i histogramy
- Wpływ statystyk i histogramów na wydajność
- Sposoby zbierania statystyk i histogramów
- Kalkulacja statystyk i strategie szacowania, próbkowanie ad hoc
- Zarządzanie statystykami: blokada, kopiowanie, edycja, automatyczne zbieranie, monitorowanie zmian
- Statystyki wielokolumnowe, oparte na wyrażeniach
- Statystyki systemowe i słownikowe
- Adaptacyjne statystyki
Logiczna i fizyczna struktura bazy danych
- Tabela przestrzeni (tablespaces)
- Segmenty
- Rozszerzenia
- Bloki
Optymalizacja pełnego odczytu poprzez właściwe zarządzanie przestrzenią
- Kiedy używać pełnego odczytu
- Przydzielanie przestrzeni bloków i segmentów, wskaźnik wody (high water indicator), PCTFREE
- Wpływ operacji DML i przydzielania przestrzeni na wydajność odczytu
- Ładowanie danych za pomocą konwencjonalnej i bezpośredniej ścieżki
- Fizyczna reorganizacja danych, obcinanie (truncation), defragmentacja, przebudowa
Optymalizacja pełnego odczytu poprzez fizyczną separację "gorących danych"
- Tymczasowe tabele
- Partycjonowanie
- Zmaterializowane widoki
Optymalizacja pełnego odczytu poprzez kompresję danych
- Kompresja OLTP
- Kompresja OLAP
Optymalizacja czytania za pomocą indeksu
- Pojęcie ROWID
- Budowanie indeksów BTREE
- Porównanie efektywności dostępu do danych poprzez indeksy BTREE i FULL SCAN
- Wpływ indeksów na operacje DML
- Strategie tworzenia i usuwania indeksów
- "Dobre" i "złe" indeksy, wpływ entropii fizycznej dystrybucji danych na koszty wykorzystania indeksu
- Właściwości indeksów i statystyki
- Rodzaje odczytów: UNIQUE, RANGE, SKIP, FULL, FAST FULL, MIN/MAX
- Rodzaje indeksów: unikalne, funkcyjne, wielokolumnowe, odwrócone kluczowe, lokalne/globalne, wirtualne, niewidoczne
- Wartości NULL w indeksach
- Tabele indeksowane (IOT)
- Indeksy bitmapowe i łączące
Optymalizacja procesu sortowania
- Sortowanie w pamięci
- Sortowanie za pomocą indeksów
- Linguistyczne sortowanie
Optymalizacja łączeń i podzapytań
- Metody łączenia: MERGE, HASH, NESTED LOOP
- Łączanie w systemach OLTP i OLAP
- Gwiazdowe łączenia (star joins)
- Kolejność łączenia
- Zewnętrzne łączenia
Monitorowanie wydajności i lokalizacja zatorów procesu
- v$sql…, dba_hist…
- Śledzenie sesji/procesów bazy danych
- Śledzenie sesji/aplikacji użytkownika w modelu wynajmu połączenia do bazy danych
- TkProf, narzędzie TrcSess
Wydajność PL/SQL
- Korzystanie z dosłownych wartości w SQL
-stwierdzenia dotyczące reguł dzielenia kursorów
-korzystanie z dosłownych wartości w SQL
-stwierdzenia dotyczące adaptacyjnych kursorów
- Poprawna komunikacja SQL <=> PL/SQL
-kursory i operacje masowe
-prefetch
-for update
- Funkcje wewnętrzne w SQL
-lokalne
-pakowanie wyników funkcji
-determinizm i efektywność
- Przekazywanie parametrów przez kopię/pokaźnik
- Optymalizacja krótkich procedur podczas kompilacji
- Zarządzanie kompilatorem
-poziomy optymalizacji kompilatora
-Budowanie natywne (Native build)
- Inne aspekty optymalizacji PL/SQL
Wymagania
Plynność w SQL i PL/SQL. Praktyczne doświadczenie w pracy z bazą danych Oracle lub innym silnikiem bazy danych relacyjnej.
Opinie uczestników (3)
Bardzo podobał mi się format szkolenia, praktyczny, bezpośrednio w SQL Developer.
Andreea - OPEN COURSE
Szkolenie - Oracle Database 19c PL and Advanced SQL
Przetłumaczone przez sztuczną inteligencję
Ćwiczenia zostały bardzo dobrze wytłumaczone.
Monica - DB Global Technology
Szkolenie - PL/SQL in Oracle 19c
Przetłumaczone przez sztuczną inteligencję
Pełny profesjonalizm wykładowcy + doskonale przygotowane przykłady