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.
Слайды
Видео
Другие доклады
-
Andres Freund Citus Data
Улучшая Buffer Manager
Менеджер буферов Postgresql разработан достаточно давно и его возраст даёт о себе знать в некоторых аспектах. Мы обсудим, как он работает сейчас, каковы его недостатки, и что делается сейчас, чтобы их исправить.
- Поиск в кеше обходится дорого
- Таблица сопоставлений буфера организована в виде хеш-таблицы, что затрудняет эффективную реализацию предвыборки, совмещение операция записи и очистки содержимого кеша
- Расширение отношений плохо масштабируется
- Вытеснение из кеша неэффективно
- При вытеснении из кеша замещаются неправильные буферы
-
Alvaro Hernandez 8Kdata CTO
PostgreSQL и Java: прошлое, настоящее и будущее
Java - наиболее часто используемый язык программирования в мире. Как же он поддерживается в PostgreSQL? Какие в нем есть подводные камни и каковы лучшие практики? Java продолжает развиваться, как это сказывается на ее использовании в PostgreSQL?
Несмотря на солидный возраст языка Java, он силен как никогда. Фактически, это язык программирования мира enterprise. И с выхода Java 8, он вернулся в мир стартапов и open source. И сейчас Java становится наиболее распространенным языком для обращения к PostgreSQL.
В этом докладе будет разобрано, как была в прошлом, и, что важнее, как в настоящем, организована работа с PostgreSQL из Java: JDBC, PL/Java и другие, реже используемые средства.
Затем мы заглянем в будущее, чтобы понять, что сейчас ещё разрабатывается, как например новый реактивный драйвер Phoebe для доступа из Java в PostgreSQL, ориентированный на кластеры, конвейерные запросы и полностью асинхронный не JDBC интерфейс. Рассмотрим также, что должно быть сделано на серверной стороне, чтобы Java могла стать основным языком серверного программирования для PostgreSQL.
-
Владимир Сердюк SOFTPOINT Ген. директор
Как построить высокоэффективную (гео)распределённую ИТ-систему при любых каналах связи?
У вас есть распределенная ИТ-система, в ней много узлов, НО:
- Недостаточная оперативность обмена. Задержка синхронизации – часы или дни?
- Помехи пользователям: блокировки во время выполнения обмена?
- Слабая управляемость - статус обмена всех узлов не ясен;
- Низкая стабильность обмена, необходимость ручного управления?
DBReplicaton - технология высокоскоростного обмена данными между базами PostgreSQL. В данном докладе представлено решение, работающее уже в десятках средних и крупных компании России (>2500 активных пользователей, >20 узлов обмена), которое обладает: - Собственной транспортной подсистемой; - Централизованным единым интерфейсом управления и контроля за обменом; - Двусторонним обменом: возможностью работать с данными на изменение во всех узлах, участвующих в обмене; - Высокой скоростью обмена (от 2 секунд).
Дополнительно будет рассказано о необычном применении репликации в различных бизнес-системах.
-
Сергей Бурладян Avito Архитектор баз данных
Администрирование PostgreSQL в Avito
Мой доклад будет посвящён особенностям использования и администрирования PostgreSQL в Debian GNU/Linux в Avito. В частности, таким проблемам как:
- bash скрипты - утилиты pg_* debian - отладка postgres: perf, gdb - COPY без разрывов: psql, pipe - pgbouncer: один, два, ... больше? - cron - мониторинг - очередь на advisory lock - файловый кеш - DDL на нагруженной базе - и т.д.