Azure-docs: Зачем смешивать хранилище таблиц и CosmosDB в теме хранилища таблиц

Созданный на 14 мар. 2019  ·  27Комментарии  ·  Источник: MicrosoftDocs/azure-docs

[Введите отзыв здесь]
Для неподготовленного веб-сайт Azure невероятно сложен и труден.

Зачем смешивать хранилище таблиц и CosmosDB в теме хранилища таблиц. Информация CosmosDB не должна вплетаться в тему «Хранилище таблиц». Почему вы усложняете изучение выбранной темы? Если бы я хотел прочитать о CosmosDB, я бы пошел в эту тему,

Карл


Детали документа

Не редактируйте этот раздел.

Pri1 assigned-to-author doc-enhancement review-team-triage storagsvc triaged

Самый полезный комментарий

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

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

Все 27 Комментарий

@ kdawg1406 Спасибо за вопрос! Мы занимаемся расследованием и вскоре сообщим вам об этом.

Привет @kwaman
И Table Storage, и Cosmos DB - это предложения для хранения структурированных данных NoSQL в Azure и, следовательно, сгруппированные вместе.

Мы передадим эту проблему владельцу контента для оценки и обновления по мере необходимости.

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

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

Неясно, поддерживают ли пакеты SDK CosmosDB обычную службу хранилища таблиц Azure.

Кроме того, установка пакетов Microsoft.Azure.Cosmos.Table и Microsoft.Azure.Storage.Blob в один и тот же проект является огромной проблемой - у них много похожих типов, таких как CloudStorageAccount , StorageCredentials и StorageException . Это не похоже на хороший опыт 🙁

ИМХО: это близко к блокировщику усыновления. Microsoft тратит МНОГО денег на привлечение нового бизнеса.

Когда с документами трудно добиться успеха (без глубокого технического понимания Azure), это блокирует или препятствует принятию.

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

Одно ПРИМЕЧАНИЕ вверху, ссылка на Cosmos-db является приемлемой и имеет смысл. Но после заметки дайте ему отдохнуть и позвольте содержанию соответствовать заголовку и ожиданиям пользователей.

Карл

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

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

Согласитесь, это сбивает с толку.
Пытался выяснить, какой пакет nuget мне нужен для хранилища таблиц Azure - нашел старую страницу пакета по адресу:
https://www.nuget.org/packages/WindowsAzure.Storage/
Это указывает на:
https://www.nuget.org/packages/Microsoft.Azure.CosmosDB.Table/
Что указывает на:
https://www.nuget.org/packages/Microsoft.Azure.Cosmos.Table

Что на самом деле не говорит о том, что это пакет для хранилища таблиц Azure? В нем говорится: «Эта клиентская библиотека позволяет работать с хранилищем таблиц Microsoft Azure CosmosDB ...»
Во всяком случае, я его установил, и вроде работает.

Также очень важно указать на области, в которых CosmosDb не подходит. Я собираюсь использовать эти таблицы в качестве источника данных для PowerBI, и хотя вы можете называть это соединение между PowerBI и CosmosDb «предварительным просмотром», оно во многом похоже на тестирование в производственной среде. Я действительно хотел бы знать, собираетесь ли вы убрать варианты хранения таблиц в обычном пространстве хранения, чтобы расширить свое предложение CosmosDb. Если вы идете по этому пути, нам нужно знать, чтобы мы могли оценить другие варианты.

Документация по хранилищу таблиц Azure действительно сбивает с толку.

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

Из-за всего этого у меня начинается беспорядок, и я начинаю желать, чтобы я просто не сделал консольное приложение и крошечную базу данных SQL Azure.

Хранилище таблиц Azure ( ссылка ) и API таблиц Azure Cosmos DB ( ссылка ) - это две отдельные службы, в которых API таблиц Cosmos DB по-прежнему предоставляет те же функции, что и API хранилища таблиц, но с дополнительными функциями. Если есть какие-либо вопросы относительно дорожной карты или функциональности, обращайтесь в AskCosmosDB . Они с радостью ответят на вопросы.

Да, я тоже запутался, и в вопросах, касающихся хранилища таблиц Azure, они говорят, что «оно принадлежит команде CosmosDB» ..., также хранилище таблиц Azure, имеет (почти) нулевую цену за стартовую плату, которая составляет около 5 долларов в месяц. для cosmosdb ... и т. д.

