PostgreSQL на S3 не читает S3 при каждом запросе
В архитектуре Lakebase Postgres от Neon данные хранятся в объектном хранилище, но сам PostgreSQL обращается сначала к RAM, затем к локальному NVMe и только после промаха — к отдельному серверу страниц.
Транзакция также не ждёт загрузки данных в S3. Она считается подтверждённой, когда кворум узлов сохраняет WAL. Серверы страниц позже восстанавливают из журнала нужные версии страниц и асинхронно отправляют их в объектное хранилище.
WAL становится источником истины, а копия базы — указателем на нужный LSN. Поэтому ветка терабайтной базы создаётся за секунды без копирования файлов, восстановление не зависит от размера данных, а исторический запрос выполняется через выбор прежней версии дерева страниц.
Для тебя это показательный способ разделить вычисления и хранение, не помещая медленный S3 в критический путь OLTP-запросов.
#postgresql #neon #lakebase #wal #objectstorage #databasearchitecture #dataengineering
@data_engi
Post #1290
138