Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Реалистичный симулятор игры бильярд. Играйте в Бильярд 3D: Русский бильярд, как в настоящей бильярдной!

Бильярд 3D: Русский бильярд

Симуляторы, Спорт, Настольные

Играть

Топ прошлой недели

  • Rahlkan Rahlkan 1 пост
  • Tannhauser9 Tannhauser9 4 поста
  • alex.carrier alex.carrier 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
KDvinsky
KDvinsky
2 месяца назад

Консьерж Алиса. "Яндекс" нашел применение голосовому помощнику⁠⁠

"Яндекс" в партнерстве с девелопером MR Group запускает пилотный проект в жилом комплексе Slava в Москве, где голосовой помощник "Алиса" не просто включает музыку, а управляет домофоном, видеонаблюдением, шлагбаумом и выдает гостевые пропуска.

По сути, "Алиса" становится цифровым консьержем. Отличный пример сокращения низкопроизводительных рабочих мест! Проект реализуется через платформу Ujin, а цель амбициозная – занять до трети рынка цифровых решений в новостройках уже к 2030 году. Рынок немаленький – порядка 20 млрд рублей. И это только начало: в июне стартует отдельный проект по интеграции в дома вторичного жилья – через платформу "Наш дом" и оператора домофонов "Спутник".

Консьерж Алиса. "Яндекс" нашел применение голосовому помощнику Развитие, Экономика, Яндекс, Россия, Цифровизация, Автоматизация, Яндекс Алиса, Жилье, ЖКХ, Производительность, Технологии, Инновации, Telegram (ссылка)

Что это значит? Это значит, что цифровизация – больше не абстрактный лозунг, а реальность повседневной жизни. Интеграция голосовых помощников и цифровых платформ в жилую инфраструктуру – это шаг к технологически зрелой экономике, где рутинные функции, вроде выдачи пропусков или контроля доступа, переходят в ведение умных систем.

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

Еще больше интересных материалов в моем telegram-канале "Константин Двинский"

Не забываем ставить лайк :)
Подписывайтесь, чтобы ничего не пропустить!

Показать полностью 1
Развитие Экономика Яндекс Россия Цифровизация Автоматизация Яндекс Алиса Жилье ЖКХ Производительность Технологии Инновации Telegram (ссылка)
4
kznalp
kznalp
2 месяца назад
Серия СУБД PostgreSQL

Эффект наблюдателя⁠⁠

Эффект наблюдателя Субд, Postgresql, Исследования, Производительность

Наблюдение за событием - влияет на событие.

На всех конференциях - стандартный вопрос, по окончании практически любого доклада о очередном инструменте анализа производительности СУБД :

А как это влияет на производительность СУБД ?

С методологической точки зрения, вариантов использования сбора и анализа метрик производительности всего 2 :

  1. Не использовать сбор и мониторинг метрик производительности СУБД и не иметь никакой достоверной информации о причинах изменения производительности СУБД. Зато - никакого влияния.

  2. Использовать сбор метрик производительности СУБД, иметь информацию о причинах изменения производительности и учитывать влияние сбора метрик .

Или проще говоря

  • в первом случае: меньше знаешь - крепче спишь ,

  • во-втором : за все надо платить.

С точки зрения физики - СУБД не является исключением и эффект наблюдателя , конечно же имеет место и да, любой сбор метрик производительности СУБД - влияет на производительность СУБД .

И это влияние можно оценить не только качественно но и количественно и обязательно нужно учитывать при анализе производительности СУБД:

PG_HAZEL : Влияние расчета медианного времени на производительность СУБД.

Показать полностью 1
[моё] Субд Postgresql Исследования Производительность
0
kznalp
kznalp
2 месяца назад
Postgres DBA
Серия СУБД PostgreSQL

PG_HAZEL : Влияние checkpoint_timeout на производительность/скорость СУБД PostgreSQL - итог⁠⁠

