Пропустить навигацию
В ПРЕДВАРИТЕЛЬНОЙ ВЕРСИИ

Оптимизированная синхронизация реплик запросов в Azure Analysis Services доступна в предварительной версии

Дата публикации: 18 января, 2020

Новый параметр Azure Analysis Services (предварительная версия) оптимизирует производительность и согласованность синхронизации реплик запросов в горизонтально масштабируемых средах. При горизонтальном масштабировании запросов клиентские запросы распределяются между репликами запросов, что сокращает время отклика для рабочих нагрузок с высокой степенью параллелизма. При синхронизации реплик запросов данные реплицируются в базы данных реплик запросов.

По умолчанию реплики запросов восстанавливаются полностью (не инкрементно), и это происходит поэтапно. Они отсоединяются и присоединяются по две за раз (при условии, что существует по крайней мере три реплики), чтобы гарантировать подключение к сети и доступность для запросов в любой момент времени хотя бы для одной реплики. При выполнении этого процесса клиентам может потребоваться повторно подключиться к одной из подключенных реплик.

С помощью нового параметра ReplicaSyncMode теперь можно настроить параллельную синхронизацию реплик запросов. Оптимизированная синхронизация реплик запросов также обеспечивает следующие преимущества:

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

Для демонстрации преимуществ оптимизированной синхронизации группа разработки продукта провела тестирование базы данных размером примерно 84 ГБ в SKU S8v2 с тремя репликами. Добавочная синхронизация заняла около 2 минут, а недобавочная — 5 минут. Для той же базы данных в SKU S8v2 с семью репликами время выполнения добавочной синхронизации осталось неизменным, а время выполнения недобавочной синхронизации увеличилось до 11 минут.

Возможные значения параметра ReplicaSyncMode:

  • 1. (По умолчанию.) Полное восстановление реплики базы данных по этапам.
  • 2. Оптимизированная синхронизация в параллельном режиме.

FastReplicaSync (002)

Если задать значение ReplicaSyncMode=2, реплики запросов смогут использовать дополнительный объем памяти (это зависит от объема данных кэша, которые нужно обновить). Чтобы база данных была подключена к сети и оставалась доступной для запросов, в ходе этой операции может потребоваться удвоить объем памяти в реплике в зависимости от того, какая часть данных изменилась. Это объясняется тем, что старые и новые сегменты сохраняются в памяти одновременно. Реплики узлов потребляют столько же памяти, сколько и первичный узел. Так как на основном узле обычно предусмотрен дополнительный объем памяти для операций обновления, маловероятно, что в репликах возникнет нехватка памяти. Кроме того, обычно база данных инкрементно обновляется на основном узле, поэтому удваивать объем памяти не нужно. Если в ходе синхронизации появляется сообщение об ошибке "Недостаточно памяти", будет предпринята повторная попытка с использованием метода по умолчанию (присоединение и отсоединение двух реплик одновременно).

См. сведения о горизонтальном масштабировании запросов в Azure Analysis Services.

  • Службы Azure Analysis Services
  • Features
  • Management
  • Services

Связанные продукты