Высокопроизводительный MySQL. Проверенные стратегии для крупномасштабных операций

Товар

3 113  ₽
Высокопроизводительный MySQL. Проверенные стратегии для крупномасштабных операций
  • 0 раз купили
  • 5  оценка
  • 2 осталось
  • 1 отзыв

Доставка

  • Почта России

    от 990 ₽

  • Курьерская доставка EMS

    от 1290 ₽

Характеристики

Артикул
15705576124
Состояние
Новый
Język publikacji
polski
Tytuł
Wysoko wydajne MySQL. Sprawdzone strategie działania na dużą skalę. Wydanie IV
Autor
Jeremy Tinley
Nośnik
książka papierowa
Okładka
miękka
Rok wydania
2022
Wydawnictwo
Helion
Liczba stron
368
Numer wydania
4
Seria
O'Reilly
Szerokość produktu
16.5 cm
Wysokość produktu
20.8 cm
Stan opakowania
oryginalne

Описание

Wysoko wydajne MySQL. Sprawdzone strategie działania na dużą skalę

Wysoko wydajne MySQL. Sprawdzone strategie działania na dużą skalę. Wydanie IV

Jeremy Tinley, Silvia Botros

MySQL od lat jest najbardziej znaną i lubianą bazą danych typu open source. Wciąż spełnia oczekiwania użytkowników, staje się bowiem coraz bardziej zaawansowanym rozwiązaniem bazodanowym. Równocześnie rośnie złożoność tego oprogramowania, pojawiają się nowe funkcje i narzędzia. Ewoluuje też rola administratora bazy danych, podobnie jak zmienia się podejście do pracy zespołowej. Efektem tych zmian powinno być dostarczenie aplikacji o wysokiej wartości biznesowej, takiej, która będzie się skalowała wraz z organizacją. Warunkiem osiągnięcia tego celu jest jednak gruntowna znajomość MySQL.

Ten starannie zaktualizowany przewodnik pozwoli Ci poznać zaawansowane techniki pracy z serwerem MySQL: począwszy od tworzenia obiektów, poprzez projektowanie schematów, indeksów i zapytań, skończywszy na optymalizacji serwera, sprzętu i systemu operacyjnego. Opisano tu bezpieczne i praktyczne sposoby skalowania aplikacji za pomocą replikacji. Pokazano, jak można zapewnić równoważenie obciążenia i sprawić, że aplikacja będzie działała nawet w razie awarii. Omówiono najnowsze trendy pracy z serwerami MySQL (w tym bazy pracujące w chmurze), a także nowe funkcje i narzędzia. Nie zabrakło najlepszych praktyk w zakresie zapewniania bezpieczeństwa bazy, jej wydajności i stabilności. Dzięki temu przewodnikowi zdobędziesz pełną wiedzę o tym, jak nowoczesne firmy używają MySQL na dużą skalę.

W książce między innymi:

  • architektura MySQL i silniki pamięci masowej
  • konfiguracja serwera a sprzęt
  • replikacja MySQL i zapewnienie wysokiej dostępności aplikacji
  • serwery MySQL w środowiskach zarządzanej chmury
  • zaawansowane techniki optymalizacji MySQL
  • automatyzacja zarządzania bazą danych

MySQL: skalowalne rozwiązanie do nowoczesnych zastosowań!

O autorach

Silvia Botros jest architektem oprogramowania w Twilio. Brała udział w tworzeniu dużych aplikacji bazodanowych. Zajmowała się też projektowaniem i wdrażaniem magazynów danych w środowiskach produkcyjnych.

Jeremy Tinley jest starszym inżynierem w Etsy. Od ponad 20 lat zajmuje się bazami MySQL. Jest znany z umiejętności zapewniania swoim bazom danych dostępności, niezawodności i operacyjnej efektywności.

Spis treści:

Przedmowa

Wprowadzenie

Rozdział 1. Architektura MySQL

  • Architektura logiczna MySQL

    Zarządzanie połączeniami i bezpieczeństwo

    Optymalizacja i wykonywanie zapytań

  • Kontrola współbieżności

    Blokady odczytu (zapisu)

    Zasięg działania blokad

  • Transakcje

    Poziomy izolacji

    Zakleszczenia

    Rejestrowanie zdarzeń transakcji

    Transakcje w MySQL

  • Mechanizm Multiversion Concurrency Control
  • Replikacja
  • Struktura plików danych
  • Silnik InnoDB

    Obsługa dokumentu JSON

    Zmiany w słowniku danych

    Niepodzielne operacje typu DDL

  • Podsumowanie

