Список докладов конференции PgConf.Russia 2017

Как Tenсent использует Postgres XC в платежной системе WeChat

Jasonysli
Tencent

Jasonysli из крупнейшей китайской интернет-компании Tencent, в которой занимает должность главного архитектора PostgreSQL в облачном сервисе Tencent и руководит командой постгресистов, состоящей из нескольких опытных разработчиков. Ранее (2009-2013) занимался разработкой форка PostgreSQL в компании Huawei. C 2014 г. работает в Tencent с Postrges XC, разрабатывая его собственную версию. Его команда сейчас эксплуатирует крупнейший кластер Postgres XC в мире, состоящий из 29 узлов данных и 6 координаторов.

Китайская компания Tencent - одна из крупнейших в мире компаний в области социальных сетей. В этом докладе рассматривается, как Tencent изменила программный код Postgres XC, чтобы удовлетворить требованиям своей платежной системы, включая:

  1. Масштабирование без сервисных интервалов. Система, хранящая данные за 5 лет, и пополняющаяся на десятки миллионов счетов в день, должна расти без остановки функционирования.

  2. Оптимизация производительности упорядоченных выборок из 90 миллионов строк. Запросы должны исполняться быстро. Чтобы за несколько секунд отсортировать 90 миллионов строк, был разработан специальный метод сортировки.

  3. Балансировка данных между узлами Одни пользователи WeChat производят больше данных, чем другие, это приводит к дисбалансу. Мы разработали специальный алгоритм для борьбы с этим.

  4. Высокая доступность с дата-центрами в разных городах Выполнение запросов в реальном времени требует восстановления после ошибок в реальном времени.

  5. Использование read-only реплик для оптимизации нагрузки по чтению.

  6. Другие вопросы, связанные с высокой транзакционной нагрузкой:

    a、увеличение дискового пространства по запросу;

    b、архивирование xlog в репликах;

    c、исчерпание пропускной способности сетевых карт при параллельном автоваккууме;

    d、уменьшение размера памяти, требуемого для каждого соединения c базой.

ВИДЕО

Слайды