Я дурак, дебил и неуч...
May. 6th, 2011 09:55 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
...потому что ничем другим нельзя оправдать того, что я не мог решить проблему, описываемую тут и тут.
Суть проблемы была настолько очевидна, что не заметить её мог только абсолютный баклан с образованием в три класса церковно-приходской школы.
Итак, MySQL, скорость записи в таблицу падает с её ростом. Падает в какой-то прогрессии, неочевидной (точно измерить нельзя из-за непостоянства нагрузки), но постоянной.
Прогрессия... прогрессия... прогрессия... Догадались? Правильно, индексы. Два индекса на разные поля, скорость построения которых падает в логарифмической прогрессии.
Решение очевидно: писать таблицы без индексов (даже без всякой оптимизации получается постоянная скорость чуть меньше 0,5 млн. записей в минуту, что с лихвой перекрывает текущие и будущие нужды), а затем строить к ним индексы уже - прямо в оперативной памяти, её у сервера более чем достаточно. Должно получаться в разы быстрее, чем сейчас.
А Oracle...ну его в жопу негоже такому идиоту как я в столь высокие материи соваться.
UPD: и ведь решение проскакивало у меня прямо под носом, а я его не заметил. Назначаю себе три часа молитв с поклонами и самоистязанием.
Суть проблемы была настолько очевидна, что не заметить её мог только абсолютный баклан с образованием в три класса церковно-приходской школы.
Итак, MySQL, скорость записи в таблицу падает с её ростом. Падает в какой-то прогрессии, неочевидной (точно измерить нельзя из-за непостоянства нагрузки), но постоянной.
Прогрессия... прогрессия... прогрессия... Догадались? Правильно, индексы. Два индекса на разные поля, скорость построения которых падает в логарифмической прогрессии.
Решение очевидно: писать таблицы без индексов (даже без всякой оптимизации получается постоянная скорость чуть меньше 0,5 млн. записей в минуту, что с лихвой перекрывает текущие и будущие нужды), а затем строить к ним индексы уже - прямо в оперативной памяти, её у сервера более чем достаточно. Должно получаться в разы быстрее, чем сейчас.
А Oracle...
UPD: и ведь решение проскакивало у меня прямо под носом, а я его не заметил. Назначаю себе три часа молитв с поклонами и самоистязанием.
Оптимистичнее же
Date: 2011-05-06 07:30 am (UTC)"Как вы помните у меня была проблема:... И вот какое оригинальное и интересное решение я нашел... Что, поразило, решение было у меня под носом... А вообще нужно посмотреть как сделать также на оракле, уверен там можно сделать гораздо изящнее. Или нет, и тогда мускл - это винрар".
Просто в постах проскальзывает много пессимизма, меня это тревожит.
Улыбайся, не будь со сириоз, блеать!
Молитва и пост!
Date: 2011-05-06 07:36 am (UTC)Приду домой и поправлю в дипломе свою четвёрку по БД на двойку (карандашом конечно).
Re: Молитва и пост!
Date: 2011-05-06 07:41 am (UTC)Простое решение - всегда самое эффективное, но, блеать, сколько раз я тыкался как слепой котенок, а потом другие люди (да-да и ты тоже) показывали мне - "лук ит, как все просто, а ты мучаешься". А потом я познал дзен программирования на ассемблере и сделал свой буддизм со святым пивом и глициновыми галлюцинациями.
Но это уже совсем другая история...
Re: Молитва и пост!
Date: 2011-05-06 08:30 am (UTC)