[Документация Yandex Cloud](../../index.md) > [Yandex Managed Service for Valkey™](../index.md) > Концепции > Взаимосвязь ресурсов сервиса

# Взаимосвязь ресурсов в Yandex Managed Service for Valkey™


{% note info %}

В [регионе Казахстан](../../overview/concepts/region.md) доступны только [платформы](../../compute/concepts/vm-platforms.md#standard-platforms) `standard-v3` (Intel Ice Lake) и `standard-v3-t4i` (Intel Ice Lake with T4i). Другие типы платформ, кластеры GPU и выделенные хосты недоступны.

{% endnote %}



Valkey™ — это высокопроизводительная СУБД для данных типа «ключ-значение», работающая в оперативной памяти. Сервис Yandex Managed Service for Valkey™ позволяет легко создавать высокодоступные [кластеры](../../glossary/cluster.md) хостов Valkey™.

Yandex Cloud принимает активное участие в разработке Valkey™, внося свой вклад как в основной проект, так и развивая [собственные реализации](update-policy.md#compatibility-table). Это позволяет команде сервиса Yandex Managed Service for Valkey™:

* глубоко понимать внутреннее устройство Valkey™ и обеспечивать высокий уровень совместимости;
* постоянно улучшать производительность, надежность и безопасность собственных реализаций;
* в ряде случаев обеспечивать совместимость с целевой версией на базе более новой кодовой базы, предоставляя пользователям преимущества новых реализаций СУБД без изменения целевой версии.

Сервис Yandex Managed Service for Valkey™ предоставляет расширенную по времени [поддержку](update-policy.md) версий Valkey™, основанную на [гарантии совместимости](#compatibility-warranty) версий СУБД.

## Ресурсы Yandex Managed Service for Valkey™ {#resources}

Основная сущность, которой оперирует сервис Yandex Managed Service for Valkey™, — _кластер баз данных_.

Каждый кластер состоит из одного или нескольких _хостов БД_ — виртуальных машин с развернутыми серверами СУБД. Хосты кластера могут находиться в разных зонах и даже разных регионах доступности. Подробнее о географии Yandex Cloud читайте в разделе [Обзор платформы](../../overview/concepts/geo-scope.md).

[Высокая доступность кластера Yandex Managed Service for Valkey™](high-availability.md) определяется количеством и расположением его хостов, настройками репликации и другими параметрами кластера.

При создании кластера необходимо указывать:
* _Класс хостов_ — шаблон виртуальной машины, по которому будут развертываться хосты кластера. Список доступных классов хостов и их характеристики приведен в разделе [Классы хостов](instance-types.md).

* _Окружение_ — среду, в которой будет развертываться кластер:
   * `PRODUCTION` — для стабильных версий ваших приложений.
   * `PRESTABLE` — для тестирования. Prestable-окружение аналогично Production-окружению и на него также распространяется SLA, но при этом на нем раньше появляются новые функциональные возможности, улучшения и исправления ошибок. В Prestable-окружении вы можете протестировать совместимость новых версий с вашим приложением.

{% note info %}

Выделенный для хоста объем памяти также определяет параметр конфигурации `maxmemory` для хостов Valkey™: максимальный объем данных равен 75% доступной памяти. Например, для класса хоста с 8 ГБ памяти значение `maxmemory` будет 6 ГБ.

{% endnote %}


Созданный в каталоге кластер доступен по сети для всех виртуальных машин, подключенных к этой же облачной сети. Подробнее о работе сети читайте в [документации Virtual Private Cloud](../../vpc/index.md).


{% note alert %}

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

{% endnote %}

При работе необходимо учитывать, что контролирует сервис, а что — клиент Yandex Cloud. Понимание этих зон контроля помогает эффективно использовать облачные ресурсы и избегать возможных проблем при работе с базами данных. Подробнее в разделе [Разграничение зон контроля пользователей сервисов управляемых баз данных (MDB) и Yandex Cloud](../../overview/concepts/mdb-responsibilities.md).

## Гарантия совместимости версий {#compatibility-warranty}

Сервис Yandex Managed Service for Valkey™ предоставляет своим пользователям не какую-то конкретную версию Valkey™, а услугу с _гарантией совместимости_ СУБД с конкретной версией Valkey™. Для каждой версии СУБД в [реализации Yandex Cloud](update-policy.md#compatibility-table), совместимой с определенной версией Valkey™, сервис гарантирует:

* полную обратную совместимость с API и функциональностями оригинальной целевой версии;
* поддержку всех команд и протоколов оригинальной версии;
* корректную работу существующих приложений пользователя без необходимости внесения изменений в их работу;
* расширенную поддержку, равную или превышающую официальный жизненный цикл оригинальной версии Valkey™.

![test-versions-compatibility1](../../_assets/managed-valkey/test-versions-compatibility1.svg)

Например, версия СУБД, **совместимая с версией Valkey™ 7.2**, предоставляет:

* **современную версию Valkey™** (`8.1`) со всеми преимуществами современной версии (производительность, безопасность, функциональность);
* **специальный режим совместимости** с настройками для полной обратной совместимости и **гарантию совместимости** с приложениями, разработанными для версии `7.2`.

Подробнее о совместимости версий Valkey™ читайте в разделе [Совместимость версий](update-policy.md#compatibility-table).

### Тестирование версий на совместимость {#compatibility-testing}

Для подтверждения совместимости версий используется протокол сравнительного тестирования: один и тот же набор тестовых сценариев выполняется одновременно как в оригинальной целевой версии Valkey™, так и на версии Valkey™ в реализации Yandex Cloud. Если полученные результаты оказываются идентичными, то реализация Yandex Cloud считается совместимой.

![test-versions-compatibility2](../../_assets/managed-valkey/test-versions-compatibility2.svg)

Тестовые сценарии охватывают следующие ключевые аспекты поведения Valkey™:

* команды и протокол — корректность выполнения команд и соответствие протоколу [RESP](https://valkey.io/topics/protocol/);
* структуры данных — поведение всех типов данных (`strings`, `hashes`, `lists`, `sets`, `sorted sets`, `streams` и др.);
* обработка ошибок — идентичность ответов при некорректных запросах;
* конфигурация — поддержка параметров конфигурации целевой версии;
* [Pub/Sub](https://valkey.io/topics/pubsub/), транзакции, скрипты — корректность работы при сложных сценариях взаимодействия.

Перед развертыванием новой реализации версии Valkey™ от Yandex Cloud она обязательно проходит полный набор тестов совместимости с целевой версией. [Обновление кластеров](update-policy.md#update-policy) и их переход на новую реализацию выполняется только при полном и успешном прохождении всех тестов.

{% note tip %}

Если для вашего приложения критичны определенные сценарии использования Valkey™, вы можете [обратиться](https://kz.center.yandex.cloud/support) в службу технической поддержки с предложением включить эти сценарии в набор тестов совместимости Yandex Managed Service for Valkey™. Команда сервиса рассмотрит каждое обращение и при необходимости расширит набор используемых тестов.

{% endnote %}