Wednesday, February 06, 2008

MySQL partitions

Практические данные по использованию партиций в MySQL сервере. Идея в том, что таблицы, которые при чтении заведомо не помещаются в оперативную память, можно разделить на несколько логических частей. С той идеей, что чтение части данных будет обслуживаться уже из памяти, а не с диска. Естественно, что уменьшая данные, мы заодно уменьшим и индексы (которые также желательно было бы иметь в памяти). Есть некоторые ограничения, на то как можно данные разбивать, но статья понравилась все-таки именно приведенными измерениями. Типа, а что в итоге? Такое разделение ведь есть в некотором роде палка о двух концах. Обслуживание соединения логических частей ( а таблица по прежнему представляется как единая) тоже ведь чего-то стоит. Автор тестировал все на базе в 113 миллионов записей (7.5 GB data + 5.2 GB index) - данные бюро переписи в США. Один из основных выводов, который мы для себя почерпнули, например, состоит в том, что при использовании первичного ключа в партиционных таблицах выигрыша в производительности не было.

No comments: