Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Test porównawczy MySQL na SSD:narzędzia i strategie

Ważną rzeczą do zapamiętania podczas testowania wydajności pamięci masowej MySQL w systemie Linux jest pamięć podręczna. Sam byłem ciekawy tego samego przypadku testowego. Zawsze jest zabawnie, gdy użytkownik narzeka na powolne zapytanie. Dzwonią do Ciebie i uruchamiają się ponownie tylko po to, aby znaleźć ich ponad 50-minutowe zapytanie zostało zakończone w ciągu 30 sekund z powodu pamięci podręcznej zapytań. Zawsze uruchamiaj

mysql> reset query cache;

w MySQL podczas próby optymalizacji zapytań. To powiedziawszy, przy porównywaniu SSD z tradycyjnymi wrzecionami jest jeszcze jeden krok:pamięć podręczna dysku. Trudno jest porównać czasy dostępu lub IOps, gdy system operacyjny sam buforuje dysk w pamięci. Aby wyczyścić pamięć podręczną dysku, uruchom następujące polecenie z powłoki:

$ sync && sysctl -w vm.drop_caches=3

Te polecenia uruchamiane przed każdym z zapytań testowych pomogą Ci uświadomić sobie potencjał dysku SSD w porównaniu z tym, że masz spowolnienie 7k2 SATA. Sprawdź to, uruchamiając dwukrotnie to samo zapytanie bez opróżniania pamięci podręcznej i obserwowania czasów zapytań. W tym momencie dobrym pomysłem jest wypróbowanie niektórych zapytań z indeksami i bez, a także sprzężeń, jeśli to możliwe. Użyj polecenia EXPLAIN PLAN w każdym zapytaniu, aby sprawdzić, czy używany jest indeks. Losowy dostęp odczytu między indeksem a plikami danych ujawni wąskie gardła na wolniejszych dyskach. Upewnij się, że plik my.cnf jest spójny między testami SSD a talerzem. Przetestowałem kilka rzeczy na prostym dysku SSD firmy OCZ do komputerów stacjonarnych i zauważyłem wzrost wydajności zapytań około 10 razy szybszy niż mój dysk SATA 7200 obr./min. W transakcyjnej bazie danych opartej na SSD zachowałbym ostrożność przy korzystaniu z OPTIMIZE TABLE, ponieważ częste kompaktowanie bazy danych w połączeniu z SSD TRIM może wpłynąć na żywotność dysku. Jest to jednak teoretyczne i nie widzę jeszcze dowodów na poparcie tego.

Mam nadzieję że to pomoże! Nie mogę się doczekać dni, kiedy magnetyczne dyski twarde zastąpią taśmę jako nośnik kopii zapasowych i zostaną całkowicie zastąpione przez SSD w większości sprzętu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kłopoty z podjęciem decyzji o identyfikacji lub braku identyfikacji relacji

  2. MySQL:NULL vs

  3. Zapisz tablicę mysql php

  4. Średnia długość rzędu wyższa niż możliwa

  5. Dlaczego klucz podstawowy nie może zawierać wartości null?