1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-PolarDB-for-PostgreSQL

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

logo

PolarDB для PostgreSQL

Облачная база данных, разработанная компанией Alibaba Cloud

Английский | Китайский (упрощённый)

официальный сайт

cirrus-ci-stable cirrus-ci-dev лицензия github-issues github-pullrequest github-forks github-stars github-contributors Leaderboard

Обзор

arch.png

PolarDB для PostgreSQL (далее просто PolarDB) — это облачная база данных, независимо созданная компанией Alibaba Cloud. Эта служба полностью совместима с PostgreSQL и использует архитектуру с общим хранилищем, в которой вычисления разделены от хранения. Эта служба характеризуется гибким масштабированием, миллисекундной задержкой и возможностями одновременной транзакционной и аналитической обработки (HTAP).

  1. Гибкое масштабирование: Вы можете использовать эту службу для горизонтального масштабирования вычислительного кластера или хранилища в зависимости от ваших бизнес-потребностей.
    • Если мощность вычислений недостаточна, можно масштабировать только вычислительный кластер.
    • Если объём хранилища или производительность I/O недостаточны, можно масштабировать хранилище без прерывания работы.
  2. Миллисекундная задержка:
    • Журналы записи вперед (WAL) хранятся в общем хранилище. Только метаданные записей WAL передаются с узла чтения-записи на узлы чтения.
    • Технология LogIndex, предоставляемая PolarDB, обеспечивает два режима воспроизведения журналов: ленивое воспроизведение и параллельное воспроизведение. Это позволяет минимизировать задержку передачи записей с узла чтения-записи на узлы чтения.
  3. HTAP: HTAP реализован с использованием архитектуры с общим хранилищем и массово параллельной обработкой (MPP). Эта архитектура используется для ускорения запросов OLAP в сценариях OLTP. PolarDB поддерживает полный набор типов данных, используемых в сценариях OLTP. PolarDB поддерживает два вычислительных движка, способных обрабатывать эти данные:
    • Отдельное выполнение: обрабатывает запросы OLTP с высокой конкурентностью.
    • Распределённое выполнение: обрабатывает большие запросы OLAP.

PolarDB предлагает широкий спектр инновационных многомодульных возможностей баз данных, чтобы помочь вам обрабатывать, анализировать и находить различные типы данных, такие как пространственно-временные, географические информационные системы (ГИС), изображения, векторные и графические данные.

Введение в ветки

Ветка POLARDB_11_STABLE основана на PostgreSQL 11.9 и поддерживает архитектуру разделения вычислений и хранения. Ветка distributed поддерживает распределённую архитектуру.

Архитектура и план развития

PolarDB для PostgreSQL использует архитектуру с общим хранилищем, где вычисления разделены от хранения. Конвенциональная архитектура без общего хранилища изменена на архитектуру с общим хранилищем. N копий данных в вычислительном кластере и N копий данных в хранилище заменены на N копий данных в вычислительном кластере и одну копию данных в хранилище. Общее хранилище хранит одну копию данных, но состояния данных в памяти различны. Журналы записи вперед (WAL) должны быть синхронизированы с главного узла на узлы чтения, чтобы гарантировать согласованность данных. Кроме того, когда главный узел очищает грязные страницы, он должен контролировать процесс, чтобы предотвратить чтение будущих страниц узлами чтения. В то же время, узлы чтения должны быть защищены от чтения устаревших страниц, которые не правильно воспроизводятся в памяти. Для решения этой проблемы PolarDB предоставляет структуру индекса LogIndex, которая поддерживает историю воспроизведения страниц. LogIndex может использоваться для синхронизации данных с главного узла на узлы чтения.

После разделения вычислений от хранения задержка I/O и пропускная способность увеличиваются. Когда используется один узел чтения для обработки аналитических запросов, ЦП, память и I/O других узлов чтения и большая пропускная способность I/O хранилища не могут быть полностью использованы. Для решения этой проблемы PolarDB предоставляет архитектуру MPP с общим хранилищем. Этот движок может использовать ЦП для ускорения аналитических запросов на уровне SQL и поддерживать смешивание OLAP и OLTP для HTAP.

