Jak i kiedy utworzyć indeks w MySQL

Jak i kiedy utworzyć indeks w MySQL
Jeśli chodzi o optymalizację wydajności dla baz danych mysql, tworzenie indeksów jest jednym z najlepszych sposobów. Indeksy SQL pomagają poprawić wydajność bazy danych, zapewniając szybki dostęp do danych przechowywanych w bazie danych.

Indeks SQL nie różni się od normalnego indeksu książki z wyselekcjonowaną listą informacji i gdzie można je znaleźć.

W tym samouczku omówimy, kiedy utworzyć indeks SQL, ponieważ chociaż indeksy mogą pomóc zoptymalizować wydajność, mogą również powodować powolną wydajność i inne negatywne skutki. Omówimy również, jak utworzyć indeks za pomocą prawdziwej bazy danych.

Zacznijmy:

Kiedy utworzyć indeks w MySQL?

Niestety nie mam bezpośredniej odpowiedzi, kiedy powinieneś utworzyć indeks. Jednak niektóre scenariusze i czynniki mogą wpływać na tworzenie indeksu. Warto zauważyć, że może być konieczne wykonanie kompromisów podczas tworzenia indeksu

  1. Wysoka dostępność: Jeśli masz regularnie dostępną tabelę lub kolumnę, możesz zwiększyć jego wydajność, tworząc indeks.
  2. Rozmiar: Rozmiar danych przechowywanych w tabeli lub kolumnie może również odgrywać rolę w decydowaniu, kiedy indeks jest konieczny. Duża tabela może skorzystać z indeksów niż mniejszy stół.
  3. Klucz indeksu: Czynnikiem jest również rodzaj danych klucza liczb całkowitych. Na przykład liczba całkowita jest znacznie lepszym kluczem indeksu ze względu na jego niewielki rozmiar.
  4. Operacje CRUD: Jeśli masz tabelę lub kolumnę z większą liczbą operacji CRUD, indeksowanie tej tabeli lub kolumny może nie być korzystne i może negatywnie wpłynąć na wydajność bazy danych.
  5. Rozmiar bazy danych: Indeksowanie to struktura danych, która zajmie miejsce na Twojej bazie danych, co może być czynnikiem, szczególnie w już dużych bazach danych.

Powyższe to niektóre z kluczowych pojęć, które mogą wejść w grę przy podejmowaniu decyzji, kiedy utworzyć indeks bazy danych.

Jeśli chcesz dowiedzieć się więcej o tym, jak MySQL używa indeksów, rozważ odczytanie zasobu podanego poniżej:

https: // dev.Mysql.com/doc/refman/8.0/en/mysql-indeksy.html

Basic MySQL Index Użycie

Domyślnie po utworzeniu tabeli z kluczem podstawowym MySQL automatycznie tworzy specjalny indeks o nazwie Primary, przechowywany z danymi. Jest to zazwyczaj znane jako indeks skupiony.

Aby utworzyć indeks w MySQL, możemy użyć składni pokazanej poniżej:

Utwórz nazwę indeksu indeksu na nazwie tbl_name (cols);

Zaczynamy od wywołania klauzuli Utwórz indeks, a następnie nazwa indeksu, który chcemy utworzyć. Następnie określamy tabelę, w której znajduje się indeks, a wreszcie kolumny.

Możesz także utworzyć indeks podczas tworzenia tabeli, jak pokazano w poniższej składni:

Utwórz tabelę tbl_name (col1, col2, col3, indeks (col1, col2));

NOTATKA: Domyślnym typem indeksu MySQL jest BTREE, chyba że wyraźnie określono.

Przykładowy przypadek użycia

Korzystając z przykładu, pozwól mi zilustrować, w jaki sposób możemy utworzyć indeks dla określonej tabeli, aby poprawić wydajność.

Będę używać tabeli filmowej w bazie danych pracowników. Poniżej znajduje się zasób na stronie zasobu:

https: // dev.Mysql.com/doc/index-inni.html

Najpierw zobaczmy za zakulisową proces MySQL, aby przetworzyć proste instrukcje wybrane, w którym płeć jest równa F.

Wyjaśnij Wybierz EMP_NO, First_name, Last_name od pracowników, gdzie płeć = „f”;

Biorąc pod uwagę rozmiar tabeli i zapytane dane, skanowanie ponad 200 000 rzędów nie jest bardzo wydajne. W takim przypadku możemy zmniejszyć tę wartość, tworząc indeks.

Aby utworzyć indeks, możemy zrobić:

Utwórz płeć indeksu na pracownikach (płeć);

Po utworzeniu indeksu MySQL skanuje wartości, jak pokazano na powyższym wyjściu.

Wniosek

Mam nadzieję, że ten samouczek dał ci głębsze zrozumienie korzystania z indeksów MySQL w celu poprawy wydajności bazy danych.

Dziękuję za przeczytanie.