title

text

Константин Евтеев
Константин Евтеев X5 FoodTech Главный архитектор
13:05 04 февраля
45 мин

10 лет PostgreSQL в Avito

PostgreSQL с момента старта Avito решает серьезные и важные задачи. Вокруг СУБД были построены основные компоненты архитектуры. За 10 лет проект активно развивался, изменилась архитектура и инфраструктура.

Как вступление, сделаю обзор: эволюции архитектуры и инфраструктуры PostgreSQL в Avito; успешно решенных вызовов.

В основной части расскажу о статусе PostgreSQL в Авито 2020: микросервисная архитектура; шардирование; проблемы коммуналок; DBaaS( Database discovery, управление доступом, failover, backup, archive, вопросы разделения ресурсов итд.); вопросы интеграции; эволюция команды.

В заключение поделюсь нашим wishlist/нерешенными вопросами.

Слайды

Видео

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

  • Антон Нечеухин
    Антон Нечеухин Miro Technical QA lead
    90 мин

    Инструмент как код: тестируем Postgres

    На мастер-классе научимся проводить быстрые нагрузочные тесты баз данных Postgres: оптимизаций конфигов базы, структуры данных, индексов, настроек ОС и т. д. Для этого создадим код, из него поднимем инфраструктуру для теста и проведём сам тест. В результате получим гибкий инструмент в коде, к которому можно прикрутить любой мониторинг и за который не надо платить большие деньги, т.к стенд создаётся за 7 минут в пустой AWS учётке и убивается после проведения тестов. Для этого мастер-класса есть важная подготовка, которую нужно сделать заранее, чтобы в полной мере попробовать все, что спикер хочет предложить. Один шаг не быстрый - нужно сделать триальную учетную запись в AWS. Для этого требуется подтверждение регистрации от Amazon, которое они делают в течении 24 часов (если вы ранее работали в AWS, и у вас есть учетка - это хорошо, если нет - нужно пройти этот путь) Также, лучше заранее поставить последние версии ansible и terraform.

  • Георгий Рылов
    Георгий Рылов Яндекс Разработчик
    22 мин

    WAL-G: новые возможности и расширение сообщества

    У меинтейнеров open-source возникает множество проблем по мере их роста. Как писать все больше требуемых фич, чинить все больше issues'ов и успевать смотреть все больше pull request'ов? На примере WAL-G(backup-tool for PostgreSQL) расскажу про то, как мы решали эти проблемы, запустив курс по Open-source разработке в университете, чего мы добились и куда будем двигаться дальше.

  • Shawn Kim
    Shawn Kim Apposha CEO
    45 мин

    Make Your PostgreSQL 10x Faster on Cloud in Minutes

    Cloud storage has some unique characteristics compared to traditional storage mainly because it is virtualized and controlled by software. One example is that AWS EBS shows higher throughput with larger I/O size up to 256 KiB without hurting latency. Hence, a user can get only about 4 MiB/sec with 1,000 IOPS EBS volume if the I/O request size is 4 KiB, whereas a user can get about 250 MiB/sec if the I/O request size is 256 KiB. This is because EBS consumes one I/O in a given IOPS budget for every I/O request regardless of the I/O size (up to 256 KiB). Unfortunately, PostgreSQL cannot exploit the full potential of cloud storage because PostgreSQL has designed without considering the unique characteristics of cloud storage.

    In this talk, I will introduce the AppOS extension that improves the throughput of a write-intensive workload by 10x by transparently making PostgreSQL cloud storage-native. AppOS works like a storage driver that efficiently exploits the characteristics of cloud storage, such as I/O size dependency to storage throughput and latency, atomic write support in cloud block storage, and fast, but non-durable local SSDs. To do this, AppOS comprises a Linux-compatible file I/O stack including virtual file system, page cache, block I/O layer, cloud storage driver. On top of the file I/O stack, syscall module supports registering pre- and post-handler for file I/O-related system calls in order to transparently work without modifying PostgreSQL codes.

    I will focus on presenting key use cases and performance results of the AppOS extension after explaining the internals. Specifically, I will show the performance results of OLTP and some batch workloads using standard benchmarking tools like pgbench and sysbench. I will also present performance results and implications on multiple clouds including AWS, GCP, and Azure.

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

    Узкие места PostgreSQL #2

    В прошлом году я сделал доклад про неожиданные узкие места PostgreSQL, которые могут застать пользователя (или администратора) врасплох. Обратная связь была очень положительной, а за год накопился новый материал. Поэтому я решил сделать продолжение сериала и разобрать новые ситуации, когда база неожиданно для всех встаёт колом. В этот раз упор будет на машины с большим числом ядер, но не только.