Rozdział 2. Monitorowanie w świecie inżynierii niezawodności

  • Wpływ inżynierii niezawodności na zespoły administratorów baz danych
  • Definiowanie celów poziomu usługi

    Co spowoduje zadowolenie klientów?

  • Co należy mierzyć?

    Definiowanie SLI i SLO

    Rozwiązania w zakresie monitorowania

    Monitorowanie dostępności

    Monitorowanie opóźnienia zapytania

    Monitorowanie pod kątem błędów

    Monitorowanie proaktywne

  • Pomiar długoterminowej wydajności działania

    Poznanie rytmu pracy firmy

    Efektywne śledzenie wskaźników

    Stosowanie narzędzi monitorowania do analizy wydajności działania

    Stosowanie SLO do przygotowania architektury danych

  • Podsumowanie

Rozdział 3. Funkcjonalność Performance Schema

  • Wprowadzenie do Performance Schema

    Elementy instrumentu

    Organizacja konsumenta

    Wykorzystanie zasobów

    Ograniczenia

    Schemat sys

    Poznajemy wątki

  • Konfiguracja

    Włączanie i wyłączanie Performance Schema

    Włączanie i wyłączanie instrumentacji

    Włączanie i wyłączanie konsumentów

    Dostrajanie monitorowania określonych obiektów

    Dostrajanie monitorowania wątków

    Dostosowywanie wielkości pamięci dla Performance Schema

    Wartości domyślne

  • Stosowanie Performance Schema

    Analizowanie zapytań SQL

    Analiza wydajności działania operacji odczytu i zapisu

    Analiza blokad metadanych

    Analiza poziomu użycia pamięci

    Analiza zmiennych

    Analiza najczęściej występujących błędów

    Analiza samej funkcjonalności Performance Schema

  • Podsumowanie

Rozdział 4. Optymalizacja systemu operacyjnego i osprzętu

  • Co ogranicza wydajność MySQL?
  • W jaki sposób wybrać procesor dla MySQL?
  • Zrównoważenie pamięci i zasobów dyskowych

    Buforowanie, odczyt i zapis

    Jaki zestaw roboczy jest odpowiedni dla Ciebie?

  • Napęd SSD

    Ogólne omówienie pamięci flash

    Mechanizm usuwania nieużytków

  • Optymalizacja wydajności macierzy RAID

    Awaria macierzy RAID, odzyskiwanie danych i monitoring

    Konfiguracja macierzy RAID i buforowanie

  • Konfiguracja sieciowa
  • Wybór systemu plików

    Wybór zarządcy kolejki dyskowej

    Przestrzeń wymiany

    Stan systemu operacyjnego

    Inne użyteczne narzędzia

  • Podsumowanie

Rozdział 5. Optymalizacja konfiguracji serwera

  • Podstawy konfiguracji MySQL

    Składnia, zasięg oraz dynamizm

    Trwałe zmienne systemowe

    Efekt uboczny ustawiania zmiennych

    Planowanie zmiany zmiennej

  • Czego nie należy robić?
  • Tworzenie pliku konfiguracyjnego MySQL

    Konfiguracja minimalna

    Analizowanie zmiennych stanu serwera MySQL

  • Konfiguracja poziomu użycia pamięci

    Ilość pamięci używanej przez każde połączenie

    Rezerwacja pamięci dla systemu operacyjnego

    Pula buforów InnoDB

    Bufor wątków

  • Dostrajanie zachowania operacji I/O w MySQL

    Dziennik zdarzeń transakcji InnoDB

    Bufor dziennika zdarzeń

    Przestrzeń tabel InnoDB

    Dostosowywanie innych opcji I/O

  • Dostosowywanie współbieżności MySQL
  • Ustawienia dotyczące bezpieczeństwa
  • Zaawansowane ustawienia InnoDB
  • Podsumowanie

