title

text

Александр Крижановский
Александр Крижановский ООО "Лаборатория НатСис" Генеральный директор
17:00 05 февраля
45 мин

Linux VMM для разрабочиков СУБД

В докладе будет рассказано о том, как Linux работает с виртуальной памятью. Будут освещены следующие вопросы:

  • устройство таблицы страниц в x86-64, переключение контекста, page fault;
  • устройство системы управления виртуальной памятью (VMM) в Linux;
  • методы вытеснение странц в Linux, page cache и анонимные страницы;
  • huge и gigantic pages, transparent huge pages;
  • как работает mmap(2) и что дают madvise(2), msync(2) и пр.;
  • почему большие СУБД не используют mmap(2), а реализуют свой пул страниц;
  • и, конечно, как потюнить VMM в Linux с помощью sysctl.

Слайды

Видео

Другие доклады

  • Камиль Исламов
    Камиль Исламов Stickeroid Ai CTO
    22 мин

    Оптимизация обработки данных аналитических отчётов

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

  • Николай Рыжиков
    Николай Рыжиков Health Samurai CTO
    45 мин

    PL/v8 в медицине

    Мы разрабатываем медицинскую базу данных - fhirbase, основанную на PostgreSQL и современном стандарте обмена медицинской информацией FHIR. Первая версия была написана с использованием SQL и PL/PgSQL, однако она достигла предела своей сложности и была полностью переписанна на PLv8/javascript. В докладе я расскажу про архитектуру fhirbase и то, почему мы выбрали PLv8. Про комфортную среду разработки, которая позволяет разрабатывать код и тесты в Node.JS и потом деплоить этот код в PostgreSQL. Поделюсь проблемами, с которыми мы столкнулись. Порассуждаем о переиспользовании библиотек и эко-системы javascript для разработки бизнес-логики внутри PostgreSQL. Расскажу про идеи PostgREST и no-backend приложений на PostgreSQL.

  • Олег Иванов
    Олег Иванов Postgres Professional Разработчик
    22 мин

    Применение методов машинного обучения для улучшения планировщика

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

  • Ильдар Мусин
    Ильдар Мусин Postgres Professional Разработчик
    22 мин

    Секционирование без границ

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