Для получения более подробной информации обратитесь к Архитектуре.

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

Если у вас уже установлен Docker, вы можете получить образ PolarDB-PG на основе локального хранилища. Создайте, запустите и войдите в контейнер, затем используйте PolarDB-PG:

# Получите образ и запустите контейнер
docker pull polardb/polardb_pg_local_instance:11
docker run -it --rm polardb/polardb_pg_local_instance:11 psql
# проверьте
postgres=# SELECT version();
            version
--------------------------------
 PostgreSQL 11.9 (POLARDB 11.9)
(1 row)
```Для продвинутого развертывания, пожалуйста, обратитесь к [Продвинутому развертыванию](https://apsaradb.github.io/PolarDB-for-PostgreSQL/deploying/deploy.html). Перед вашим развертыванием мы рекомендуем изучить [архитектуру](https://apsaradb.github.io/PolarDB-for-PostgreSQL/deploying/introduction.html) PolarDB для PostgreSQL.


## Разработка

Для компиляции и разработки PolarDB для PostgreSQL обратитесь к [Руководству по разработке](https://apsaradb.github.io/PolarDB-for-PostgreSQL/development/dev-on-docker.html).


## Документация

Для просмотра всей документации обратитесь к [Онлайн-сайту документации](https://apsaradb.github.io/PolarDB-for-PostgreSQL/).

Если вы хотите исследовать или развивать документацию локально, обратитесь к [Участию в создании документации](https://apsaradb.github.io/PolarDB-for-PostgreSQL/contributing/contributing-polardb-docs.html).


## Участие

Вы приветствуетесь к участию в проекте PolarDB для PostgreSQL, будь то код или документация.

Вот список участников:

<a href="https://github.com/ApsaraDB/PolarDB-for-PostgreSQL/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=ApsaraDB/PolarDB-for-PostgreSQL" />
</a>

Создано с помощью [contrib.rocks](https://contrib.rocks).


## Лицензия программного обеспечения

Код PolarDB распространяется под лицензией Apache License (Version 2.0), основанной на PostgreSQL, которая распространяется под лицензией PostgreSQL. Этот продукт содержит различные компоненты третьих сторон под другими открытыми лицензиями.

Для получения дополнительной информации обратитесь к [ЛИЦЕНЗИЯМ](./LICENSE) и [УВЕДОМЛЕНИЮ](./NOTICE).


## Признание

Некоторый код и идеи дизайна основаны на других открытых проектах, таких как PG-XC/XL (pgxc_ctl), TBase (Timestamp-based vacuum and MVCC), Greenplum и Citus (pg_cron). Мы благодарим вклад этих открытых проектов.


## Присоединиться к сообществу

- PolarDB PostgreSQL на Slack: [https://app.slack.com/client/T023NM10KGE/C023VEMKS02](https://app.slack.com/client/T023NM10KGE/C023VEMKS02)
- Используйте приложение DingTalk, чтобы сканировать следующий QR-код и присоединиться к группе DingTalk для продвижения технологии PolarDB.

  ![polardb_group](docs/.vuepress/public/images/polardb_group.png)


---
Авторское право © Alibaba Group, Inc.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

PolarDB — это семейство продуктов баз данных, разработанных Alibaba Cloud. Они используют архитектуру разделения вычислений и хранения, а также концепцию программно-аппаратного комплекса. Продукты обладают преимуществами распределённой архитектуры с низкой стоимостью, а также централизованной простотой использования, что позволяет удовлетворить ... Развернуть Свернуть
C и 6 других языков
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-PolarDB-for-PostgreSQL.git
git@api.gitlife.ru:oschina-mirror/mirrors-PolarDB-for-PostgreSQL.git
oschina-mirror
mirrors-PolarDB-for-PostgreSQL
mirrors-PolarDB-for-PostgreSQL
POLARDB_11_STABLE