Rozdział 6. Projektowanie schematu i zarządzanie nim

  • Wybór optymalnego rodzaju danych

    Liczby całkowite

    Liczby rzeczywiste

    Ciągi tekstowe

    Rodzaje danych dla daty i godziny

    Bitowe rodzaje danych

    Dane JSON

    Wybór identyfikatorów

    Dane specjalnego rodzaju

  • Kwestie, które trzeba wziąć pod uwagę podczas projektowania schematu w MySQL

    Zbyt wiele kolumn

    Zbyt wiele złączeń

    Wszechobecne wartości typu ENUM

    Typ ENUM w przebraniu

    Wartość NULL

  • Zarządzanie schematem

    Zarządzanie schematem jako część platformy przechowywania danych

  • Podsumowanie

Rozdział 7. Indeksowanie zapewniające wysoką wydajność

  • Podstawy indeksowania

    Rodzaje indeksów

    Zalety indeksów

  • Strategie indeksowania w celu osiągnięcia maksymalnej wydajności

    Prefiks indeksu oraz selektywność indeksu

    Indeksy wielokolumnowe

    Wybór odpowiedniej kolejności kolumn

    Indeksy klastrowane

    Indeksy pokrywające

    Skanowanie indeksu w celu przeprowadzenia sortowania

    Indeksy zbędne i powielone

    Indeksy nieużywane

  • Obsługa indeksu oraz tabeli

    Wyszukiwanie i naprawa uszkodzeń tabeli

    Uaktualnianie danych statystycznych indeksu

    Ograniczanie wielkości indeksu i fragmentacji danych

  • Podsumowanie

Rozdział 8. Optymalizacja wydajności zapytań

  • Dlaczego zapytania są powolne?
  • Podstawy powolnych zapytań: optymalizacja dostępu do danych

    Czy zapytanie bazy danych obejmuje dane, które są niepotrzebne?

    Czy MySQL analizuje zbyt dużą ilość danych?

  • Sposoby restrukturyzacji zapytań

    Zapytanie skomplikowane kontra wiele mniejszych

    Podział zapytania

    Podział złączeń

  • Podstawy wykonywania zapytań

    Protokół klient-serwer MySQL

    Stany zapytania

    Proces optymalizacji zapytania

    Silnik wykonywania zapytań

    Zwrot klientowi wyników zapytania

  • Ograniczenia optymalizatora zapytań MySQL

    Ograniczenia klauzuli UNION

    Szerzenie równości

    Wykonywanie równoległe

    Równoczesne wykonywanie poleceń SELECT i UPDATE w tej samej tabeli

  • Optymalizacja określonego rodzaju zapytań

    Optymalizacja zapytań COUNT()

    Optymalizacja zapytań typu JOIN

    Optymalizacja zapytań typu GROUP BY WITH ROLLUP

    Optymalizacja zapytań typu LIMIT i OFFSET

    Optymalizacja za pomocą opcji SQL_CALC_FOUND_ROWS

    Optymalizacja klauzuli UNION

  • Podsumowanie

Rozdział 9. Replikacja

  • Ogólny opis replikacji

    W jaki sposób działa replikacja?

  • Szczegóły kryjące się za replikacją

    Wybór formatu replikacji

    Globalny identyfikator transakcji

    Zapewnienie replikacji odporności na awarie

    Replikacja opóźniona

    Replikacja wielowątkowa

    Replikacja półsynchroniczna

    Filtry replikacji

  • Poprawne działanie replikacji pomimo awarii

    Promocja planowana

    Promocja nieplanowana

    Kompromisy związane z promocją

  • Topologie replikacji

    Aktywny-pasywny

    Aktywny-pula odczytu

    Odradzane topologie

    Ring

  • Administracja replikacją i jej obsługa

    Monitorowanie replikacji

    Pomiar opóźnienia replikacji

    Określanie, czy serwer repliki zachowuje spójność z serwerem źródła

  • Problemy związane z replikacją i sposoby ich rozwiązywania

    Uszkodzenie binarnego dziennika zdarzeń w źródle

    Nieunikalne identyfikatory serwerów

    Niezdefiniowane identyfikatory serwerów

    Brakujące tabele tymczasowe

    Niereplikowanie wszystkich uaktualnień

    Ogromne opóźnienie replikacji

    Zbyt duże pakiety w serwerze źródła

    Brak miejsca na dysku

    Ograniczenia replikacji

  • Podsumowanie

