MyISAM vs InnoDB

MyISAM vs InnoDB

Podczas pierwszych etapów pisania aplikacji opartej o MySQL możemy zmierzyć się z dylematem: jaki mechanizm składowania danych użyć dla poszczególnych tabel? Postaram się w poniższym wpisie przybliżyć i porównać dwa, z powszechnie stosowanych – MyISAM oraz InnoDB.

MyISAM

MyISAM jest mechanizmem składowania danych, zaprojektowany z myślą o pobieraniu i dodawaniu danych. Dzięki temu, że każda krotka wskazuje na rekord w pliku i wskaźnik do niej jest przesuwany względem jego początku, wprowadzanie nowych danych jest bardzo wydajne (nowy rekord jest dodawany na sam koniec pliku).

Uaktualnianie danych, jak i usuwanie, jest dużo bardziej problematyczne z natury mechanizmu, dzięki któremu odczyt jest tak wydajny tj. podczas usuwania krotki wszystkie wskaźniki „za” danym rekordem muszą zostać zaktualizowane. Tak samo podczas aktualizacji rekordu – gdyż jego efektem przeważnie jest zmiana wielkości.

InnoDB

Mechanizm składowania danych jakim jest InnoDB jest dużo bardziej skomplikowany i mógłby być materiałem na kolejny wpis – dlatego, też przedstawię tylko jego rewolucyjne względem MyISAM właściwości.

Pierwszym, bez wątpienia bardzo istotnym usprawnieniem, jest możliwość stosowania kluczy obcych w tabelach, zapewniających integralność między tabelami, co w połączniu z utworzeniem indeksu dla danego klucza usprawnia wydajność tabeli.

Drugim rewolucyjnym usprawnieniem względem MyISAM jest możliwość korzystania z transakcji – umożliwia to wydzielenie całości ze zbioru operacji na bazie danych, dzięki czemu, w razie niepowodzenia którejkolwiek z danych operacji, mamy możliwość odwrócenia zmian.

MyISAM vs InnoDB

Poniżej załączam zestawienie cech wyżej przedstawionych silników:

1

Podsumowanie

Przy podejmowaniu decyzji podczas zakładania tabeli warto dokładnie przeanalizować zadania, jakie nasza tabela ma spełniać, dzięki temu, być może w przyszłości zaoszczędzimy trochę czasu na optymalizacji (a raczej na jej braku).

Autorem tekstu jest Michał Gaj.

Dodaj komentarz

avatar
  Subscribe  
Powiadom o

Zobacz również artykuły o podobnej tematyce

Podsumowanie Q4 2018 w i-systems

Końcówka roku - gorący czas niemal w każdej firmie. W tych związanych z e-commerce chyba jeszcze bardziej intensywny. Jak to...

Dobry e-commerce, czyli jaki?

Przełom roku, to w świecie e-commerce zdecydowanie intensywny okres. Rozpoczyna się on od przypadającego na listopad Black Friday, po którym,...

Kolejna marka VRG uruchamia rozwiązanie e-commerce od i-systems

Nowa marka pojawiła się w portfolio giełdowej grupy: PICKY PICA, bo o niej mowa, stawiając pierwsze kroki w e-commerce, zdecydowała...

Zobacz więcej wpisów