pozitronik: (fuuuuuuu)
[personal profile] pozitronik
...потому что ничем другим нельзя оправдать того, что я не мог решить проблему, описываемую тут и тут.
Суть проблемы была настолько очевидна, что не заметить её мог только абсолютный баклан с образованием в три класса церковно-приходской школы.

Итак, MySQL, скорость записи в таблицу падает с её ростом. Падает в какой-то прогрессии, неочевидной (точно измерить нельзя из-за непостоянства нагрузки), но постоянной.
Прогрессия... прогрессия... прогрессия... Догадались? Правильно, индексы. Два индекса на разные поля, скорость построения которых падает в логарифмической прогрессии.
Решение очевидно: писать таблицы без индексов (даже без всякой оптимизации получается постоянная скорость чуть меньше 0,5 млн. записей в минуту, что с лихвой перекрывает текущие и будущие нужды), а затем строить к ним индексы уже - прямо в оперативной памяти, её у сервера более чем достаточно. Должно получаться в разы быстрее, чем сейчас.
А Oracle... ну его в жопу негоже такому идиоту как я в столь высокие материи соваться.

UPD: и ведь решение проскакивало у меня прямо под носом, а я его не заметил. Назначаю себе три часа молитв с поклонами и самоистязанием.

Re: Молитва и пост!

Date: 2011-05-06 08:30 am (UTC)
From: [identity profile] pozitronik.livejournal.com
Ну, в принципе, положительный момент во всей этой поеботне тоже есть. Переделывая парсер для работу с Oracle я нашёл несколько совершенно неочевидных оптимизаций, позволивших не только на порядок увеличить скорость работы парсера, но и определить "узкие места" в работе самого PHP.

December 2016

S M T W T F S
    123
45678910
1112131415 1617
18192021222324
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 28th, 2025 11:41 pm
Powered by Dreamwidth Studios