Распределенный Postgresql срач
Mar. 25th, 2010 07:18 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В итоге, в разборки насчет использования
dmzlj postgresql под приличной нагрузкой в системе GPS-мониторинга подключили всех до кого смогли дотянутся, вплоть до разработчиков postgresql.
Я потерял нить обсуждения где-то в конце, но судя по результатам, ключевой аспект шизы был в двух вещах: фрагментированность данных и индекса (условно говоря - на каждую интересующую нас запись нужно было читать целую страницу данных, в которой все остальное нас не касалось) и нехватка памяти для кэша, в результате чего все начинало тормозить.
В качестве решения проблемы в итоге предложили какое-то хитрое двухуровневное партиционирование, которое должно устранить проблему фрагментации - сначала партиционировать сильно актуальные данные (текущий день(неделя, месяц)) по hash id объекта, затем переносить данные в партиции по времени кусками с одинаковыми id чтобы избежать фрагментации.
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Я потерял нить обсуждения где-то в конце, но судя по результатам, ключевой аспект шизы был в двух вещах: фрагментированность данных и индекса (условно говоря - на каждую интересующую нас запись нужно было читать целую страницу данных, в которой все остальное нас не касалось) и нехватка памяти для кэша, в результате чего все начинало тормозить.
В качестве решения проблемы в итоге предложили какое-то хитрое двухуровневное партиционирование, которое должно устранить проблему фрагментации - сначала партиционировать сильно актуальные данные (текущий день(неделя, месяц)) по hash id объекта, затем переносить данные в партиции по времени кусками с одинаковыми id чтобы избежать фрагментации.
no subject
Date: 2010-03-25 08:54 pm (UTC)no subject
Date: 2010-03-25 09:01 pm (UTC)Сразу отметается постановка геморозадачи.
no subject
Date: 2010-03-25 09:05 pm (UTC)И ваще, с глубоким партиционированием даже мнезия работает ok. У нас так и есть, собственно.
А вот сумасшедшие железнодорожники хотят ваще скважность полсекунды. К вопросу о. У них, правда паровозов не так много.
no subject
Date: 2010-03-25 09:10 pm (UTC)no subject
Date: 2010-03-25 09:13 pm (UTC)И убедить их врядли в чем-то можно, потому что что такое РЖД и что такое мы.
no subject
Date: 2010-03-26 04:42 am (UTC)no subject
Date: 2010-03-26 04:44 am (UTC)no subject
Date: 2010-03-26 05:09 am (UTC)no subject
Date: 2010-03-26 07:23 am (UTC)no subject
Date: 2010-03-26 04:48 am (UTC)no subject
Date: 2010-03-26 08:13 am (UTC)no subject
Date: 2010-03-26 09:00 am (UTC)(no subject)
From:no subject
Date: 2010-03-26 07:40 pm (UTC)(no subject)
From:no subject
Date: 2010-03-26 08:01 am (UTC)Потому что априори ЗАКАЗЧИК - НЕ СПЕЦИАЛИСТ в области автоматизации, которую он затевает. Это мы специалисты, а он что-то по вершкам схватил и кричит об этом.
no subject
Date: 2010-03-26 08:11 am (UTC)no subject
Date: 2010-03-26 08:12 am (UTC)no subject
Date: 2010-03-26 08:22 am (UTC)Кстати, насчет партиционирования pg - я бы входные очереди по id сделал бы не в RDBMS. Хоть плоские файлы, хоть мнезия. А вот архивы за прошлые периоды(или по мере надобности) - в RDBMS, так анализировать проще, ад хок запросами.
no subject
Date: 2010-03-26 08:32 am (UTC)С селектами смотрим, 8.6M мгновенно, сейчас посмотрим как на 86M будет
no subject
Date: 2010-03-26 08:23 am (UTC)Плюс расход трафика.
Простая арифметика. У тебя парк из 300 единиц техники. Одно дело, когда за 300 SIM карт ты заплатишь по 1 баксу в месяц за трафик при низкой плотности, или по 10 баксов. Для предприятия 300 уе и 3000 уе в месяц - это огромная разница.
Короче, тут чистый маркетинг.
no subject
Date: 2010-03-26 08:34 am (UTC)300 единиц мы с одной головы легко потянем. В общем, во всем этом пока не прослеживается место для оракла, даже на тупо постгресе сегодня уже обнадеживающие результаты. ПО итогам вчерашнего дня.
no subject
Date: 2010-03-26 05:54 am (UTC)2010.03.19 5213
2010.03.20 3031
2010.03.21 3109
2010.03.22 2636
2010.03.23 2232
2010.03.24 2548
2010.03.25 2908
Сюда включено всё - стоянки, повороты, движение.
no subject
Date: 2010-03-26 08:02 am (UTC)no subject
Date: 2010-03-26 08:09 am (UTC)no subject
Date: 2010-03-26 08:20 am (UTC)Это неправильная постанвока вопроса.
Критерий - трек должен быть адаптивным, то есть отрисовка должна быть по критериям поворотов на заданный угол, ускорения и замедления. Плюс гарантированный минимальный период передачи.
У нас по опыту любая специфичная бизнес-логика отрабатывает на настройках 60 минут 15 градусов. Передача идет всегда, и во время стоянок, и ночью. В результате получается с самой психопатической техники типа карьерного самосвала, который ишачит в 3 смены, не более 3000 точек в день, из которых мы можем сделать что угодно.
Хинт: да, бывает неприятная ситуация, когда наша точка интереса находится на пути трека, но по критерию передачи в этой точке не было. У нас на такие случаи отрабатываются механизмы "виртуальных точек". Считается геометрическое пересечение и в этой точке "придумывается" как будто была передача.
no subject
Date: 2010-03-26 08:28 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From: