Мне, наконец, привезли мой электровелосипед Shtenli cross v-8, который везли аж с 4-го мая.
Рама у него оказалась немного короткая, так что пришлось максимально опустить седло, чтобы при торможении и старте иметь возможность касаться ногами земли, из-за чего заметно снизилось удобство езды на педалях, зато повысилась безопасность.
Пока немного раздражает ручка газа, включающая, когда не надо, например, когда везёшь велосипед рядом. Причем, сразу на полную скорость. Вроде там должно быть 3 режима езды, но на всех трёх положениях переключателя одна и та же скорость, а так же работают как ручка тормоза, так и ассистент.
Есть ли гайды по настройке компа моего колхозника?
Он максимально простой, у него только одна кнопка.
Ещё, есть вопрос по возможности установить на место заднего пассажирского сиденья со спинкой (я всё равно пассажиров не вожу), грузового короба с ВБ.
Можно ли это сделать без проблем, или нужно будет докупать дополнительные крышки для контроллера? И не будет ли это нарушением гарантии? (В инструкции по пользованию почти ничего не говорится про настройку велосипеда, зато любой сих может стать основанием для отказа в гарантийном ремонте(((()
Режим ассистента работает довольно забавно: пару раз прокручиваешь педали почти без сопротивления, а потом идёт "бодрящий пинок", включается мотор, и порой ноги слетают с педалей, которые довольно маленькие под мой сороковой размер. Наверное, нужно будет поменять на большие. Всё же, педали это хорошее подспорье, если надо проехать на короткую дистанцию. И немного экономит заряд, что важно, т.к., насколько я поняла, рекуперации на велосипедах нет, так что, батарея сама не подзаряжается.
Ось X - точка наблюдения. Ось Y - операционная скорость
Средний прирост производительности в эксперименте-7 по сравнению с экспериментом-1 составил 13.30%
Максимальный прирост производительности в эксперименте-7 по сравнению с экспериментом-1 составил 35.83%
Вывод
Для обеспечения эффективного обслуживания и повышения производительности СУБД необходимо запланировать ресурсы - в частности на выполнение регулярных операций autovacuum.
В процессе проведены пусконаладочные работы: - роутер Mikrotik RB3011UiAS; - коммутаторы SNR-S2982G-24T-POE, SNR-S298289G-24TX-POE, SNR-S2200G-8T-POE, Planet WGS-4215-16P2S; - бесшовный wi-fi на базе контроллера Ubiquiti CLOUD KEY GEN2 UNIFI UCK-G2-PLUS, точек доступа UAP-AC-Pro и U6-Pro; - sip-телефония на базе АТС Grandstream UCM6000A; - видеонаблюдение на базе севера Trassir; - контроль доступа Sigur; - iptv Hoteza.
Может быть когда ни будь в будущем, нейросети и смогут реально помогать в экспериментах , пока лучше не доверять их ответам.
К вопросу о том, что нейросеть в обозримом будущем не может заменить инженера , обладающего данными экспериментов .
У нейросети просто нет экспериментальных данных, но проблема не в этом. Глобальная проблема нейросетей — выдача ответа в условиях недостатка данных.
Сказано уже 100500 раз — ВСЕ ОТВЕТЫ НЕЙРОСЕТИ НУЖНО ПРОВЕРЯТЬ ЭКСПЕРЕМЕНТАЛЬНО, НИКАКОЙ ИНФОРМИИ НЕЙРОСЕТЕЙ ДОВЕРЯТЬ НЕЛЬЗЯ .
Статистически обработать огромные массивы информации — да, тут нейросеть поможет. Но, сделать исследования нового — тут нейросеть принципиально бессильна, у нее просто нет данных. А результат она выдает.
Вводные данные
Оценить влияние кардинального снижения параметра хранения таблиц fillfactor c базового значения 100 до 50, при агрессивной настройке autovacuum.
Допустим какой-то продвинутый DBA ,
следующий в русле новых тенденций решил не тратить время и задал вопрос нейросети DeepSeek:
Как повлияет уменьшение параметра fillfactor c 100 до 50 для таблицы с количеством строк примерно 60000000 на количество и время работы autovacuum для СУБД PostgreSQL c ресурсами CPU=2 , RAM=2GB при интенсивных операциях SELECT + UPDATE примерно в среднем 1000 транзакций в секунду, при нагрузке от 5 до 48 одновременных сессиях, при агрессивных настройках autovacuum для тестовой таблицы : autovacuum_vacuum_scale_factor=0 и autovacuum_vacuum_threshold=1000 ?
Ответ нейросети DeepSeek
Уменьшение параметра fillfactor с 100 до 50 для таблицы с 60 млн строк в PostgreSQL при указанных условиях существенно повлияет на работу autovacuum, преимущественно негативно. Вот анализ последствий:
1. Увеличение размера таблицы и фрагментации
Физический рост таблицы: При fillfactor=50 каждая страница таблицы заполняется только на 50%, что удваивает её физический размер (с ~60 млн строк до эффективных ~120 млн страниц). Это увеличит I/O-нагрузку и объём данных для обработки autovacuum.
Рост индексов: Индексы также увеличатся, так как новые версии строк (от UPDATE) будут чаще размещаться в новых страницах (из-за нехватки места в исходных), что дополнительно нагрузит autovacuum.
2. Частота запуска autovacuum
Агрессивные настройки: autovacuum_vacuum_threshold=1000 и autovacuum_vacuum_scale_factor=0 означают, что autovacuum запускается после каждых 1000 изменений (UPDATE/DELETE).
Интенсивность UPDATE: При 1000 транзакций/сек (часть из которых — UPDATE) порог в 1000 изменений будет достигаться каждую секунду. Это приведёт к почти непрерывной работе autovacuum.
3. Время работы autovacuum
Увеличение длительности циклов: Autovacuum должен сканировать вдвое больше страниц (из-за fillfactor=50), что резко увеличит время каждого запуска. Например: При fillfactor=100: сканирование 1 млн страниц. При fillfactor=50: сканирование ~2 млн страниц.
Ресурсные ограничения: Слабые ресурсы (2 CPU, 2 GB RAM) не позволят autovacuum справляться с возросшим объёмом. Нехватка памяти вызовет активное использование диска (I/O), замедляя процесс.
4. Проблемы из-за нехватки ресурсов
Конкуренция за I/O: Autovacuum будет постоянно читать/писать данные на диск, конкурируя с пользовательскими запросами (SELECT/UPDATE). Это увеличит задержку транзакций.
Нехватка памяти: Буферный кэш (shared_buffers) ограничен ~512 MB (25% от 2 GB RAM). Таблица размером > 2x не поместится в кэш, что вызовет чтение с диска и замедлит все операции.
Риск блокировок: Длительные циклы autovacuum могут конфликтовать с пользовательскими транзакциями, особенно при 48 одновременных сессиях.
5. HOT-обновления: частичное смягчение
Преимущество fillfactor=50: Свободное место в страницах может повысить долю HOT-обновлений (когда новые версии строк помещаются в ту же страницу). Это уменьшит фрагментацию и нагрузку на индексы.
Ограниченная польза: На фоне удвоенного объёма таблицы и слабых ресурсов этот эффект не компенсирует общее снижение производительности.
6. Риск накопления dead tuples
Autovacuum может не успевать: При такой частоте UPDATE и нехватке ресурсов autovacuum будет отставать от нагрузки. Это вызовет: Рост dead tuples. Увеличение I/O (из-за чтения "мертвых" строк). Замедление SELECT (из-за необходимости фильтрации мёртвых версий). Блот (bloat) таблицы и индексов.
Рекомендации
Не снижать fillfactor до 50 на такой конфигурации. Оптимально: fillfactor=80–90 (если требуются HOT-обновления).
Увеличить порог autovacuum: Например, autovacuum_vacuum_threshold = 10000 (вместо 1000), чтобы сократить частоту запусков.
Вывод: Уменьшение fillfactor до 50 на маломощном сервере с агрессивным autovacuum вызовет хроническую нехватку ресурсов, рост времени вакуумирования и общее снижение производительности. Без увеличения RAM/CPU это изменение не рекомендуется.
«Вот оно как» — подумает продвинутый DBA , следующий в русле новых тенденций и не будет менять параметр fillfactor.
Другой инженер, якудза старой школы
не верит бездушным алгоритмам и решает проверить всё лично.
И приходит к очень интересным, и прямо противоположным результатам.
Итоги
Для данной СУБД и данного сценария нагрузки , уменьшение параметра хранения таблиц на 50% c 100 до 50 , повысило эффективность работы autovacuum:
Количество запусков autovacuum увеличилось на 261% c 193 до 697
Максимальное время работы autovacuum уменьшилось на 29% с 936 сек. до 663 сек.
Среднее время работы autovacuum уменьшилось на 73% с 46 сек. до 12 сек.
Предельная нагрузка на autovacuum увеличивалась на 50% с 8 до 12 соединений.
Молодой DBA, следующий в русле новых тенденций и доверяющий математическим алгоритмам статистической обработки текстов — потерял шанс сильно улучшить работу одного из ключевых механизмов СУБД PostgreSQL — autovacuum.
Старый, тертый жизнью и не доверяющий новым веяниям DBA — получил конкретный полезный результат и запланировал новые эксперименты по оптимизации и настройке СУБД.
Лет 5-7 назад была взял фетбайк с рук у знакомого, всё работала хорошо. Года 3-4 не обслуживался. Потом велосипед забрал себе и нашлась большая проблема. На велосипеде установлен какой-то гибрид тормозов. Сами тормоза гидравлические, а в действие приводится тросиком. Помогите найти название или видео как их заправлять и обслуживать. На последнем фото на велосипеде
По агрессивному автовакууму , предварительно , чудес не бывает - за повышение производительности при средней нагрузке придётся платить снижением производительности при нагрузке близкой к максимальной. Если autovacuum worker работает постоянно(а при высокой нагрузке иначе нет смысла), ресурсы CPU кончаются раньше . Обслуживание СУБД требует ресурсов . Но , конечно можно и не обслуживать , работает же. А +/- 5-10% изменения производительности СУБД современные приложения и не заметят.
После анализа результатов экспериментов , будут данные по ожиданиям . И в общем-то, тему можно закрывать , хотя с академической точки - интересно будет протестировать параметр autovacuum_cost_delay.
P.S. Так выглядит агрессивный автовакуум PostgreSQL - по мнению нейросети 🤪