Взято с основного технического канала Postgres DBA

PG_HAZEL : Влияние checkpoint_timeout на производительность/скорость СУБД PostgreSQL - итог Субд, Postgresql, Мониторинг, Производительность, Исследования, Длиннопост

Для лучшей скорости необходима настройка под конкретные условия трассы .

Задача

Определить качественное и количественное влияние на производительность тестовой СУБД изменения параметра checkpoint_timeout для сценария нагрузки "Mix".

checkpoint_timeout (integer)

Максимальное время между автоматическими контрольными точками в WAL. Если это значение задаётся без единиц измерения, оно считается заданным в секундах. Допускаются значения от 30 секунд до одного дня. Значение по умолчанию — пять минут (5min).

Postgres Pro Enterprise : Документация: 15: 19.5. Журнал предзаписи : Компания Postgres Professional

Предварительный эксперимент

PG_HAZEL : влияние изменения checkpoint_timeout на производительности СУБД - часть 1.

Сравнительные эксперименты:

  1. Уменьшенное значение: checkpoint_timepout = 60 (1 минут).

  2. Значение по умолчанию: checkpoint_timepout = 300 (5 минут).

  3. Увеличенное значение: checkpoint_timepout = 900 (15 минут).

PG_HAZEL : Сценарий смешанной нагрузки "Mix" - для сравнения скорости СУБД.

Результаты экспериментов

PG_HAZEL : Влияние checkpoint_timeout на производительность/скорость СУБД PostgreSQL - итог Субд, Postgresql, Мониторинг, Производительность, Исследования, Длиннопост

Ось X - общая нагрузка на СУБД. Ось Y - апроксимированные значения операционной скорости.

PG_HAZEL : Влияние checkpoint_timeout на производительность/скорость СУБД PostgreSQL - итог Субд, Postgresql, Мониторинг, Производительность, Исследования, Длиннопост

Ось X - общая нагрузка на СУБД. Ось Y - операционная скорость.

Итог:

Для данной СУБД в сценарии смешанной нагрузки "Mix":

  1. Максимальная скорость СУБД достигается при значении параметра checkpoint_timeout = 60 при общей нагрузке 18 соединений.

  2. Максимальная нагрузка , после которой скорость СУБД начинает снижаться достигается при значении параметра checkpoint_timeout = 300 при общей нагрузке 26 соединений.

  3. При предельной общей нагрузке 111 соединений наибольшая скорость СУБД достигается при значении параметра checkpoint_timeout = 900.

Показать полностью 2
[моё] Субд Postgresql Мониторинг Производительность Исследования Длиннопост
1
2
kznalp
kznalp
2 месяца назад
Postgres DBA
Серия СУБД PostgreSQL

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов⁠⁠

Взято с основного технического канала Postgres DBA

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Классическая дилемма использования индексов - либо быстрее читать, либо быстро добавлять.

Начало экспериментов :

PG_HAZEL : ожидания СУБД PostgreSQL при отсутствии индексов.

Задача эксперимента

Определение и анализ характерных ожиданий, вызванных использованием индексов при массовых операциях INSERT.

Сравнительные эксперименты

Эксперимент-1 : Стандартный сценарий "Insert only"

Эксперимент-2 : Cценарий "Insert only" с использование индексов на таблице.

Сценарий "Insert only"

INSERT INTO pgbench_history (tid, bid, aid, delta, mtime)

VALUES ( current_tid , current_bid , current_aid , current_delta , CURRENT_TIMESTAMP );

Тестовая таблица

Table "public.pgbench_history"

Column | Type | Collation | Nullable | Default

--------+-----------------------------+-----------+----------+---------

tid | integer | | |

bid | integer | | |

aid | integer | | |

delta | integer | | |

mtime | timestamp without time zone | | |

filler | character(22) | | |

Foreign-key constraints:

"pgbench_history_aid_fkey" FOREIGN KEY (aid) EFERENCES pgbench_accounts(aid)