Rozdział 10. Kopia zapasowa i odzyskiwanie

  • Dlaczego kopia zapasowa?
  • Definiowanie wymagań procesu odzyskiwania
  • Projektowanie rozwiązania kopii zapasowej MySQL

    Kopia zapasowa online czy offline?

    Logiczna czy bezpośrednia kopia zapasowa?

    Co należy umieszczać w kopii zapasowej?

    Przyrostowa kopia zapasowa

    Replikacja

  • Zarządzanie kopią zapasową binarnych dzienników zdarzeń i jej tworzenie
  • Narzędzia do tworzenia kopii zapasowej i przywracania z niej danych

    MySQL Enterprise Backup

    Percona XtraBackup

    mydumper

    mysqldump

  • Tworzenie kopii zapasowej danych

    Tworzenie logicznej kopii zapasowej

    Migawka systemu plików

    Percona XtraBackup

  • Odzyskiwanie z kopii zapasowej

    Przywracanie logicznych kopii zapasowych

    Przywracanie bezpośrednich plików z migawki

    Przywracanie danych za pomocą narzędzia Percona XtraBackup

    Uruchomienie MySQL po przywróceniu bezpośrednich plików

  • Podsumowanie

Rozdział 11. Skalowalność MySQL

  • Czym jest skalowanie?
  • Obciążenie ograniczone operacjami odczytu kontra obciążenie ograniczone operacjami zapisu

    Analiza obciążenia

    Obciążenie ograniczone operacjami odczytu

    Obciążenie ograniczone operacjami zapisu

  • Sharding funkcjonalny
  • Skalowanie obciążenia ograniczonego operacjami odczytu

    Zarządzanie konfiguracją dla pul operacji odczytu

    Sprawdzanie stanu puli odczytu

    Algorytmy równoważenia obciążenia

  • Kolejkowanie
  • Skalowanie zapisu za pomocą shardingu

    Wiele kluczy partycjonowania

    Wykonywanie zapytań między serwerami

    Vitess

    ProxySQL

  • Podsumowanie

Rozdział 12. MySQL w chmurze

  • Zarządzany serwer MySQL

    Amazon Aurora dla MySQL

    GCP Cloud SQL

  • MySQL w maszynie wirtualnej

    Rodzaje maszyn wirtualnych w chmurze

    Wybór odpowiedniego typu maszyny

    Wybór odpowiedniego typu dysku

    Wskazówki dodatkowe

  • Podsumowanie

Rozdział 13. Zgodność i MySQL

  • Co to jest zgodność?

    Service Organization Controls Type 2

    Ustawa Sarbanesa-Oxleya

    Norma bezpieczeństwa Payment Card Industry Data Security Standard

    Ustawa Health Insurance Portability and Accountability Act

    Program FedRAMP

    Rozporządzenie o ochronie danych osobowych

    Schrems II

  • Przygotowanie do kontroli zapewnienia zgodności

    Zarządzanie kluczami tajnymi użytkownika

    Rozdział ról i danych

    Śledzenie zmian

    Procedury tworzenia kopii zapasowej i przywracania danych

  • Podsumowanie

Dodatek A. Uaktualnianie MySQL

  • Dlaczego należy uaktualnić serwer MySQL?
  • Uaktualnienie cyklu życiowego
  • Testowanie uaktualnienia

    Testowanie środowiska programistycznego

    Dokładna kopia danych produkcyjnych

    Replika

    Narzędzia

  • Uaktualnienie na dużą skalę
  • Podsumowanie

Dodatek B. MySQL w Kubernetesie

  • Przygotowanie zasobów za pomocą Kubernetesa

    Staranny wybór celu

    Wybór płaszczyzny kontrolnej

    Pozostałe szczegóły

  • Podsumowanie

Гарантии

  • Гарантии

    Мы работаем по договору оферты и предоставляем все необходимые документы.

  • Лёгкий возврат

    Если товар не подошёл или не соответсвует описанию, мы поможем вернуть его.

  • Безопасная оплата

    Банковской картой, электронными деньгами, наличными в офисе или на расчётный счёт.

Отзывы о товаре

Рейтинг товара 5 / 5

1 отзыв

Russian English Polish