Skip to content
June 4, 2012 / ahriman hpc mode

Различия между локальным эмулятором хранилища и сервисами хранилища Windows Azure

Эмулятор хранилища Windows Azure локально эмулирует сервисы хранилища Windows Azure, и который можно использовать для разработки и тестирования в локальной инфраструктуре. Однако между локальным эмулятором и реальными сервисами хранилища есть некоторые различия, информация о которых предоставлена в данной статье.

К общим различиям можно отнести количество аккаунтов и ключ аутентификации. Локальный эмулятор хранилища поддерживает только один фиксированный аккаунт и один ключ аутентификации, при этом они не меняются и равны:

 

Имя аккаунта: devstoreaccount1
Ключ аккаунта: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==

Также локальный эмулятор хранилища не поддерживает большое количество конкуррентных подключений и клиентов и не умеет масштабироваться, и имеет отличную схему URI от схемы URI реальных сервисов хранилища Windows Azure. URI локального эмулятора определяет имя аккаунта как часть пути в URI, а не как часть доменного имени. Причина этого проста – в локальном эмуляторе нет резольвинга имён.

Различия между сервисами хранилища и локальным эмулятором, относящиеся непосредственно к сервисам, сведены в таблицу ниже.

Блобы Реальное хранилище Windows Azure Локальный эмулятор хранилища
Размер блоба До 1 Тб Максимум 2 Гб.
Ошибки одновременного аплоада блока к несуществующему блобу   Первый запрос создаст блоб, второй возвратит ошибку 409 (Конфликт)  с текстом BlobAlreadyExists
REST   PutBlob без указания ID лизинга может возвратить блоб, существующий в локальном эмуляторе и имеющий активный лизинг
Указание свойств блобов (Microsoft.WindowsAzure.StorageClient.

CloudBlobClient.SetServiceProperties(Microsoft.WindowsAzure.StorageClient.

Protocol.ServiceProperties).

Поддержка присутствует Поддержка отсутствует
     

 

Таблицы Реальное хранилище Windows Azure Локальный эмулятор хранилища
Insert-Or-Replace Entity, Insert-Or-Merge Entity, upsert-фичи Поддерживается Не поддерживается
Проекция сущностей Поддерживает Не поддерживается
Диапазоны данных   Свойства типа Date в сервисе таблиц в локальном эмуляторе поддерживают максимальный размер, поддерживаемый SQL Server 2005 (начиная с 1 января 1753 года), все даты же перед этой датой будут сдвинуты на эту дату. Точность данных ограничена точностью, поддерживаемой SQL Server 2005.
Ключевые свойства   Размер ключевых свойств таблицы partition key и row key должен быть менее 900 байт, общий же размер имени аккаунта, имени таблицы и имен свойств не должен превышать 900 байт (в связи с правилами формирования URI)
Размер записи   Ограничен до 1 Мб
Размер пакета транзакций 4 Мб, ограничение проверяется Локальный

эмулятор не проверяет размер пакета транзакций, который должен быть меньше 4 Мб
Задание свойств сервиса, Microsoft.WindowsAzure.StorageClient.

CloudTableClient.SetServiceProperties(Microsoft.WindowsAzure.StorageClient.

Protocol.ServiceProperties).

Поддерживается Не поддерживается

 

Очереди Реальное хранилище Windows Azure Локальный эмулятор хранилища
Указание свойств (Microsoft.WindowsAzure.StorageClient.

CloudQueueClient.SetServiceProperties(Microsoft.WindowsAzure.StorageClient.

Protocol.ServiceProperties).

Поддержка присутствует Поддержка отсутствует

 

Таким образом, необходимо учитывать различия между локальным эмулятором и облачными сервисами хранилища перед тем, как переводить приложение в облако.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: