Repolode
neondatabase

neondatabase/neon

Серверный Postgres с открытым исходным кодом, разделяющий хранилище и вычисления, с автоскейлингом, ветвлением баз данных и масштабированием до нуля.

Open source альтернатива:Amazon Aurora

Звёзды
23,248
Форки
1,123
Открытые issues
577
Последний коммит
2 месяца назад

Что это?

Neon — серверная платформа баз данных Postgres. Она разделяет хранилище и вычисления: вычислительные узлы — это не хранящие состояние экземпляры PostgreSQL, а движок хранения, состоящий из pageserver и safekeepers, хранит данные. Safekeepers образуют отказоустойчивый сервис WAL, который надёжно хранит журнал предзаписи, пока pageserver не обработает его и не загрузит данные в облачное хранилище.

Такое разделение позволяет создавать базу данных как ветку другой базы, изолируя изменения от родительской, а вычислительные ресурсы — запускать и останавливать по требованию. Проект можно запускать локально с помощью инструмента управления control plane cargo neon: он инициализирует pageserver, safekeeper и broker, создаёт tenants, timelines и endpoints и поддерживает Postgres 14 и более поздние версии.

Кодовая база написана в основном на Rust и включает пропатченный форк PostgreSQL. Для модульных тестов используется cargo-nextest, а для интеграционных — pytest.

Ключевые возможности

  • 01Разделяет вычисления и хранение: вычислительные узлы — не хранящие состояние экземпляры PostgreSQL.
  • 02Поддерживает ветвление баз данных по аналогии с ветвлением кода; ветки изолированы от родительской базы.
  • 03Обеспечивает автоскейлинг вычислительных ресурсов и их масштабирование до нуля.
  • 04Использует отказоустойчивый сервис WAL на базе safekeeper и загружает данные в облачное хранилище.
  • 05Включает локальный инструмент управления control plane cargo neon для запуска полной установки на рабочей станции.

Сценарии использования

  • Создание изолированных копий рабочей базы данных для проверки миграций схемы.
  • Запуск нагрузок Postgres, которые подолгу простаивают и должны масштабироваться до нуля.
  • Разработка или тестирование изменений движка хранения Neon на локальной машине.

Быстрый старт

  1. 1

    Зарегистрируйтесь в Neon Free Tier, чтобы получить размещённый бессерверный экземпляр Postgres

  2. 2

    Клонируйте репозиторий вместе с его подмодулями

    git clone --recursive https://github.com/neondatabase/neon.git
  3. 3

    В каталоге neon соберите Neon и Postgres с патчами

    make -j`nproc` -s

Что важно знать

  • Для локального запуска потребуется установить множество системных пакетов, Rust и protoc версии 3.15 или новее.
  • В README приведены инструкции по локальной настройке только для Linux и macOS; примечания для macOS написаны для macOS 12.3.1.
  • Локальное использование предназначено для небольших экспериментов и тестирования изменений кода, а не для производственных нагрузок.

В подборках

Темы

Частые вопросы

Что такое neon?
Серверный Postgres с открытым исходным кодом, разделяющий хранилище и вычисления, с автоскейлингом, ветвлением баз данных и масштабированием до нуля. Neon — серверная платформа баз данных Postgres. Она разделяет хранилище и вычисления: вычислительные узлы — это не хранящие состояние экземпляры PostgreSQL, а движок хранения, состоящий из pageserver и safekeepers, хранит данные. Safekeepers образуют отказоустойчивый сервис WAL, который надёжно хранит журнал предзаписи, пока pageserver не обработает его и не загрузит данные в облачное хранилище.
neon можно использовать бесплатно? Какая у него лицензия?
neon распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
neon всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в neon — 31 авг. 2026 г..
Для чего можно использовать neon?
Создание изолированных копий рабочей базы данных для проверки миграций схемы. Запуск нагрузок Postgres, которые подолгу простаивают и должны масштабироваться до нуля. Разработка или тестирование изменений движка хранения Neon на локальной машине.
Как установить neon?
Зарегистрируйтесь в Neon Free Tier, чтобы получить размещённый бессерверный экземпляр Postgres Клонируйте репозиторий вместе с его подмодулями: git clone --recursive https://github.com/neondatabase/neon.git В каталоге neon соберите Neon и Postgres с патчами: make -j`nproc` -s
Где скачать neon?
Исходный код и инструкции по установке — на GitHub: https://github.com/neondatabase/neon

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты