O szkoleniu
Szkolenie w przejrzysty i szeroki sposób prezentuje zagadnienia pozwalające na zrozumienie wewnętrznych mechanizmów zachodzących podczas wykonywania poleceń SQL i programów PL/SQL, na monitorowanie i diagnozowanie problemów wydajnościowych oraz implementowanie rozwiązań. Umożliwia efektywne zarządzanie procesem optymalizacji poleceń SQL i programów PL/SQL.
Szkolenie jest przeznaczone dla doświadczonych programistów i administratorów bazy danych, którzy spotykają się na co dzień z problemami wydajnościowymi zarówno w określonych poleceniach SQL jak i całych procesach zaimplementowanych po stronie bazy danych Oracle.
OCZEKIWANE PRZYGOTOWANIE SŁUCHACZY
Swobodne posługiwanie się językiem SQL i PL/SQL. Doświadczenie praktyczne w pracy z Oracle lub innym silnikiem relacyjnej bazy danych.
Program szkolenia
- Metodologia strojenia aplikacji
- Odnalezienie problemu
- Diagnozowanie przyczyny
- Aplikowanie rozwiązania
- Architektura bazy danych i instancji
- Podstawowe informacje o plikach i procesach serwera
- Struktury pamięci (SGA, PGA)
- Proces parsowania i współdzielenia kursorów
- Analiza planu wykonania polecenia
- Sposoby pozyskiwania hipotetycznego i rzeczywistego planu zapytania (EXPLAIN PLAN, DBMS_XPLAN, SQLPlus Autotrace)
- Oznaczanie kolejności kroków algorytmu
- Interpretacja zawartości drzewa planu
- Plany adaptywne
- Proces optymalizacji kosztowej i sterowanie praca optymalizatora kosztowego
- Właściwości optymalizacji kosztowej i regułowej
- Parametry sesji i instancji
- Podpowiedzi (hinty)
- Wzorce planów zapytań (outlines)
- Zarządzanie planami zapytań (baselines)
- Statystyki i histogramy
- Wpływ statystyk i histogramów na wydajność
- Sposoby zbierania statystyk i histogramów
- Strategie zliczania i estymacji statystyk, próbkowanie ad hoc
- Zarządzanie statystykami: blokowanie, kopiowanie, edycja, automatyzacja zbierania, monitorowanie zmian
- Statystyki wielokolumnowe, oparte na wyrażeniach
- Statystyki systemowe i słownikowe
- Statystyki adaptywne
- Logiczna i fizyczna struktura bazy
- Przestrzenie tabel
- Segmenty
- Rozszerzenia
- Bloki
- Optymalizacja pełnego odczytu poprzez prawidłową gospodarkę miejscem
- Kiedy stosować pełny odczyt
- Alokacja przestrzeni w bloku i segmencie, wskaźnik wysokiej wody, PCTFREE
- Wpływ operacji DML oraz sposobu alokacji przestrzeni na wydajność odczytów
- Ładowanie danych ścieżką konwencjonalną i bezpośrednią
- Reorganizacja fizyczna danych, obcinanie, defragmentacja, przebudowa
- Optymalizacja pełnego odczytu poprzez fizyczne wydzielenie gorących danych
- Tablice tymczasowe
- Partycjonowanie
- Widoki zmaterializowane
- Optymalizacja pełnego odczytu poprzez kompresję danych
- Kompresja OLTP
- Kompresja OLAP
- Optymalizacja odczytu poprzez indeks
- Pojęcie ROWID
- Budowa 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 zakładania i usuwanie indeksów
- Indeks dobry i zły, wpływ entropii fizycznego rozmieszczenia danych na koszty użycia indeksu
- Właściwości i statystyki indeksów
- Rodzaje odczytów: UNIQUE, RANGE, SKIP, FULL, FAST FULL, MIN/MAX
- Rodzaje indeksów: unikalne, funkcyjne, wielokolumnowe, z odwróconym kluczem, lokalne/globalne, wirtualne, niewidzialne
- Wartości NULL w indeksach
- Tablice zorganizowane indeksowo (IOT)
- Indeksy bitmapowe i złączeniowe
- Optymalizacja procesu sortowania
- Sortowanie pamięciowe
- Sortowania indeksowe
- Sortowania lingwistyczne
- Optymalizacja złączeń i podzapytań
- Metody łączenia: MERGE, HASH, NESTED LOOP
- Złączenia w systemach OLTP i OLAP
- Złączenia gwiazdowe
- Kolejność łączeń
- Złączenia zewnętrzne
- Monitorowanie wydajności i znajdowanie wąskich gardeł procesu
- Śledzenie sesji bazodanowej/procesu
- Śledzenie sesji aplikacyjnej/użytkownika w modelu dzierżawy połączenia do bazy danych
- Narzędzie TkProf, TrcSess
- Wydajność kodu PL/SQL
- Używanie wartości literalnych w poleceniach SQL
- Zasady współdzielenia kursorów
- Używanie wartości literalnych w poleceniach SQL
- Kursory adaptywne
- Prawidłowy sposób komunikacji SQL <=> PL/SQL
- Kursory a operacje masowe
- Prefetch
- For update
- Funkcje własne w SQL
- Lokalne
- Buforowanie wyników funkcji
- Determinizm a wydajność
- Przekazywanie parametrów przez kopię/wskaźnik
- Wtapianie krótkich procedur na etapie kompilacji
- Zarządzanie kompilatorem
- Poziomy optymalizacji kompilatora
- Natywna kompilacja
- Inne aspekty optymalizacji PL/SQL
- Dodatek A - Profilowanie kodu PL/SQL
Czas trwania
Terminy i miejsca
To szkolenie nie ma aktualnych terminów. Wyślij zapytanie o nowe terminy bądź zapisz na powiadomienia o nowych terminach.
Rejestracja
- udział w zajęciach
- materiały szkoleniowe
- certyfikat uczestnictwa
Wydarzenie nieaktualne. Wypełnij formularz, aby zapytać o nowe terminy.
Najczęściej zadawane pytania
Prosimy o wypełnienie formularza zgłoszenia dostępnego na górze strony. Po jego otrzymaniu skontaktujemy się, aby potwierdzić zgłoszenie i przekazać wszystkie informacje organizacyjne.
- Nazwa firmy: Altkom Akademia S.A.
- Ulica i nr: ul. Chłodna 51
- Kod pocztowy: 00-867
- Miejscowość: Warszawa
- Numer NIP: 1880008391