Страница 1 из 2

История phistory + phistory_queue

Добавлено: Ср сен 22, 2021 10:25 am
alemoke
Доброго времени суток!

Случилась проблема с записью истории phistory. Все проработало 9 месяцев и собрало около 200к записей. На всех объектах стоит запись за 1000 дней. Объёма на диске более чем достаточно. Началась копится очередь phistory_queue. Удалил опять работает некоторое время, после чего начинает копить. Количество объектов или частота опроса не поменялась. Может подскажете каким советом или алгоритмом в целом как это работает и в какую сторону смотреть ?

Re: История phistory + phistory_queue

Добавлено: Ср сен 22, 2021 5:13 pm
Logrus
судя по скринам у вас не только с очередью проблемы
саму табличку очереди сделайте тип мемори, а не иннодб, для начала

Re: История phistory + phistory_queue

Добавлено: Ср сен 22, 2021 8:43 pm
alemoke
Logrus писал(а):
Ср сен 22, 2021 5:13 pm
судя по скринам у вас не только с очередью проблемы
саму табличку очереди сделайте тип мемори, а не иннодб, для начала
сделаю, а с чем еще ?

Re: История phistory + phistory_queue

Добавлено: Ср сен 22, 2021 9:35 pm
Logrus
на первом скрине куча мусорных свойств и циклов
на втором иннодб много где, и значит там много подобного, как и ошибок в систем еррорс дата
по третьему, посмотреть бы вообще необходимость такой глубины и количества свойств с историей это в модуле оптимайзер можно

в общем имхо ничего ни где не настроено

Re: История phistory + phistory_queue

Добавлено: Чт сен 23, 2021 11:55 am
alemoke
Для изменения phistory_queue в мемори пройдётся указать размерность для text полей.
Учитывая что дискретных значений в моем случаи больше чем аналоговых, это перерасход.

Циклов мусорных может и много но они все остановлены. С свойствами та же история, они есть, не меняются, соответственно в phistory не попадают ( я пересмотрел все содержания таблицы). Туда попали только те данные которые мне нужны.

Скорее всего происходит блокировка таблицы phistory после чего все идет в тартарары.

Ошибки в сустем еррорс дата очень старые, сейчас очистил полностью. Понаблюдаю...

Re: История phistory + phistory_queue

Добавлено: Чт сен 23, 2021 12:19 pm
xor
alemoke писал(а):
Чт сен 23, 2021 11:55 am
Для изменения phistory_queue в мемори пройдётся указать размерность для text полей.
Учитывая что дискретных значений в моем случаи больше чем аналоговых, это перерасход.

Циклов мусорных может и много но они все остановлены. С свойствами та же история, они есть, не меняются, соответственно в phistory не попадают ( я пересмотрел все содержания таблицы). Туда попали только те данные которые мне нужны.

Скорее всего происходит блокировка таблицы phistory после чего все идет в тартарары.

