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

Sugerowane szkolenia przed szkoleniem
ORA_S2, ORA_P2

Wymagania

Plynność w SQL i PL/SQL. Praktyczne doświadczenie w pracy z bazą danych Oracle lub innym silnikiem bazy danych relacyjnej.

 28 godzin

Liczba uczestników


Cena za uczestnika

Opinie uczestników (3)

Propozycje terminów

Powiązane Kategorie