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


Настройка сохраняемости данных для экземпляра Управляемого Redis (предварительная версия) Azure

Сохраняемость Redis позволяет сохранять данные, хранящиеся в экземпляре кэша. Если произошел сбой оборудования, экземпляр кэша восстанавливается с данными из файла сохраняемости при возврате к сети. Возможность сохранения данных является важным способом повышения устойчивости экземпляра кэша, так как все данные кэша хранятся в памяти. Потеря данных возможна, если происходит сбой при отключении узлов кэша. Сохраняемость должна быть ключевой частью стратегии высокого уровня доступности и аварийного восстановления с помощью Управляемого Redis Azure (предварительная версия).

Внимание

Сохраняемость данных предназначена для обеспечения устойчивости для непредвиденных сбоев узлов Redis, но не является функцией резервного копирования данных или точки во времени восстановления (PITR). Если поврежденные данные записываются в экземпляр Redis, эти данные также будут сохранены. Чтобы создать резервные копии экземпляра Redis, используйте функцию экспорта.

Область доступности

Уровень Оптимизированная для памяти, балансированная, оптимизированная для вычислений Оптимизировано для флэш-памяти
На месте Да Да

Типы сохраняемости данных в Redis

Существует два варианта сохранения с помощью Управляемого Redis в Azure: формат базы данных Redis (RDB) и формат "Добавить только файл " (AOF):

  • Сохраняемость RDB. При использовании сохраняемости RDB Управляемый Redis Azure сохраняет моментальный снимок кэша в двоичном формате. Моментальный снимок сохраняется на управляемом диске, подключенном к экземпляру Redis. Настраиваемая частота резервного копирования определяет, как часто следует сохранять моментальный снимок. Если возникает катастрофическое событие, которое отключает как основную, так и реплику, кэш восстанавливается автоматически с помощью последнего моментального снимка. Узнайте больше о преимуществах и недостатках сохраняемости RDB.
  • Сохраняемость AOF. При использовании сохраняемости AOF Управляемый Redis Azure сохраняет каждую операцию записи в журнал. Журнал сохраняется один раз в секунду на управляемом диске, подключенном к экземпляру Redis. Если возникает катастрофическое событие, которое отключает как первичные, так и реплики кэша, кэш восстанавливается автоматически с помощью хранимых операций записи. Узнайте больше о преимуществах и недостатках сохраняемости AOF.

Внимание

Функции сохраняемости Redis в Azure предназначены для автоматического восстановления данных в одном кэше после потери данных. Сохраненные файлы данных RDB/AOF не могут быть доступны пользователям и не импортированы в новый или существующий кэш. Чтобы переместить данные между кэшами, используйте функцию импорта и экспорта . Дополнительные сведения см. в статье "Импорт и экспорт данных" в Управляемом Redis в Azure.

Чтобы создать резервные копии данных, которые можно добавить в новый кэш, можно создавать автоматические скрипты с помощью PowerShell или Azure CLI, которые периодически экспортируют данные.

Предварительные требования и ограничения

Функции сохраняемости предназначены для восстановления данных в том же кэше после потери данных.

  • Сохраненные файлы данных RDB/AOF нельзя импортировать в новый кэш или существующий кэш. Вместо этого используйте функцию импорта и экспорта .
  • Сохраняемость не поддерживается с кэшами с помощью активной георепликации.
  • Управляемый диск с сохраненными файлами данных шифруется с помощью управляемых ключей Майкрософт (MMK) по умолчанию, но также можно использовать управляемые клиентом ключи (CMK). Дополнительные сведения см. в статье об управлении шифрованием данных.

Настройка сохраняемости данных с помощью портал Azure

  1. Войдите в портал Azure и следуйте инструкциям в кратком руководстве по Управляемому Redis в Azure.

  2. При достижении вкладки "Дополнительно" выберите параметры RDB или AOF в разделе "Сохраняемость данных".

    Снимок экрана, на котором показана вкладка

  3. Чтобы включить сохраняемость RDB, щелкните RDB и настройте параметры.

    Параметр Предлагаемое значение Description
    Частота резервного копирования Используйте раскрывающийся список и выберите интервал резервного копирования. Варианты включают 60 минут, 6 часов и 12 часов. Отсчет этого интервала начинается после успешного завершения предыдущей операции резервного копирования. По истечении этого интервала начинается новое резервное копирование.
  4. Чтобы включить сохраняемость AOF, выберите AOF. Доступен только один параметр частоты резервного копирования.

  5. Завершите создание кэша, выполнив остальные инструкции из краткого руководства по Управляемому Redis в Azure.

Примечание.

Сохраняемость можно добавить в ранее созданный экземпляр Azure Managed Redis в любое время, перейдя к дополнительным параметрам в меню ресурсов.

Настройка сохраняемости данных с помощью PowerShell и Azure CLI

Использование PowerShell

Команду New-AzRedisEnterpriseCache можно использовать для создания нового экземпляра Управляемого Redis Azure с помощью сохраняемости данных. RdbPersistenceEnabledИспользуйте параметры и AofPersistenceEnabledRdbPersistenceFrequencyAofPersistenceFrequency параметры, чтобы настроить настройку сохраняемости. В этом примере создается новый экземпляр Balanced B10 с использованием сохраняемости RDB с одной часовой частотой:

