title

text

Guangzhou  Zhang
Guangzhou Zhang AliBaba
09:00 05 февраля
мин

Алибаба и PostgreSQL

Наш облачный сервис по использованию реляционных баз данных предоставляет доступ к Постгресу (aliyun.com, в настоящий момент крупнейшее частное облако в Китае). Мы также используем Постгрес для наших внутренних приложений и готовы поделиться своим опытом.

слайды

Видео

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

  • Юрий Соболев
    Юрий Соболев ООО "МедиаТех" Генеральный Директор

    PostgreSQL как ядро биржи интернет-рекламы Adsterra.com

    Общая информация об adsterra.com

    • adsterra.com - биржа интернет рекламы
    • В данный момент имеет порядка 150 млн показов баннеров в сутки.120 положение в alexa.com на 30.11.2015. Записывает в postgresql до 10000(и больше) событий в секунду. Читает до 5000
    • 20 отдельных серверов под БД с различными ролями
    • Активно использует логику внутри БД. Много PL/pgsql и SQL функций.

    Причины выбора Postgresql

    • История создания adsterra.com.
    • Сжатые сроки отведенные на разработку определили выбор в пользу готовых систем хранения данных.
    • Postgresql привлек своей бесплатностью и рядом фишек, которых не было у конкурентов. Некоторые в итоге оказались полезными, некоторые не очень.

    Описание архитектуры проекта

    • Общая схема взаимодействия
    • Роли групп серверов
    • Использование различных методов для взаимодействия серверов: Потоковая репликация, Londiste, postgres_fdw. Плюсы и минусы каждого.
    • Шардинг
    • Использование SQL под OLTP

    Проблемы возникшие в ходе разработки/использования и варианты решения:

    • Материализованные представления. Проблемы с обновлением и поддержкой. Что сделали в итоге.
    • Londiste. Какие проблемы были решены в ходе разработки, а какие так и не были.
    • Проблемы потоковой репликации.
    • Автовакум и вакум.
    • Странности планировщика.
    • Конкурентный доступ.

    Крутые штуки Postgresql, которые сильно помогли

    • Массивы, intarray и GIN индексы. Но не все гладко.
    • Партиционирование. Но не все есть, что хочется.
    • PL/pgsql. Но не всегда следует его использовать.
    • unlogged таблицы. Но с умом.

    Текущие разработки и нерешенные проблемы

    • Реализация колоночной аналитики штатными средствами.
    • Проблемы странных планов запросов.
    • Логическая репликация мечты
    • Мультимастер...

  • Александр Крижановский
    Александр Крижановский ООО "Лаборатория НатСис" Генеральный директор
    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.

  • Иван Гончаров
    Иван Гончаров IBM
    45 мин

    Почему IBM Power8 - оптимальная платформа для PostgreSQL

    Что такое платформа IBM POWER8? Благодаря каким особенностям архитектуры, получается достигать большей производительности и масштабируемости PG по сравнению с x86_64? Производительность ядра, подсистемы памяти, процессорного интерконнекта и ввода/вывода. Уникальные и доступные только на POWER8 "фишки". Опыт тестирования как pgbench, так и реальных приложений.

  • Евгений Сергеев
    Евгений Сергеев
    45 мин

    Lua в Postgres(из alpha в beta)

    В докладе хотел бы рассказать про возможности использования языка луа в постгресе, способы расширения функциональности при помощи готовых модулей, возможности удаленной отладки, про проделанные изменения с версии 1.0, отличия в стиле написания кода plpgsql и pllua при использовании функций как аргументов. Так же можно рассказать про некоторые спорные моменты, такие как расширение поддерживаемых типов данных в этом языке. Если интересна другая сторона, то могу поделиться опытом доработки фунциональности скриптового языка в постгресе.