2012-03-28 3 views
2

Я настраиваю систему на Windows Azure, для которой я ожидаю большой объем данных и высокий трафик. Чтобы справиться с этим, я создаю федеративную базу данных. Я заинтересован в том, чтобы при необходимости сама прикладная программа SPLIT (или DROP) объединяла базы данных. Есть две причины, которые должны привести к следующим операциям: 1) размер базы данных достигает предела, разрешенного в Windows Azure, и 2) объем трафика на сервере слишком высок, а операция SPLIT повысит производительность, сохраняя низкое время отклика (работает быстро). (обратные операции основаны на аналогичных рассуждениях).Как запускать SPLIT и DROP при наложении на SQL Azure

Мой вопрос: Как я могу определить эти 2 условия программно?

ответ

1

Вы можете использовать Sql Azure Dynamic Management Views для программного мониторинга баз данных Sql Azure. Обратите внимание, что вы не сможете одновременно контролировать всю федеративную базу данных, а не каждый из ее отдельных членов.

Использование Dynamic Management Views для проверки условия 1), связанное с размером, должно быть прямым. Обнаружение условия № 2), связанное с трафиком/производительностью, немного сложнее, поскольку вам сначала нужно определить точные метрики, которые имеют смысл и их пороговые значения.

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

DROP однако совсем другой. При отбрасывании члена федерации Sql Azure будет перемещать свой диапазон значений ключа в член федерации нижнего или верхнего соседа, но сами данные просто удаляются. Вы можете получить более подробное описание в статье this (найдите в нем «Масштабирование»). В основном вам придется вручную экспортировать данные из упавшей базы данных и вручную объединить их в целевую базу данных. С технической точки зрения, вы можете автоматизировать операцию слияния через версию командной строки мастера миграции Sql Azure, но это рискованно. Это потребовало бы много испытаний, прежде чем вводить его в производство.

Microsoft планирует реализовать автоматическое слияние с членами федерации, но это произойдет в будущей версии. Как сейчас, автоматическое масштабирование - это не то, что я бы рекомендовал.

Update

Для тех, кто заинтересован, вы можете проголосовать за операции MERGE на базах данных SQL Azure федеративной here.

 Смежные вопросы

  • Нет связанных вопросов^_^