title

text

Marco Slot
Marco Slot Citus Data Главный инженер-программист
15:00 05 февраля

CitusDB: расширение для масштабирования PostgreSQL

CitusDB — расширение PostgreSQL, позволяющее распределять таблицы в кластере серверов PostgreSQL. Данные разделяются по секциям (шардам) по добавлению (оптимально для массовой загрузки данных временных рядов) или по хешу (для введения данных в реальном времени). Запросы SELECT к распределённым таким образом таблицам прозрачно распараллеливаются в кластере, при этом задействуются все доступные ядра. Также параллельно возможно соединять распределённые таблицы, даже если они разделены не по значению одной колонки. CitusDB исключительно подходит для сценариев использования с анализом в реальном времени, например, для информационных панелей, где нужны быстрые аналитические запросы к динамическим данных и в то же время востребована масштабируемая оперативная база данных. На этом докладе будет освещено внутреннее устройство CitusDB и представлена живая демонстрация крупномасштабного кластера CitusDB.

Слайды

Видео

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

  • Peter  van Hardenberg
    Peter van Hardenberg Heroku Главный исследователь
    45 мин

    Мега-масштабирование PostgreSQL: Советы от работающих с 10^6 баз данных

    Heroku Postgres is a cloud database service and the largest provider of PostgreSQL as a service anywhere. We operate more than 1,000,000 PostgreSQL databases with a team of about 10 people. We may be the most efficient DBAs in history, with approximately 100,000 databases per person on our team! This talk will introduce the opportunity and challenges of building and operating a cloud database service, as well as discussing the strategies we use to build, operate, and scale this product and team for the last six years now. We will include details about

    • a brief introduction to the service to provide context
    • strategies to design and build such a data service
    • operational war stories like how to recover from losing thousands of servers at once,
    • common challenges users have with Postgres
    • and a basic overview of the technical architecture

    This is a complementary talk to Will Leinweber's talk, which will go into much more depth on the architecture of the software we have written.

  • Алексей Лесовский
    Алексей Лесовский PostgreSQL Consulting LLC Администратор баз данных
    180 мин

    Потоковая репликация на практике.

    Потоковая репликация это одна из тех прорывных технологий которая вывела PostgreSQL на совершенно новый уровень. Сочетая в себе легкость настройки, высокую производительность и почти неограниченную масштабируемость потоковая репликация является эффективным инструментом, а ее наличие становится неотъемлемым компонентом любого постгресового "сетапа". Более того, в процессе дальнейшего развития PostgreSQL, потоковая репликация продолжает развиваться и обзаводиться новыми функциями (каскадные конфигурации, слоты репликации) вплоть до того, что на данном этапе своего развития, потоковая репликация позволяет выстраивать bi-directional replication конфигурации.

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

    Участникам мастер-класса следует скачать себе образ виртуальной машины для KVM, Virtual box или VMWare, распаковать его (gzip2) и запустить виртуальную машину.

    Если у Вас нет ни одной из перечисленных программ для виртуализации, то нужно запустить виртуальную машину с CentOS 7 и установленным postgresql из оф.репозитория yum.postgresql.org.

    Ссылка на образы для скачивания: https://goo.gl/Yy4UzH

  • Ronan Dunklau
    Ronan Dunklau Dalibo DBA
    45 мин

    Multicorn: разработка Foreign Data Wrapper'ов на языке Python

    Multicorn - это обобщенный Foreign Data Wrapper (FDW, интерфейс для подключения внешних источников данных, устоявшегося русского названия пока нет), предоставляющий возможность разработки конкретных FDW на языке Python, что упрощает их разработку.

    Мы узнаем:

    • Что такое FDW, как работает Multicorn, и какие готовые FDW поставляются вместе с ним.
    • Как написать свой FDW на python, включая новый интерфейс IMPORT FOREIGN SCHEMA, появившийся в версии 9.5.
    • Внутренности Multicorn: что он делает и что не делает внутри.

    После общего рассмотрения FDW и Multicorn, мы детальнее рассмотрим некоторые FDW, поставляемые с ним.

    Затем проведем полный тур по API Multicorn, чтобы научить вас создавать FDW на Python, включая следующие детали:

    • испольование определений таблиц
    • пробрасывание WHERE
    • ограничения колонок
    • как влиять на планировщик
    • как писать во внешнюю таблицу
    • как работать с импортом внешней схемы
    • пробрасывание ORDER BY
    • управление транзакциями

    Все это будет объяснено наглядно, с примерами кода, позволяющими слушателям с нуля создать свой FDW на Python.

  • Григорий Хромов
    Григорий Хромов MyAsterisk Руководитель технического отдела
    22 мин

    Обработка статистических данных в режиме реального времени посредством триггеров

    В нашей телефонной платформе исторически использовалась СУБД MySQL и стандартная система статистики CDR. Постоянные оптимизации позволили сократить время ожидания загрузки информации, но оно было все еще велико. Ко всему прочему CDR не отличалась детальностью и высокой точностью. Было принято решение миграции на PostgreSQL и создание собственной системы сбора статистики на основе подсистемы CEL. CEL генерирует по одной записи на каждое внутреннее событие происходящее во время звонка и число таких записей может достигать несколько сотен. Применив триггеры PostgreSQL мы смогли сформировать подробную статистику всего в одной записи на каждый звонок. При этом общая производительность по сравнению со старой системой ощутимо выросла – время загрузки сократилось с минуты и более до нескольких секунд.