Использование Azure Cosmos DB для таблицы и хранилища таблиц Azure

Important

Вы ищете решение для баз данных для крупномасштабных сценариев с соглашением об уровне обслуживания (SLA) с доступностью 99,999%, мгновенным автомасштабированием и автоматическим переключением на резервные ресурсы в нескольких регионах? Рассмотрим Azure Cosmos DB для NoSQL.

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

Замечание

Режим бессерверной емкости доступен в API Azure Cosmos DB для таблицы. Дополнительные сведения см. в разделе бессерверная Azure Cosmos DB.

Если в настоящее время используется хранилище таблиц Azure, вы получите следующие преимущества, перейдя в Azure Cosmos DB для таблицы:

Feature Azure Table Storage (Хранилище таблиц Azure) Azure Cosmos DB для таблиц
Latency Быстрая, но без максимального ограничения по задержке. Задержка операций чтения и записи в пределах миллисекунд, гарантированная <10 мс для чтения и <15 мс для записи при 99-м процентиле, при любом масштабе и в любой точке мира.
Throughput Модель с переменной пропускной способностью. Таблицы имеют ограничение масштабируемости в 20 000 операций в секунду. Высокомасштабируемая система с зарезервированной выделенной пропускной способностью для каждой таблицы, обеспеченной соглашениями об уровне обслуживания. Учетные записи не имеют верхнего предела пропускной способности и поддерживают >10 миллионов операций в секунду в таблице в подготовленном режиме пропускной способности.
Глобальное распределение Один регион с одним необязательным вторичным регионом чтения для обеспечения высокой доступности, поддерживающей автоматическую и ручную отработку отказа учетной записи. Полностью готовое к использованию глобальное распределение от одного до 30 и более регионов. Поддержка переключения под управлением службы и ручного переключения в любое время и в любой точке мира.
Индексирование Только первичный индекс в PartitionKey и RowKey. Вторичные индексы не поддерживаются. Поддержка автоматического и полного индексирования всех свойств без необходимости управления индексами.
Query При выполнении запроса используется индекс для первичного ключа. В противном случае — сканирование. Для ускорения выполнения запросов может использоваться автоматическая индексация свойств.
Согласованность Сильная позиция в основном регионе. Конечная согласованность во вторичном регионе. Поддержка пяти точно определенных уровней согласованности с возможностью изменять показатели доступности, задержки, пропускной способности и согласованности в соответствии с потребностями приложений.
Pricing На основе потребления. Доступно в режимах на основе потребления и подготовленной емкости.
Соглашения об уровне обслуживания Доступность на уровне 99,99 %. Доступность на уровне 99,99 % в соответствии с соглашением об уровне обслуживания для всех учетных записей в пределах одного региона и всех учетных записей в пределах нескольких регионов с нестрогой согласованностью, а также доступность для чтения на уровне 99,999 % для всех многорегионных учетных записей базы данных Ведущие в отрасли универсальные соглашения об уровне обслуживания по общей доступности.

Azure SDKs

Пакеты средств разработки программного обеспечения Azure (SDK) предоставляют библиотеки для нескольких языков программирования, что позволяет разработчикам взаимодействовать с Azure Cosmos DB для таблиц и хранилища таблиц Azure.

Текущий выпуск

Эти пакеты SDK работают как с Azure Cosmos DB для Table, так и с Table Storage.

Package Исходный код
.NET NuGet — Azure.Data.Tables azure-sdk-for-net/sdk/tables/Azure.Data.Tables
Python PyPI — azure-data-tables azure-sdk-for-python/sdk/tables/azure-data-tables
JavaScript/TypeScript npm — @azure/data-tables azure-sdk-for-js/sdk/tables/data-tables
Java Maven- azure-data-tables azure-sdk-for-java/sdk/tables/azure-data-tables
Go pkg.go.dev - aztables azure-sdk-for-go/sdk/data/aztables
C++ vcpkg — azure-data-tables-cpp azure-sdk-for-cpp/sdk/tables/azure-data-tables

Предыдущие выпуски

Эти пакеты SDK работают только с Azure Cosmos DB для таблицы.