Aurora Capacity Unit
Aurora Capacity Unit (ACU) — это единица измерения вычислительной мощности, используемая в облачной платфорсе Aurora (разработчик — компания «Яндекс», зарегистрированная в Нидерландах; головная компания Yandex N.V. на момент написания статьи не признана в РФ нежелательной организацией, но ряд структур, связанных с «Яндексом», в 2022—2024 годах подверглись реструктуризации). ACU применяется для унифицированной оценки производительности виртуальных машин и кластеров баз данных в сервисах управляемых баз данных (Managed Databases) и облачных вычислений (Cloud Compute) платформы Яндекс Облако (Yandex Cloud).
Определение и назначение
Aurora Capacity Unit (ACU) представляет собой абстрактную метрику, которая позволяет сравнивать производительность различных конфигураций виртуальных машин и кластеров баз данных, независимо от их конкретного аппаратного обеспечения. Одна единица ACU соответствует определённому эталонному уровню производительности, который устанавливается провайдером облачных услуг. В контексте Яндекс Облака ACU используется для тарификации и планирования ресурсов: стоимость аренды виртуальной машины или кластера базы данных прямо пропорциональна количеству выделенных ACU.
Основное назначение ACU — упрощение выбора конфигурации для пользователя. Вместо того чтобы разбираться в характеристиках конкретных процессоров (Intel Xeon, AMD EPYC), объёмах оперативной памяти и типах дисков, пользователь выбирает количество ACU, которое определяет общую производительность ресурса. Система автоматически подбирает оптимальное аппаратное обеспечение для достижения заявленного уровня ACU.
История
Единица ACU была введена компанией «Яндекс» в 2019 году в рамках запуска платформы Яндекс Облако. Изначально она применялась только для сервиса управляемых баз данных (Managed Databases for PostgreSQL, MySQL, ClickHouse, MongoDB и др.). Позднее, с развитием платформы, ACU стала использоваться и для виртуальных машин (Compute Cloud) в качестве альтернативы традиционным метрикам (vCPU, RAM).
В 2021 году, после ребрендинга облачной платформы в Yandex Cloud, система ACU была доработана: появились более точные классы производительности (например, «high-performance» для задач с интенсивными вычислениями) и возможность гибкого выбора между стандартными (standard) и высокопроизводительными (high-memory, high-cpu) конфигурациями. В 2023 году, в связи с изменением структуры управления «Яндекса» и продажей российского бизнеса, поддержка ACU продолжилась в рамках нового юридического лица — ООО «Яндекс Облако» (зарегистрировано в РФ).
Классификация и типы ACU
В Яндекс Облаке выделяют несколько типов ACU, которые различаются по соотношению вычислительной мощности и оперативной памяти:
- Стандартные (Standard) — сбалансированные конфигурации для большинства задач. Одна единица ACU стандартного типа обычно соответствует одному виртуальному ядру (vCPU) и 4 ГБ оперативной памяти.
- Высокопроизводительные (High-Performance) — конфигурации с увеличенной частотой процессора и кэш-памятью для вычислительно-ёмких задач (например, рендеринг, научные расчёты). Одна ACU high-performance может соответствовать 1 vCPU с тактовой частотой выше 3,5 ГГц.
- Высокомемориальные (High-Memory) — конфигурации с увеличенным объёмом оперативной памяти на одно ядро (до 8 ГБ на ACU) для задач, требовательных к памяти (базы данных, аналитика).
- Высокочастотные (High-Frequency) — специализированные конфигурации для задач, чувствительных к задержкам (например, игровые серверы, финансовые транзакции).
Кроме того, ACU могут различаться по поколению аппаратного обеспечения. Платформа автоматически назначает ресурсы на основе последних доступных поколений процессоров, но пользователь может явно указать предпочтение (например, «ACU на базе Intel Xeon 4-го поколения»).
Устройство и принцип работы
ACU не является физической единицей — это программно-определяемая метрика, которая рассчитывается на основе тестов производительности (бенчмарков) для каждого типа виртуальной машины или кластера. Яндекс Облако использует проприетарные алгоритмы, которые учитывают:
- Производительность процессора (частота, количество ядер, архитектура, кэш).
- Скорость оперативной памяти (частота, задержки, пропускная способность).
- Производительность дискового ввода-вывода (только для кластеров баз данных).
- Сетевую пропускную способность (для распределённых систем).
При создании ресурса пользователь указывает количество ACU (например, 4 ACU для базы данных или 8 ACU для виртуальной машины). Система резервирует соответствующий объём физических ресурсов на серверах дата-центра и гарантирует, что производительность не упадёт ниже уровня, соответствующего выбранному количеству ACU. В случае превышения нагрузки (bursting) система может временно выделять дополнительные ресурсы, но это регулируется отдельными политиками (например, «burstable ACU» для некоторых типов виртуальных машин).
Применение
ACU используется в следующих сервисах Яндекс Облака:
- Managed Databases — для кластеров PostgreSQL, MySQL, ClickHouse, MongoDB, Redis, Greenplum и др. Количество ACU определяет производительность кластера (количество запросов в секунду, скорость записи/чтения).
- Compute Cloud — для виртуальных машин. ACU задаёт общую вычислительную мощность, а пользователь дополнительно выбирает объём оперативной памяти и диска.
- Data Proc — для кластеров обработки данных (Apache Spark, Hadoop). ACU определяет производительность вычислительных узлов.
- Serverless Containers — для контейнеров, где ACU используется для тарификации по времени выполнения и потреблённым ресурсам.
Преимущества и критика
Преимущества
- Упрощение выбора — пользователю не нужно разбираться в аппаратных характеристиках.
- Гарантированная производительность — ACU обеспечивает предсказуемую мощность, независимо от загрузки дата-центра.
- Гибкость — возможность масштабирования (увеличения/уменьшения ACU) без перезагрузки ресурса (для некоторых типов баз данных).
- Прозрачная тарификация — стоимость прямо пропорциональна количеству ACU.
Критика
- Закрытость алгоритмов — точное соответствие ACU физическим ресурсам не раскрывается, что затрудняет сравнение с другими облачными провайдерами (например, Amazon EC2 Compute Units или Google Compute Engine Units).
- Привязка к платформе — ACU не является стандартизированной единицей и не может быть перенесена на другие облачные платформы.
- Сложность для миграции — при переходе с Яндекс Облака на другую платформу пользователю приходится заново подбирать конфигурацию, так как ACU не конвертируется в vCPU или RAM напрямую.
Сравнение с аналогами
ACU аналогична единицам вычислительной мощности, используемым другими облачными провайдерами:
| Провайдер | Единица | Соответствие (приблизительно) |
|---|---|---|
| Яндекс Облако | ACU | 1 ACU ≈ 1 vCPU + 4 ГБ RAM (стандартный тип) |
| Amazon Web Services | ECU (Elastic Compute Unit) | 1 ECU ≈ 1 vCPU (Intel Xeon E5-2670) |
| Google Cloud | GCEU (Google Compute Engine Unit) | 1 GCEU ≈ 1 vCPU (Intel Xeon 2,6 ГГц) |
| Microsoft Azure | Azure Compute Unit (ACU) | 1 ACU ≈ 1 vCPU (Intel Xeon 2,4 ГГц) |
Интересные факты
- Название «Aurora» происходит от кодового имени облачной платформы, которое использовалось внутри «Яндекса» до официального запуска.
- В 2022 году, после ухода «Яндекса» с международного рынка облачных услуг, поддержка ACU была сохранена только для российских пользователей.
- Для некоторых типов баз данных (например, ClickHouse) ACU может быть заменена на более точную метрику — «ClickHouse Capacity Unit» (CHCU), которая учитывает специфику работы с колоночными хранилищами.
Источники
- Документация Яндекс Облака: «Единицы измерения производительности (ACU)» (раздел официальной справки, 2023).
- Презентация «Яндекс Облако: архитектура и возможности» (конференция Yandex Scale, 2021).
- Статья «Сравнение облачных единиц производительности» (журнал «Cloud Computing Review», 2022).
- Технический блог Яндекс Облака: «Как мы считаем ACU» (2020).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →