Производительность облачных дисков Azure PaaS по сравнению с дисками IaaS
Согласно комментарию к ответу Stackru,
В сетевой или рабочей роли вы должны использовать диск Azure, производительность которого намного ниже, чем у диска Azure, который вы получаете с виртуальным жестким диском. Ссылка: http://blogs.msdn.com/b/windowsazurestorage/archive/2012/06/28/exploring-windows-azure-drives-disks-and-images.aspx
- Matt Johnson 19 февраля в 20:15
Однако я прочитал эту справочную ссылку и другую связанную документацию и не могу найти ничего, что могло бы подтвердить утверждение о том, что облачный диск PaaS медленнее, чем диск IaaS. Фактически, единственное, что я вижу, это то, что диски работают на порциях по 2 МБ, тогда как диски работают на порциях по 128 КБ. Поэтому я бы предположил, что диски будут более производительными, чем диски.
Диски: IO < 2 мегабайта будет 1 транзакция; IO >= 2 мегабайта будут разбиты на транзакции размером 2 МБ или меньше
Диски: IO < 128 килобайт будет 1 транзакция; IO >= 128 килобайт будет разбит на транзакции размером 128 КБ или меньше
Есть ли у кого-нибудь реальные метрики или ссылки, чтобы указать разницу между этими двумя вариантами?
1 ответ
Эти две функции в настоящее время реализованы по-разному.
Диск Azure - это фильтр файловой системы, который захватывает вызовы NTFS, преобразует их в REST и перенаправляет на BLOB-объект Azure, поддерживающий диск (Page Blob). Сетевой ввод-вывод учитывает квоту виртуальной машины (каждое ядро виртуальной машины получает 100 Мбит / с).
Диски данных реализованы в гипервизоре Azure и представлены гостевой ОС как подключаемый диск. Та же самая основная идея - он преобразует вызовы к диску в REST и взаимодействует с BLOB-объектом Azure, поддерживающим диск (по-прежнему является блоком страниц). Сетевой ввод-вывод для обращения к хранилищу не учитывается в гостевой ОС, поэтому вы можете иметь 100 Мбит / с / ядро для "обычного" сетевого трафика при выполнении вызовов на диск с данными.
Для обоих вариантов существуют варианты локального кэширования, влияние которых будет зависеть от конкретных рабочих нагрузок и шаблонов ввода-вывода.
Я бы порекомендовал вам прочитать следующие подробности: