У традиционной архитектуры PostgreSQL есть фундаментальные ограничения: вертикальное масштабирование рано или поздно упирается в возможности одного сервера, а попытки масштабировать систему горизонтально приводят к репликации, шардированию и связанным с ними тупикам и компромиссам. Сколько ни улучшай PostgreSQL, сколько ни отчитывайся о реальных примерах внедрения, архитектурный потолок от этого никуда не исчезает: есть класс задач, где дальнейшее развитие в рамках традиционной архитектуры объективно затрудняется.
Именно здесь появляется Tantor Polar — распределенная СУБД с разделением вычислений и хранения и 100% совместимостью с PostgreSQL. На ее основе построена машина баз данных Tantor XData Gen3, объединяющая мощные вычислительные узлы, высокопроизводительное общее хранилище и высокоскоростную сеть c RDMA в единую систему. В этой статье мы покажем, что эта архитектура дает на практике — рассмотрим устройство синергично работающих программных и аппаратных модулей позволяющих достичь высоких показателей в популярных нагрузочных фреймворках, таких как TPC-B (250 тыс. TPS) и TPC-C (2,6 млн NOPM).
Архитектура Tantor Polar
В основе архитектуры распределенной СУБД – несколько вычислительных узлов, подключенных к общему хранилищу данных (shared storage). Это позволяет избежать проблем, характерных для shared memory и shared nothing архитектур, а также масштабировать необходимые типы ресурсов независимо друг от друга. Если необходимо больше процессорных ядер и/или оперативной…