Ошибки в сустем еррорс дата очень старые, сейчас очистил полностью. Понаблюдаю...
судя по росту очереди истории, ваша система не успевает ее разгребать. может быть несколько причин для этого.
разгребание очереди состоит в переносе данных из нее в таблицу истории. по меркам мдм, она у вас довольно большая.
при каждой попытке записи в нее происходит ее блокировка. я б предложил посмотреть в сторону изменения ее типа на инно дб. там блокируется не вся таблица, а только изменяемая запись. с одной стороны, это может увеличить скорость обработки, с другой - может привести к конфликтам записи - я не видел в мдм обработки конфликтов для инно дб(
у себя я в таблице истории держу только три месяца, каждое первое число вырезаю данные из пхистори старые и отправляю в другую таблицу - архив.

Re: История phistory + phistory_queue

Добавлено: Чт сен 23, 2021 2:55 pm
Logrus
alemoke писал(а):
Чт сен 23, 2021 11:55 am
Для изменения phistory_queue в мемори пройдётся указать размерность для text полей.
Учитывая что дискретных значений в моем случаи больше чем аналоговых, это перерасход.

Циклов мусорных может и много но они все остановлены. С свойствами та же история, они есть, не меняются, соответственно в phistory не попадают ( я пересмотрел все содержания таблицы). Туда попали только те данные которые мне нужны.

Скорее всего происходит блокировка таблицы phistory после чего все идет в тартарары.

Ошибки в сустем еррорс дата очень старые, сейчас очистил полностью. Понаблюдаю...
на гите в модули об!ект клас общий посмотрите, там эти поля чар255 и никак не текст, далее в пхистори и пвалюес они тоже чар255

модулем оптимайзер анализ и скрины

у вас вообще цикл пхистори остановлен, но хз как долго и за какое время там накопилось 5к значений, что в принципе ихо тоже очень много, фильтровать нужно запись в историю!

п.с. смысл советовать, когда не воспринимают их совсем :(
п.п.с убрать иннодб не просто так сказал, она может поломаться и далее цикл упасть, и вообще зачем очередь писать на диск, а не в память

Re: История phistory + phistory_queue

Добавлено: Пт сен 24, 2021 10:29 am
alemoke
Logrus писал(а):
Чт сен 23, 2021 2:55 pm
alemoke писал(а):
Чт сен 23, 2021 11:55 am
Для изменения phistory_queue в мемори пройдётся указать размерность для text полей.
Учитывая что дискретных значений в моем случаи больше чем аналоговых, это перерасход.

Циклов мусорных может и много но они все остановлены. С свойствами та же история, они есть, не меняются, соответственно в phistory не попадают ( я пересмотрел все содержания таблицы). Туда попали только те данные которые мне нужны.

Скорее всего происходит блокировка таблицы phistory после чего все идет в тартарары.

Ошибки в сустем еррорс дата очень старые, сейчас очистил полностью. Понаблюдаю...
на гите в модули об!ект клас общий посмотрите, там эти поля чар255 и никак не текст, далее в пхистори и пвалюес они тоже чар255

модулем оптимайзер анализ и скрины

у вас вообще цикл пхистори остановлен, но хз как долго и за какое время там накопилось 5к значений, что в принципе ихо тоже очень много, фильтровать нужно запись в историю!

п.с. смысл советовать, когда не воспринимают их совсем :(
п.п.с убрать иннодб не просто так сказал, она может поломаться и далее цикл упасть, и вообще зачем очередь писать на диск, а не в память
Я делал скриншоты когда система phistory упала в стагнацию с очередью.
Писать очередь в память есть как и плюсы так и минусы. Основной минус, что будет если память закончится ? Упадет не только цикл phistory но и вся логика. Данных не так много, примерно 15 температурных датчиков и около 20 дискретных значений. Частота примерно 5 секунд. 5к записей это за сутки. На данном этапе так, потому что анализируются все переходные процессы системы и места оптимизации. Пока все крутится на Raspberry Pi 4 (4GB) если не удастся, оптимизировать под него, перейдем на машину по мощнее в которую можно будет доставить приличное количество памяти и воспользоваться вашим советом про мемори.

Перевел phistory с MyISAM в InnoDB. Ждал что select и графики которые строятся на основе phistory будут отрисовываться медленнее. Но нет, наоборот стало гораздо быстрее. После этого слил содержание phistory в другую таблицу. Оптимизатор настроил на 3 месяца. Пока, сутки все хорошо.

Re: История phistory + phistory_queue

Добавлено: Пт сен 24, 2021 2:21 pm
Logrus
сорри, умываю руки, вообще не понял зачем вы задавали вопрос

Re: История phistory + phistory_queue

Добавлено: Сб сен 25, 2021 1:41 pm
xor
alemoke писал(а):
Пт сен 24, 2021 10:29 am
...
Перевел phistory с MyISAM в InnoDB. Ждал что select и графики которые строятся на основе phistory будут отрисовываться медленнее. Но нет, наоборот стало гораздо быстрее. После этого слил содержание phistory в другую таблицу. Оптимизатор настроил на 3 месяца. Пока, сутки все хорошо.
интересует опыт использования инно дб для истории - понаблюдайте, не будут теряться данные при частой записи?