"pgbench_history_bid_fkey" FOREIGN KEY (bid) REFERENCES pgbench_branches(bid)

"pgbench_history_tid_fkey" FOREIGN KEY (tid) REFERENCES pgbench_tellers(tid)

Тестовая таблица с добавленными индексами (индексы по столбцам aid , delta, mtime)

Table "public.pgbench_history"

Column | Type | Collation | Nullable | Default

--------+-----------------------------+-----------+----------+---------

tid | integer | | |

bid | integer | | |

aid | integer | | |

delta | integer | | |

mtime | timestamp without time zone | | |

filler | character(22) | | |

Indexes:

"pgbench_history_idx1" btree (aid)

"pgbench_history_idx2" btree (delta)

"pgbench_history_idx3" btree (mtime)

Foreign-key constraints:

"pgbench_history_aid_fkey" FOREIGN KEY (aid) REFERENCES pgbench_accounts(aid)

"pgbench_history_bid_fkey" FOREIGN KEY (bid) REFERENCES pgbench_branches(bid)

"pgbench_history_tid_fkey" FOREIGN KEY (tid) REFERENCES pgbench_tellers(tid)

Операционная скорость и медианное время тестового SQL запроса

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Сравнительная таблица операционной скорости и медианного времени выполнения тестового запроса

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Ось X - нагрузка . Ось Y - операционная скорость.

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Ось X - нагрузка. Ось Y - медианного время выполнения.

Результат

Создание дополнительных индексов ухудшило скорость на 16-18% и увеличило время на 24-28%.

Корреляция между типами ожиданий и ожиданиями СУБД

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Сравнительная таблица ожиданий и корреляции для экспериментов

Результат

  1. Использование индексов резко увеличивает ожидания типа IO и LWLock.

Корреляция между типом ожидания и событиями ожидания при выполнении тестового запроса

Тип ожидания "IO"

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Сравнительная таблица по ожиданиям и корреляциям тестового запроса по типу ожидания IO

Результат

  • Резкий рост корреляции с ожиданием DataFileRead

Тип ожидания "Lock"

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Сравнительная таблица по ожиданиям и корреляциям тестового запроса по типу ожидания Lock

Тип ожидания "LWLock"

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Сравнительная таблица по ожиданиям и корреляциям тестового запроса по типу ожидания LWLock

PG_HAZEL : ожидания СУБД PostgreSQL при избытке индексов Субд, Postgresql, Тестирование, Производительность, Длиннопост

Относительное изменение ожиданий по типу LWLock

Результат

Резкий рост корреляции с событием ожидания CheckpointerComm.

Итог и результаты анализа

Отключение индексов при массовых операциях вставки данных дает прирост операционной скорости 16-18% .

Характерными признаками наличия лишних индексов при преобладании операция вставки по таблице являются:

  1. Высокое значение коэффициента корреляции с событием ожидания IO/DataFileRead , LWLock/BufferMapping и LWLock/CheckpointerComm

BufferMapping : Ожидание при связывании блока данных с буфером в пуле буферов.

CheckpointerComm : Ожидание при управлении запросами fsync.

Показать полностью 9
[моё] Субд Postgresql Тестирование Производительность Длиннопост
1
kznalp
kznalp
2 месяца назад
Postgres DBA
Серия СУБД PostgreSQL

Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL"⁠⁠

Взято с основного технического канала Postgres DBA

Начата работа над докладом для осенних конференций Heisenbug и PgProDay .

Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Презентация по докладу "Корреляционный анализ ожиданий СУБД PostgreSQL" Конференция, Производительность, Субд, Postgresql, Длиннопост
Показать полностью 5
[моё] Конференция Производительность Субд Postgresql Длиннопост
3
983
Hawchik
2 месяца назад

Отбивная за секунды⁠⁠

И даже не надо раздражать соседей отбивая кусок мяса.

