title

text

Markus Nullmeier
Markus Nullmeier University of Heidelberg software developer
: декабря
45 мин

Оптимизация запросов к данным типа “множество” с помощью индексов GIN, GiST, и пользовательских расширений для индексирования

Очевидно, что множества удобно использовать в различных типах приложений. Хотя в PostgreSQL и нет встроенного типа для множеств, до некоторой степени их можно смоделировать с помощью встроенных типов “массив” и “JSONB”. Кроме того, возможность ускорения запросов с операциями вхождения уже встроена в реализацию индексов GIN.

После краткого обзора существующей функциональности, мы рассмотрим, как добавление пользовательских типов “множество” и, в частности, модификация кода на С ("классы операторов") для индексов GIN и GiST, может повысить производительность.

Слайды

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

  • Александр Коротков
    Александр Коротков Postgres Professional Руководитель разработки
    45 мин

    RUM-индексы и их применение

    Я представлю новый метод доступа, который расширяет имеющиеся возможности GIN-индексов, используя дополнительную информацию, хранящуюся в списке/дереве идентификаторов. Например, дополнительная информация о позициях позволяет новому методу доступа возвращать результаты по релевантности, что может значительно сократить время исполнения полнотекстовых запросов. Это также может ускорить фразовый поиск, так что данный метод будет весьма эффективным при полнотекстовом поиске. Сохранение временных меток открывает перед нами несколько интересных возможностей – мы можем отсортировать результаты по времени (например, свежие статьи, удовлетворяющие полнотекстовому запросу) на основе временных меток как таковых или сохраненных указателей, упорядоченных по временным меткам. Оба способа обеспечивают на порядок большее ускорение для таких типов запросов.

  • Айнур Тимербаев
    Айнур Тимербаев Авиасейлс Аналитик данных
    22 мин

    Опыт внедрения Greenplum в Aviasales

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

    ВИДЕО

  • Дмитрий Вагин
    Дмитрий Вагин Avito Lead Engineer
    22 мин

    Мониторинг PostgreSQL в Авито, с примерами

    Небольшой доклад о том как Avito собирает и мониторит нагрузку на базы данных. Отправка метрик из хранимых процедур в Graphite. Сбор метрик pg_stat* и отображение их в Grafana. Примеры из жизни.

    ВИДЕО

  • Дмитрий Белобородов
    Дмитрий Белобородов UIS, CoMagic Технический директор
    45 мин

    Опыт использования PostgreSQL в проектах UIS, CoMagic

    Мы используем PostgreSQL с 2003 года и прошли путь от базы в пару гигабайт до кластера с текущим размером более 5Тб. Текущие кол-во таблиц > 700, число хранимых процедур ~1500. Чем готовы поделиться: - рассказать о проблемах, с которыми пришлось сталкиваться на разных этапах развития и найденными решениями - наработанными практиками администрирования - мы работаем с несколькими базами, которые тесно связаны друг с другом, используем для этого свое расширение - у нас работает несколько команд, и есть выработанная методика и инструменты, которые позволяют им не мешать друг другу - мы используем много различных стендов для тестирования, готовы рассказать по какому принципу и как мы их поднимаем - ну, и конечно, про оптимизацию, поиск узких мест и ситуаций, с которыми нам приходится сталкиваться при нагрузках

    ВИДЕО