12. Листопад 2010 · Коментарі Вимкнено до оптимізація баз даних mysql · Categories: PHP-програмування, Роздуми на вільну тему · Tags: , ,

вчора вирішив почитати про оптимізацію баз даних mysql. крім так званих normal forms вичитав ще кілька цікавих, хоч і без того очевидних речей. та й на думку багатьох, виявилося, що тільки перші дві normal forms варто використовувати та дотримуватися беззастережно, бо застосування третьої може суттєво вплинути на продуктивність бази даних (негативно). ще прочитав про те, що необхідно застосовувати індекси, адже в такому випадку пошук відбувається в окремих випадках у 100 разів швидше, бо не потрібно переглядати всю колонку в таблиці, адже індекс – це відсортований стовпець за алфавітом, так би мовити (залежно від типу поля), тому, якщо потрібно знайти слово на “р”, то всі інші літери відразу будуть пропущені, а пошук здійснюватиметься тільки у потрібних полях. крім того інколи варто робити індекси відразу кількох стовпців, якщо вони часто використовуються для пошуку інформації або для where запитів. звісно, використання індексів трохи впливає на швидкість запису та оновлення, але дууууже підвищує швидкість виконання пошуку, тому тут потрібно думати, що для кого важливіше. і не варто робити індекс усього поля, часто вистачає лише кількох перших символів, скажімо, 4-5. а ще шукав відповідь на питання: яка кількість таблиць в базі даних є оптимальною? виявилося, що відповіді однозначної нема, себто є теоретична максимальна кількість, але я навіть не запам’ятав цифр – вони астрономічні, але не рекомендується робити понад 36000 таблиць в одній базі, щоб вона працювала стабільно, тому якщо хтось створить сотню-другу – то аж ніяк не смертельно, але це ускладнює роботу самому програмісту, бо працювати з однією таблицею, погодьтеся, набагато легше, ніж із двома сотнями :) та й використання індексів колонок може навіть таблицю на мільйон записів робити доволі швидкою. поки все.

Comments closed.