Optymalizacja i tuning Oracle DBORACLE-OPT

  • tuning
  • hinty
  • indeksy
  • plany
  • statystyki

Dostępne na zamówienie dla grup.

Żaden termin nie pasuje? Zaproponuj własny termin szkolenia

Tryb zdalny: online na żywo z trenerem i grupą. Zobacz więcej o kursach zdalnych i zakł. "Terminy".
Można: zrezygnować do 15 dni przed startem; w każdej chwili przejść z trybu "na sali" na zdalny.
Dostępne na zamówienie, w terminie i lokalizacji do uzgodnienia, dla grup od 4 osób.

cena netto
dla podmiotów publicznych - zwolnione z VAT

Cena szkolenia: 2190 PLN

poczęstunek w cenie

stanowisko komputerowe w cenie

first minute (30+ dni do startu) - 3%

Kategorie: Bazy danych, SQL, Oracle

Wydajność baz danych to jedno z najistotniejszych kryteriów, po którym w praktyce ocenia się ich działanie. Z punktu widzenia użytkownika najważniejszy jest czas oczekiwania na wyniki zadanego zapytania, jednak na wydajność baz danych składa się wiele dodatkowych czynników, takich jak obciążenie procesora, dysków i pamięci, możliwość jednoczesnego korzystania z bazy przez wielu klientów i wykonywania różnych operacji w tym samym czasie.
Tradycyjnie kwestie wydajności są utożsamiane z hasłem „optymalizacja / strojenie / tuning zapytań”. Jednak nowoczesne podejście do zarządzania wydajnością baz danych koncentruje się na odpowiednim zaprojektowaniu i utrzymaniu samej bazy. Przechowując dane we właściwy sposób i przygotowując takie elementy, jak klucze, indeksy, a czasami bardziej zaawansowane rozwiązania, m.in. partycjonowanie czy tabele IOT, umożliwiamy serwerowi baz danych automatyczną optymalizację zapytań.
Są wszakże sytuacje, gdy bezpośrednia ingerencja w wykonanie zapytania poprzez jego odpowiedni zapis lub dodatkowe wskazówki (hints) może być właściwa. Możemy na przykład mieć do czynienia z bazą o nieoptymalnej strukturze, do której nie mamy wszelkich potrzebnych uprawnień.
To szkolenie kompleksowo przedstawia mechanizmy wpływające na wydajność serwera baz Oracle. Gdy je zrozumiesz, będziesz wiedzieć, co oznaczają poszczególne oznaczenia w planie zapytania i co robi serwer podczas wykonywania zapytań. Na tym szkoleniu dowiesz się, jak należy przygotowywać bazy danych tak, aby działały możliwie wydajnie, oraz jak poprawiać wydajność istniejących baz (za pomocą indeksów i nie tylko). Dowiesz się wreszcie, jak bezpośrednio wpływać na przebieg wykonania zapytania, jak monitorować wydajność oraz jak zachować się w pewnych specyficznych, nawet jednorazowych, sytuacjach, jak migracja dużej porcji danych. W swojej pracy wykorzystasz od razu zapewne tylko część poznanych tutaj praktyk – tę, która akurat odpowiada problemom, z którymi się mierzysz. Szkolenie ma jednak charakter kompleksowy, ponieważ w różnych momentach pracy z bazami danych wymagane są różne działania – chcemy przedstawić Ci je wszystkie.
Pragniemy podkreślić, że szkolenie nie ogranicza się do przedstawienia teorii, ale omawiane kwestie ilustrowane są przykładami i ćwiczeniami, dzięki czemu uczestnicy mają szansę na żywo zobaczyć jak poszczególne techniki i wybory wpływają na szybkość działania baz danych.

Czas trwania

3 dni

