Растущее признание PostgreSQL в Китае (Huawei и X2)
Последние новости о продвижении PostgreSQL в Китае. Postgres проходит этап бурного развития в Китае, в частности в 2015 г. Postgres внедрила одна из крупнейших компаний, Alibaba начала предоставлять сервисы Postgres в своём открытом облаке, и в целом наблюдается значительный прогресс в признании Postgres. На этом докладе будет представлен обзор успехов Postgres в Китае в 2015 г.
Слайды
Видео
Другие доклады
-
ДДмитрий Мельник ИСП РАН разработчик
Ускорение исполнения запросов в PostgreSQL с использованием JIT-компилятора LLVM
В настоящее время в PostgreSQL для исполнения SQL-запросов используется интерпретатор. Это приводит к накладным расходам, связанным с неявными вызовами функций-обработчиков и проверок, которых можно было бы избежать при создании исполняемого кода "на лету" (JIT-компиляции) под конкретный SQL-запрос: в этом случае во время выполнения уже известна структура используемых таблиц и типы данных. Особенно это актуально для сложных запросов, где производительность процессора является основным ограничением. В настоящий момент существует два известных проекта, реализующих JIT-компиляцию в PostgreSQL: коммерческое решение Vitesse DB и open-source проект PGStorm. В первом проекте за счет использования LLVM JIT авторам удается получить ускорение до 8 раз на тестах из набора TPC-H. Второй проект реализует JIT-компиляцию запроса с использованием CUDA для исполнения его на GPU, что позволяет ускорить выполнение некоторых типов запросов на порядок.
Наша работа посвящена добавлению поддержки JIT-компиляции SQL-запросов в PostgreSQL с использованием компиляторной инфраструктуры LLVM. В докладе будет подробно рассмотрено, как JIT-компиляция может быть использована для ускорения различных этапов исполнения SQL-запросов, а также особенности трансляции SQL-запросов в LLVM-биткод для получения эффективного исполняемого кода. Также будут представлены предварительные результаты тестирования JIT-компилятора на наборе тестов TPC-H.
-
Michael Paquier
PostgreSQL и резервное копирование
Резервное копирование это то, без чего не должна обходится эксплуатация PostgreSQL, поскольку позволяет восстановить систему в случае сбоя.
Мы обсудим, почему резервное копирование необходимо при грамотной эксплуатации PostgreSQL (хотя это и кажется очевидным), а также рассмотрим различные опции, доступные для формирования хорошей стратегии резервирования. На этой основе, поговорим о будущем резервного копирования, особенно в свете различных инструментов резервирания, набирающих популярность у пользователей с большими объемами данных.
-
Marco Slot Citus Data Главный инженер-программист
CitusDB: расширение для масштабирования PostgreSQL
CitusDB — расширение PostgreSQL, позволяющее распределять таблицы в кластере серверов PostgreSQL. Данные разделяются по секциям (шардам) по добавлению (оптимально для массовой загрузки данных временных рядов) или по хешу (для введения данных в реальном времени). Запросы SELECT к распределённым таким образом таблицам прозрачно распараллеливаются в кластере, при этом задействуются все доступные ядра. Также параллельно возможно соединять распределённые таблицы, даже если они разделены не по значению одной колонки. CitusDB исключительно подходит для сценариев использования с анализом в реальном времени, например, для информационных панелей, где нужны быстрые аналитические запросы к динамическим данных и в то же время востребована масштабируемая оперативная база данных. На этом докладе будет освещено внутреннее устройство CitusDB и представлена живая демонстрация крупномасштабного кластера CitusDB.
-
Александр Крижановский ООО "Лаборатория НатСис" Генеральный директор
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.