title

text

W
Wiktor Brodło Adjust GmbH Системный администратор
: декабря
45 мин

Bagger: как мы мигрировали 1 PB данных с Elasticsearch на PostgreSQL

В своем выступлении я расскажу о том, как группа сисадминов набила шишки, пытаясь реанимировать петабайтный кластер баз данных Elasticsearch, и в конце концов решила заменить его проверенными технологиями: PostgreSQL, Kafka, немного Redis, много клея, и типичное сисадминское упрямство. Результатом стал Bagger - ответ сисадмина на вызов больших данных. Быстрое, надежное, устойчивое к отказам хранилище, используемое в основном для логирования временных событий. Bagger получил свое имя по названию серии ковшовых экскаваторов, одних из крупнейших наземных транспортных средств, когда-либо производимых человеком. Как эти экскаваторы прокапывают тонны материала, так и наш Bagger способен прокопаться через тонны данных.

Слайды

Видео

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

  • Дмитрий Сарафанников
    Дмитрий Сарафанников Яндекс Разработчик
    45 мин

    Как сохранить статистику при мажорном обновлении, и что за это бывает

    Ни для кого не секрет, что статистика не переносится при мажорном обновлении. Для небольших и не сильно нагруженных баз это не проблема, можно быстро собрать новую статистику. Но у нас есть базы объемом порядка 5ТБ и нагрузкой порядка 100k rps, для которых это стало большой проблемой: взлетая без статистики, реплики даже не могли накатывать WAL. В своем докладе расскажу, на какие хитрости мы пошли, чтобы произвести обновление этих баз в условиях требований 100% доступности read only, о том, какие ошибки допустили, и о том как эти ошибки мучительно исправляли. Результатом этих ошибок стало расширение pg_dirty_hands, в котором мы будем собирать различные хаки, которые можно назвать «фол последней надежды».

  • Иван Панченко
    Иван Панченко Postgres Professional рзаместитель генерального директора
    90 мин

    Программирование серверных процедур на языках PL/Perl, PL/Python, PL/v8

    Мастер-класс покажет особенности серверного программирования на указанных языках. Будут рассмотрены примеры и произведено сравнение данных языков и их возможностей в серверной среде PostgreSQL для различных практических задач.

  • Иван Картышов
    Иван Картышов Postgres Professional Разработчик ядра
    Дмитрий Иванов
    Дмитрий Иванов Postgres Professional Developer
    22 мин

    Басня про тестирование и postgres

    Однажды вот Питон и Слон
    Вести тестирование взялись.
    И вместе все в него впряглись!

    В нашей компании (Postges Professional) разрабатываются разные проекты: multimaster, pg_probackup, pg_pathman, pg_shardman, RUM, и другие. Совладать со всей этой оравой весьма непросто, поэтому нам необходим инструмент, который способен облегчить и ускорить написание всевозможных тестов.

    В данном докладе мы расскажем о фреймворке testgres, написанном на Python, который уже позволил решить множество проблем и протестировать функциональность, которую нельзя так просто покрыть прямолинейными регрессионными тестами.

    Вы узнаете, как при помощи нескольких строчек кода запускать узлы PostgreSQL, настраивать всевозможную репликацию и создавать бекапы, меняя параметры на лету, и про многое другое. Также мы расскажем, как эти возможности позволяют нам проверять "самые труднодоступные места" и улучшать качество наших продуктов.

    Мы стремимся сделать testgres фреймворком для проведения функциональных тестов пользовательских запросов, хранимых процедур и прочей серверной логики, привнося практику TDD на уровнь разработки БД.

  • Андрей Литуненко
    Андрей Литуненко 2ГИС Программист
    45 мин

    Как мы распрощались с MongoDB и перешли на PostgreSQL

    В своем докладе я поделюсь опытом переноса, конвертацией NoSQL-данных в реляционный вид и расскажу, как нам удалось ускорить приложение в 2 раза.

    Изначально для хранения данных мы использовали PosgtgreSQL и MongoDB. На практике мы выяснили, что такое разделение крайне неудобно. Мы тратили уйму времени и внимания.

    Расскажу, как с помощью mosql мы перенесли данные из MongoDB в PostgreSQL. Теперь все данные могут быть получены одним запросом, а схема таблиц обеспечивает консистентность данных.