Поделиться через


Выбор начального размера кластера в Azure Cosmos DB для PostgreSQL

Область применения: Azure Cosmos DB для PostgreSQL (на базе расширения базы данных Citus до PostgreSQL)

Размер кластера, как количество узлов, так и их емкость оборудования, легко измениться). Однако вам по-прежнему нужно выбрать начальный размер для нового кластера. Ниже приведены некоторые советы по выбору.

Варианты использования

Azure Cosmos DB для PostgreSQL часто используется следующим образом.

Мультитенантное приложение SaaS

При миграции в Azure Cosmos DB для PostgreSQL из существующего экземпляра базы данных PostgreSQL выберите кластер, в котором количество рабочих виртуальных ядер и ОЗУ в общей сложности равно исходному экземпляру. В таких сценариях наблюдается улучшение производительности в 2–3 раза, так как сегментирование оптимизирует использование ресурсов, позволяет уменьшить индексы и т. д.

На самом деле, вам нужно выбрать только число виртуальных ядер. Выделение ОЗУ в настоящее время выполняется в зависимости от количества виртуальных ядер, как описано в статье о вычислениях и хранении. Для узла-координатора не требуется столько ОЗУ, сколько необходимо рабочим ролям, но возможности выбирать количество ОЗУ и виртуальных ядер независимо друг от друга нет.

Анализ в реальном времени

Общее количество виртуальных ядер: при использовании рабочих данных в ОЗУ можно ожидать линейного улучшения производительности в Azure Cosmos DB для PostgreSQL пропорционально количеству рабочих ядер. Чтобы определить правильное количество виртуальных ядер для ваших потребностей, рассмотрите текущую задержку запросов в базе данных с одним узлом и требуемую задержку в Azure Cosmos DB для PostgreSQL. Разделите текущее значение задержки на планируемое и округлите результат.

Объем ОЗУ для рабочей роли — желательно предоставить такой объем памяти, чтобы ее хватало для большей части рабочего набора данных. Тип запросов, используемых приложением, влияет на требования к памяти. Можно выполнить EXPLAIN ANALYZE для запроса, чтобы определить требуемый объем памяти. Учитывайте, что виртуальные ядра и ОЗУ масштабируются вместе, как описано в статье о вычислениях и хранении.

Следующие шаги