New-AzRedisEnterpriseCache -Name "MyCache" -ResourceGroupName "MyGroup" -Location "West US" -Sku "Balanced_B10" -RdbPersistenceEnabled -RdbPersistenceFrequency "1h"

Существующие кэши можно обновить с помощью команды Update-AzRedisEnterpriseCacheDatabase . В этом примере к существующему экземпляру добавляется сохраняемость RDB с частотой 12 часов:

Update-AzRedisEnterpriseCacheDatabase -Name "MyCache" -ResourceGroupName "MyGroup" -RdbPersistenceEnabled -RdbPersistenceFrequency "12h"

Использование Azure CLI

Команду az redisenterprise create можно использовать для создания нового экземпляра Управляемого Redis Azure с помощью сохраняемости данных. rdb-enabledИспользуйте параметры и aof-enabledrdb-frequencyaof-frequency параметры, чтобы настроить настройку сохраняемости. В этом примере создается новый экземпляр Balanced B10 с использованием сохраняемости RDB с одной часовой частотой:

az redisenterprise create --cluster-name "cache1" --resource-group "rg1" --location "East US" --sku "Balanced_B10" --persistence rdb-enabled=true rdb-frequency="1h" 

Существующие кэши можно обновить с помощью команды az redisenterprise database update . В этом примере к существующему экземпляру кэша добавляется сохраняемость RDB с частотой 12 часов:

az redisenterprise database update --cluster-name "cache1" --resource-group "rg1" --persistence rdb-enabled=true rdb-frequency="12h" 

Управление шифрованием данных

Так как сохраняемость Redis создает неактивных данных, шифрование этих данных является важной проблемой для многих пользователей. В Управляемом Redis azure данные хранятся на управляемом диске, подключенном к экземпляру кэша. По умолчанию диск с данными сохраняемости и диск ОС шифруются с помощью ключей, управляемых Корпорацией Майкрософт. Ключ, управляемый клиентом (CMK), также можно использовать для управления шифрованием данных. Инструкции см. в разделе "Шифрование в Управляемом Redis Azure".

Часто задаваемые вопросы о постоянном хранении

В следующем списке содержатся ответы на часто задаваемые вопросы о сохраняемости Управляемого Redis в Azure.

Сохраняемость RDB

Сохраняемость AOF

Можно ли включить постоянное хранение для ранее созданного кэша?

Да, сохраняемость можно настроить как при создании кэша, так и в существующих экземплярах Управляемого Redis Azure.

Можно ли одновременно активировать сохраняемость AOF и RDB?

Нет. Вы можете включить только сохраняемость RDB или AOF.

Как сохраняемость работает с георепликацией?

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

Какую модель сохраняемости следует выбрать?

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

Дополнительные сведения о производительности при использовании сохраняемости AOF см. в статье О ТОМ, влияет ли сохраняемость AOF на пропускную способность, задержку или производительность кэша?

Влияет ли сохраняемость AOF на пропускную способность, задержку или производительность кэша?

Использование сохраняемости AOF влияет на пропускную способность. AOF выполняется во всех основных процессах, поэтому вы видите более высокую загрузку ЦП и сервера для кэша с сохраняемостью AOF, чем идентичный кэш без сохраняемости AOF. AOF обеспечивает лучшую согласованность с данными в памяти, так как каждая запись и удаление сохраняются только через несколько секунд задержки. Компромисс заключается в том, что AOF является более интенсивным вычислением.

Что произойдет, если выполнено масштабирование до другого размера, а резервная копия была создана до этой операции?

Сохраняемость RDB и AOF:

  • Если было выполнено масштабирование до большего размера, это не окажет никакого влияния.
  • Если выполнено масштабирование до меньшего размера, и вам не хватает места для хранения всех данных из последней резервной копии, то при восстановлении ключи будут исключены. Как правило, ключи исключаются с помощью политики исключения allkeys-lru.

Будет ли взиматься плата за управляемый диск, используемый в сохраняемости данных?

Плата за управляемое хранилище дисков не взимается. Она включена в цену.

Можно ли изменить частоту резервного копирования RDB после создания кэша?

Да, можно изменить частоту резервного копирования для сохраняемости RDB с помощью портал Azure, CLI или PowerShell.

Почему при установленной частоте резервного копирования RDB в 60 минут между созданием резервных копий проходит больше времени?

Интервал резервного копирования сохраняемости RDB не начинается, пока не завершится процесс предыдущего резервного копирования. Если интервал резервного копирования составляет 60 минут и на процесс резервного копирования уходит 15 минут, то следующее резервное копирование начнется не ранее чем через 75 минут после начала предыдущего резервного копирования.

Что происходит со старыми резервными копиями RDB при создании другой?

Все резервные копии сохраняемости RDB, за исключением последней, автоматически удаляются. Это удаление может происходить не сразу, но старые резервные копии не хранятся в течение неограниченного периода времени.

Что такое перезапись и как она влияет на кэш?

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

Что следует ожидать при масштабировании кэша с включенной сохраняемостью AOF?

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

Дополнительные сведения см. в разделе Что произойдет, если выполнено масштабирование до другого размера, а резервная копия была создана до этой операции?

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