Program

  1. Wprowadzenie
    • Zasada działania serwera baz danych
    • Przebieg wykonania zapytania
    • Czynniki wpływające na wydajność
    • Różne spojrzenia na kwestie poprawiania wydajności:
      • Optymalizacja bazy vs optymalizacja zapytań
      • Rola sprzętu i architektury fizycznej
      • Czy „strojenie wydajnościowe” ma jeszcze sens? W jakich sytuacjach?
    • Plan zapytania – jak go uzyskać (wersja tekstowa i graficzna), jak go czytać?
    • Optymalizator zapytań i tryby jego działania
    • Monitorowanie obciążenia serwera
    • Narzędzia przydatne w ocenie wydajności, m.in. SQL Trace
  2. Zasady przygotowania bazy danych z myślą o wydajności
    • Struktura logiczna: podział na tabele, klucze główne i obce
    • Dobór właściwych typów dla kluczy i pozostałych kolumn; konsekwencje wyboru poszczególnych typów w Oracle:
      • Zajętość dysku
      • Czas dostępu
      • Szybkość porównywania
      • Możliwości użycia indeksów różnego typu
    • Obsługa specyficznych sytuacji:
      • Tabele słownikowe
      • Dane rzadkie (sparse data)
      • Duże dane tekstowe (CLOB) i binarne (BLOB)
  3. Indeksy
    • Ogólna zasada działania indeksów i ich rola w działaniu kwerend
    • Definiowanie indeksu podczas tworzenia bazy danych oraz gdy baza już istnieje i jest wypełniona danymi
    • Koszty tworzenia i utrzymywania indeksów; jak ocenić, czy indeks ma sens?
    • Rodzaje indeksów w Oracle, dobór rodzaju indeksu zwn sytuację:
      • Indeks typu B-tree: unikalny i nieunikalny
      • Indeks bitmapowy
      • Indeksy wielokolumnowe i dobre praktyki ich stosowania
      • Indeksy nakładane na wyrażenia („indeksy funkcyjne”)
    • Metody dostępu do danych:
      • Pełny dostęp do tabeli (FULL SCAN)
      • Wybiórczy dostęp do rekordów (BY ROWID)
      • Dostęp tylko do indeksu
    • Strategie dostępu do indeksu typu B-tree:
      • UNIQUE SCAN i RANGE SCAN
      • FULL SCAN i FAST FULL SCAN
      • SKIP SCAN i jego wpływ na myślenie o indeksach wielokolumnowych
  4. Techniki optymalizacji zapytań
    • Podpowiedzi (hints) dotyczące wydajności w komentarzach
    • Unikanie niepotrzebnego odczytu tabel (ograniczanie warunku do indeksu)
    • Właściwa kolejność łączenia i filtrowania tabel oraz kolejność warunków w WHERE
    • Realizacja złączeń przez Oracle; wybór automatyczny lub za pomocą hintów:
      • HASH
      • NL (nested loops)
      • MERGE
    • Podzapytania i klauzula WITH
    • Podzapytania skorelowane i ich wpływ na wydajność
    • Widoki zmaterializowane i ich wykorzystanie w celu podniesienia wydajności
      • Różne strategie aktualizacji
    • Tabele tymczasowe i ich wykorzystanie w celu unikania wielokrotnych obliczeń podczas sesji
    • Planowa redundancja w bazie danych
    • Przykłady złych praktyk; czego należy unikać
  5. Operacje modyfikacji danych (DML)
    • Wpływ operacji DML na wydajność bazy jako całości; zagrożenie blokadami i świadomość kompromisu między ilością operacji DML a szybkością odczytu
    • Wpływ indeksów na wydajność operacji DML
    • Techniki zwiększania wydajności masowych operacji DML, m.in.:
      • Tymczasowe wyłączanie indeksów i więzów integralności
      • Tymczasowe ograniczanie współbieżnego dostępu
      • Tymczasowe wyłączanie operacji administracyjnych (jak replikacja, backup, statystyki)
  6. Pielęgnacja działającej bazy danych
    • Wpływ statystyk na planowanie zapytań przez Oracle
    • Podgląd statystyk
    • Automatyczne i ręczne odświeżanie statystyk
    • Histogramy
  7. Fizyczna struktura bazy danych
    • Dobór sprzętu zwn rozmiar i obciążenie bazy
    • Definiowanie przestrzeni dyskowych na rzecz bazy Oracle
    • Podział danych między różne przestrzenie dyskowe
    • Partycjonowanie tabel i jego wpływ na wydajność; dobór strategii partycjonowania w zależności od potrzeb
      • Partycjonowanie zwn na zakres dat lub inny warunek logiczny (RANGE)
      • Partycjonowanie w oparciu o funkcję skrótu (HASH)
    • Tabele organizowane wokół indeksu (IOT)

Pobierz w wersji PDF

Training also available in English.

Przeznaczenie i wymagania

Szkolenie przeznaczone dla osób pracujących z bazami danych (administratorzy, programiści, analitycy, osoby z jakiegokolwiek innego powodu korzystające z SQL), które chcą poznać mechanizmy wpływające na wydajność działania baz danych Oracle i wykorzystać tę wiedzę w praktyce poprzez odpowiednią konfigurację swoich baz danych i odpowiednie pisanie kwerend.

Wymagana jest podstawowa wiedza na temat relacyjnych baz danych i znajomość języka SQL pozwalająca na pisanie typowych zapytań z warunkami i odwołaniami do wielu tabel na raz. Zalecany wcześniejszy kontakt z narzędziami Oracle Database (dowolna wersja) i SQL Developer, ale na szkolenie zapraszamy także osoby pracujące z innymi produktami, jeśli chcą poszerzyć swoją wiedzę.

Certyfikaty

Uczestnicy szkolenia otrzymują imienne certyfikaty sygnowane przez ALX.

Obecnie brak terminów

Podaj swój adres e-mail, a my powiadomimy Cię o przyszłych terminach

Masz pytanie?

Tu możesz zadać niezobowiązujące i szybkie pytanie na temat szkolenia

* Wyrażam zgodę na przetwarzanie danych osobowych przez ALX Academy sp. z o.o. z siedzibą w Warszawie w celu realizacji zgłoszenia.