Мясо Отбивная Автоматизация Инженер Производство Изобретения Промышленность Короткие видео Быстро Производительность Бизнес Видео Вертикальное видео
127
kznalp
kznalp
2 месяца назад
Серия ITшное

Каюсь грешен. Но , с другой стороны - может кому и пригодится . Значит - не такой уж и грех⁠⁠

Стало интересно - а как сейчас с материалами по статистическому анализу производительности СУБД ?
Год назад - практически ничего, кроме пары статей 5ти летней давности по мат.статистике на Хабре, не было . По PostgreSQL - вообще ничего не было.

Пусть нейросеть поищет и проанализирует.

Каюсь грешен. Но , с другой стороны - может кому и пригодится . Значит - не такой уж и грех Нейронные сети, DeepSeek, Postgresql, Производительность, Статистика, Длиннопост

И ведь нашла и проанализировала и выдала осмысленный результат:

Каюсь грешен. Но , с другой стороны - может кому и пригодится . Значит - не такой уж и грех Нейронные сети, DeepSeek, Postgresql, Производительность, Статистика, Длиннопост

Как тут не вспомнить классику

Каюсь грешен. Но , с другой стороны - может кому и пригодится . Значит - не такой уж и грех Нейронные сети, DeepSeek, Postgresql, Производительность, Статистика, Длиннопост

Из 4х ключевых источников : 3 ссылки на мои статьи , а одна это вообще основная тема в течении прошедшего года. Скоро будет доклад на конференциях по данной тематике.

Тем, кто будет после меня заниматься темой статистического анализа производительности СУБД PostgreSQL , будет проще - материалы и фундамент для исследований и развития уже есть.
И это хорошо. Надо развивать DBA из ремесла и алхимии в науку и инженерию.

Каюсь грешен. Но , с другой стороны - может кому и пригодится . Значит - не такой уж и грех Нейронные сети, DeepSeek, Postgresql, Производительность, Статистика, Длиннопост

P.S. А вот YandexGPT - не смог помочь.

Показать полностью 4
[моё] Нейронные сети DeepSeek Postgresql Производительность Статистика Длиннопост
2
2
awfun
2 месяца назад
Лига программистов

Программист про (преждевременную) оптимизацию⁠⁠

Всем привет, работаю java разработчиком больше 10 лет. У написанного кода есть разные характеристики: производительность, читаемость, покрытие тестами, стоимость строки итд. Команды разработки могут управлять этими характеристиками в некоторых пределах. В этом посте хотел бы осветить вопрос оптимизации производительности.

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

List<String> visitorIds;
Set<String> visitorIds;
print(visitorIds.contains("123"));

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

Сложнее обстоит дело с индексами в БД - есть инструменты чтобы выбрать правильные индексы, но этот вопрос нужно решать на месте. Не добавил индекс - будет медленное чтение, добавил индекс - медленная запись и повышенное потребление диска. Потребовалось добавить индекс на большом размере данных - нужно останавливать сервис.

Еще сложнее обстоит вопрос с настройкой ресурсов - какой размер пула потоков установить? Кто съел все коннекты к бд, почему повышенное потребление памяти? На этом этапе приходится подключать средства профилирования. Для получения воспроизводимого результата нужно иметь процедуру нагрузочного тестирования. Как будем мерять производительность - по пропускному потоку или по задержке?

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

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

  • перенести всю логику из java в sql (код админки, нагрузка ~100 запросов в день)

  • ускорить расчет закрытия предыдущего дня (при том что расчет не нуждался в ускорении)

  • использовать параллелизацию (что ломает компоненты, ориентированные на thread per request подход)

Общая рекомендация здесь такая - если вы не знаете, что делаете - лучше не делать ничего. Сделайте по-простому, и потом улучшайте там где вылезают самые острые проблемы. Желаю всем интересных задач и достойной оплаты!

Показать полностью
[моё] Программирование IT Разработка Производительность Текст
20
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии