Wysokowydajne MySQL, wprowadzenie do technik optymalizacji zapytań SQL i schematów baz danych

Kod: mysql-performance
Kategoria: MySQL
Forma: 60% wykłady / 40% warsztaty
Czas trwania: 2
Grupa docelowa: developerzy

Szkolenie zostało przygotowane z myślą o programistach i architektach, wykorzystujących w realizowanych projektach bazę danych MySQL.

Baza danych jest jednym z najczęstszych powodów niskiej wydajności aplikacji webowych. Mało optymalny schemat bazy czy nieoptymalne zapytania SQL automatycznie przekładają się na spadki wydajności kolejnych warstw oprogramowania.

Szkolenie zawiera szereg praktycznych rozwiązań i wskazówek opracowanych w dużych i dojrzałych projektach, od prostych środowisk z replikacją master-master po duże, shardowane konfiguracje master-master-(delayed-slave).

Wyróżniki szkolenia

Podczas zajęć możesz oczekiwać szczególnych akcentów położonych na poniższe aspekty:

  • Kruczki, które dadzą Ci realną przewagę
  • Dostęp do wiedzy eksperckiej architekta systemów dużej skali (największy polski portal społecznościowy jak i największy komunikator)

Program Szkolenia

Pobierz program w formacie PDF
  1. Wprowadzenie
    1. Historia rozwoju MySQL
    2. Architektura MySQL
    3. Silniki składowania danych i ich możliwości
      1. InnoDB
      2. MyISAM
      3. MERGE
      4. MEMORY
      5. FEDERATED
      6. ARCHIVE
      7. CSV
      8. BLACKHOLE
          Profilowanie aplikacji Profilowanie zapytań SQL Profilowanie serwera MySQL
  2. Identyfikacja wąskich gardeł bazy danych
    1. Strategie i taktyki testów wydajnościowych
    2. Dostępne narzędzia i ich możliwości
    3. Profilowanie wydajności
  3. Podstawowa optymalizacja schematu bazy danych
    1. Właściwy dobór typów danych
    2. Indeksowanie danych
      1. Strategie indeksowania
      2. Selektywność i rozmiary indeksów
  4. Optymalizacja zapytań SQL
    1. Metody wykrywania nieoptymalnych zapytań
      1. Narzędzia wbudowane w serwer
      2. Slow-log
      3. Wykorzystanie narzędzi pakietu Percona Toolkit do analizy zbiorczej
      4. Integracja z zewnętrznymi narzędziami
          Graphite
    2. Metody monitoringu stanu serwera
      1. Zmienne systemowe
      2. Wykorzystanie danych z INFORMATION SCHEMA
    3. Plan wykonania zapytania SQL
      1. Sposób obsługi zapytań SQL przez serwer MySQL
      2. Metody analizy planu wykonania pod kątem wydajności
      3. Podpowiedzi dla optymalizatora zapytań
    4. Optymalizacja określonych typów zapytań
    5. Tips'n'Tricks
      1. Klucze klastrujące i możliwość ich wykorzystania
  5. Zaawansowana optymalizacja schematu bazy danych i dostępu do danych
    1. Replikacja danych
      1. Topologie replikacji
      2. Problemy związane z replikacją i metody ich rozwiązania
    2. Normalizacja i denormalizacja
      1. Tabele cache-summary
      2. Sharding
      3. Modyfikacje schematu dużych baz danych i związane z tym problemy
    3. NoSQL-owy dostęp do danych
      1. Handler-Socket i jego możliwości
  6. Cache'owanie danych
    1. Zasada działania i ograniczenia natywnego query-cache
    2. Zewnętrzny cache danych
      1. Cache'owanie danych na poziomie aplikacji
      2. Narzędzia
          Memcached Redis
  7. Rozwiązania alternatywne
    1. Narzędzia pochodne MySQL
      1. MariaDB
      2. Percona Server
      3. Drizzle
    2. Rozwiązania NoSQL
      1. Przegląd rozwiązań NoSQL wraz z typowyni obszarami zastosowań

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Materiały związane ze szkoleniem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

  • MySQL pod obstrzałem
    KATEGORIE: Bazy danych

    Skalowanie i tuning MySQL.

    Autor Bottega:

    Mariusz Gil

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail/Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń