Почему DynamoDB не использует простой JSON в качестве структуры данных?

0

Вопрос

Почему DynamoDB не использует простой JSON в качестве структуры данных?

Это кажется очень странным интерфейсом для любого пользователя. Я родом из Azure CosmosDB, и мы читаем и пишем только JSON.

И даже AWS впоследствии опубликовал библиотеку, которая скрывает это (их класс DocumentClient), но тогда, почему это было первоначальное решение?

И действительно, это скорее вопрос истории, чем вопрос развития сам по себе.

amazon-dynamodb amazon-web-services
2021-11-23 23:51:05
1

Лучший ответ

0

Этот вопрос более или менее основан на мнении, если только кто-нибудь из команд DynamoDB не ответит на этот вопрос, но здесь есть некоторые неправильные представления:

  • Вы, кажется, предполагаете, что DynamoDB поддерживает только те структуры данных, которые поддерживает JSON, это неверно. DynamoDB также поддерживает, например, наборы, которые не являются функцией в JSON.
  • DocumentClient предоставляет простую (хотя и негерметичную) абстракцию, которая сопоставляет некоторые языковые типы данных с базовыми типами данных DynamoDB, которые обычно представляют их лучше всего. Это может облегчить вашу жизнь, но не поддерживает все основные возможности.
2021-11-26 13:49:07

Определенно, я искал причину, по которой они выбрали такой "неестественный"дизайн. MongoDB (и AZ Cosmos придерживаются того же принципа) позволяет естественным образом хранить документы (с одним ограничением на использование поля _id).
Kat Lim Ruiz

DynamoDB поддерживает функции, которые не поддерживаются обычным JSON, поэтому они решили дополнить JSON метаданными для достижения этой цели, например, типом данных SS для наборов строк.
Maurice

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................