Показать сообщение отдельно
Старый 02.06.2015, 13:59   #15
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: [MySql] Медленный INSERT

Сообщение от h1dd3n Посмотреть сообщение
Что за бред. Я пониманию что тебе возможно трудно писать по-русски, но в твоем посте смысла просто 0...

Партицировать таблицу можно по дате (например, помесячно). При партицировании индекс становится тоже партицированным, что охренительно ускоряет insert. Если сейчас инсерт например 0.01, то при росте базы (это ведь таблица со статистикой, наверняка будет расти) время инсерта может сильно увеличиться и с этим уже ничего не поделаешь (только лишаться индексов или делить таблицу на несколько). А с партицированием будет обновляться только индекс соответствующей партиции (например, за месяц), что значит что даже через 10 лет инсерт будет примерно такой же как и сейчас (и при этом делить таблицу на несколько, или удалять из нее данные не надо)
Основная проблема скорости insert'а в данном случае связана не с размером таблицы, а со сложностью индексации на таблице + количество insert'ов в секунду, и работа требуемая на обработку данных даже до того как вставится в таблицу. И лишь потом уже фактор большой таблицы.

Следственно если нафиг убрать индексы которые нужны только для обработки данных, это уже сильно ускоряет вставку.

Тем более хранить в бд устаревающие статистические данные - смысла нету вообще, как говорилось выше их нужно аггрегировать периодически, чтобы не нужно было хранить устаревшие и не нужные данные.
(Offline)
 
Ответить с цитированием