@ Mike-Ubezzi-MSFT - на самом деле они сильно отличаются по функциональности, если вы попытаетесь использовать его в PowerBI (это определенно тестовое решение производственного типа, которое было предоставлено в PowerBI. Его действительно следует удалить из PowerBI, пока оно не будет готово. Некоторое время я боролся с этим, пока не понял, что он действительно сломан - это просто выглядело так, как будто это был вариант (он работает для обычных таблиц, но не для таблиц Cosmos)

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

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

@MarkSiteRankSystems Спасибо за отзыв. Для этого есть запись Uservoice ( ссылка ), и эта функция кажется незапланированной. Кроме того, драйвер ODBC для Cosmos DB поддерживает SQL API: подключение к Azure Cosmos DB с помощью драйвера ODBC в настоящее время поддерживается только для учетных записей SQL API Azure Cosmos DB ( ссылка ).
Есть ли учебник, в котором используется Cosmos Table API с PowerBI? Это нужно вытащить.
Что касается документации, я согласен с тем, что все сервисы должны быть подробно описаны в отдельной книге, а не в гибридной перекрывающейся информации. Обратная связь была зафиксирована.

У меня сложилось впечатление, что есть коммерческий толчок к Cosmos DB, который вводит пользователей в заблуждение и надеется, что они активируют Cosmos DB вместо Azure Table.
Однако это не учитывает пользователей, которым не нужна дорогая Cosmos DB и которые могли бы использовать только хранилище таблиц Azure или искать где-нибудь еще конкурентов Microsoft (есть конкуренты, похожие на хранилище таблиц Azure, которые хорошо общаются и не производят впечатление закрытых. на следующий день).

Более того, это продвижение к общему API [1] и коммерческому использованию Cosmos DB оставило нам некорректную документацию. Сегодня я читал StackOverflow [2] и обнаружил, что документация по атрибутам таблиц [IgnoreProperty] [3] отключена.

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

[1] общий API не является плохим сам по себе, но когда документация по API написана, создается впечатление, что хранилище таблиц Azure отклоняется, это сомнительная бизнес-практика.
[2] https://stackoverflow.com/questions/53084652/azure-table-storage-property-attributes
[3] https://docs.microsoft.com/en-us/dotnet/api/microsoft.windowsazure.storage.table.ignorepropertyattribute?view=azure-dotnet.

С Новым Годом! Это все еще не решено. Я так рад, что нашел это обсуждение - больше не чувствую себя таким одиноким.

Я понял , что я должен быть в состоянии использовать Microsoft.Azure.Cosmos.Table для Azure Tables - надеюсь , и для управления самих таблиц и данных в них. Кто-нибудь знает какие-либо актуальные / актуальные образцы для этих случаев для таблиц Azure? Я в порядке, избегая уровня сущности / репозитория - я действительно просто хочу управлять простыми операторами CRUD и командами DDL.

Ха-ха, мы в мае 2020 года ... и здесь такая же проблема. Меня не интересует Cosmos DB, и я использую MongoDB Atlas (с использованием типа UUID, отличного от C # Legacy, кстати ...), просто хочу, чтобы простая дешевая плата Azure Table с оплатой по мере использования для хранения журналов и в качестве вторичной резервной копии, чтобы не потерять данные ... для которого трудно найти какие-либо документы. Поиск по запросу "лазурная таблица" на портале Azure указывает мне на Azure CosmosDB ... кажется, невозможно найти недавние документы на старых добрых таблицах Azure ...
Думаю, мне придется куда-нибудь еще ...

@ alexandre-spieser Вам нужен отдельный экземпляр документации службы

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

Теперь мы перейдем к закрытию этой темы. Если есть дополнительные вопросы по этому поводу, прокомментируйте, и мы с радостью продолжим обсуждение.

@ Mike-Ubezzi-MSFT Многие технические документы по хранилищу таблиц Azure указывают на технические документы CosmosDB. Объяснение состоит в том, что это та же группа продуктов / команда внутри Microsoft. Хранилище таблиц Azure плохо документировано.

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

PS. API таблиц для Cosmos DB в настоящее время не может служить заменой для хранилища таблиц Azure, поскольку там отсутствуют важные функции - сортировка по PartitionKey И RowKey (https://stackoverflow.com/questions/54946694/ordering-data-in-azure -космос-таблица-api). Такая сортировка широко используется приложениями, использующими таблицы Azure (потому что это только возможность сортировки), и я лично не понимаю, почему сверхсовременный Cosmos DB не поддерживает такие простые функции через API таблиц?

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

Я действительно хотел продолжить эту тему. Я понимаю, что документация по хранилищу таблиц Azure и API таблиц Azure Cosmos DB должна быть разделена. Это более масштабные усилия, которые обсуждаются внутри компании, и спасибо вам за то, что вы продолжаете делиться своими мыслями и идеями по этому поводу.
Кроме того, есть опция сортировки с Cosmos Table API, как было указано 15 марта 2019 года в ответ на поток переполнения стека. Также просмотрите запрос функции Table API Sort, который будет завершен 17 марта. Текущие и будущие выпуски и примечания к выпуску см. В статье: Azure Cosmos DB Table .NET Standard API: примечания к загрузке и выпуску

Помимо функций, в некоторых сценариях все еще существует огромная разница в стоимости между решениями. Итак, CosmosDB хорош, но он не собирается заменять хранилище таблиц для простых запросов и требований низкой стоимости.

Вот руководство, чтобы быстро приступить к работе с устаревшим хранилищем таблиц Azure с использованием последнего пакета NuGet Microsoft.Azure.Cosmos.Table.

  1. Получите образец кода: https://github.com/Azure-Samples/azure-cosmos-table-dotnet-core-getting-started
  2. Обновите все пакеты NuGet
  3. Закомментируйте в Program.cs обе строки, относящиеся к BasicSamples (это новый материал Cosmos, устаревшие биты хранилища таблиц Azure находятся в AdvancedSamples)
  4. В Settings.json установите StorageConnectionString: «UseDevelopmentStorage = true;»
  5. Запуск эмулятора хранилища Azure
  6. Запустите код

Необязательно
В AdvancedSamples.cs закомментируйте строку await SamplesUtils.DeleteEntityAsync (table, customerRead);
Используйте Microsoft Azure Storage Explorer для подключения к эмулятору и просмотра созданной таблицы и ее данных.

Надеюсь, это кому-то поможет

@ Mike-ubezzi-MSFT: Есть ли какие-либо мысли по поводу создания документа по миграции о том, как перейти с устаревшего хранилища Windows на пакеты CosmosDB? Я знаю, что это так же просто, как изменить пространства имен, но при поиске документов я оказался здесь как самый популярный.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

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

monteledwards picture monteledwards  ·  3Комментарии

bityob picture bityob  ·  3Комментарии

behnam89 picture behnam89  ·  3Комментарии

jebeld17 picture jebeld17  ·  3Комментарии

JeffLoo-ong picture JeffLoo-ong  ·  3Комментарии