title

text

Анастасия Лубенникова
Анастасия Лубенникова Postgres Professional Разработчик
12:15 05 февраля
45 мин

Новые возможности B-tree в PostgreSQL

Самый часто используемый тип индексов в PostgresSQL - B-tree. Эта структура данных и связанные с ней алгоритмы развиваются уже больше 40 лет. Но, как мы знаем, нет предела совершенству. В этом докладе пойдет речь об особенностях структуры B-tree и его реализации в PostgreSQL, важных для оптимального использования индексов. Кроме того, мы представим улучшения функциональности B-tree в PostgreSQL, которые войдут в релиз 9.6. Это компрессия дубликатов и новые возможности использования покрывающих (covering) индексов.

Слайды

Видео

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

  • Брюс Момжиан
    Брюс Момжиан EnterpriseDB Senior Database Architect
    45 мин

    Многогранность развития Postgres

    В Postgres 9.5 добавилось много нового: UPSERT, CUBE, ROLLAP, функции для работы JSONB, улучшения PostGIS. Для администраторов - Row Level Securlty, новый тип индекса, и улучшения производительности на больших серверах.

    В этом докладе будет рассказано о 10 наиболее значимых возможностях версии 9.5, а также о некоторых фичах следующих релизов.

  • Andreas Scherbaum
    Andreas Scherbaum Pivotal Principal Software Engineer

    Как мы сделали Greenplum Open Source

    Greenplum — это форк PostgreSQL, оптимизированный для использования в аналитике и хранилищах данных. Компания Pivotal в начале 2015 г. анонсировала, что часть её продуктов станут продуктами Open Source, в том числе и Greenplum Database. На этом выступлении будет представлен обзор истории Greenplum, всего процесса перевода продукта в мир Open Source и препятствий, с которыми мы столкнулись. Мы также расскажем, как можно принять участие в нашем проекте.

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

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

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

  • Дмитрий Васильев
    Дмитрий Васильев Postgres Professional Инженер СУБД
    45 мин

    Масштабируемость PostgreSQL

    В докладе рассказывается о результатах тестирования производительности PostgreSQL на современных Hi-End серверах. Основное внимание было уделено блокировкам для доступа к разделяемым данным и связанными с этим узкими местами. Целью тестирования было проверить пределы линейного read scalability при увеличении количества ядер выделяемых для PostgreSQL. Тестирование проводилось для различных версий БД (9.4, 9.5, 9.6), чтобы проверить нововведения, призванные повысить производительность на многопроцессорных архитектурах.