Что такое BSON и чем именно он отличается от JSON?


Я только начинаю с MongoDB и одна из вещей, которые я заметил, что он использует BSON сохранить данные. Однако в документации не совсем ясно, что такое BSON и как он используется в MongoDB. Может кто-нибудь объяснить мне, пожалуйста?

5 73

5 ответов:

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

на практике вам не нужно много знать о BSON при работе с MongoDB, вам просто нужно использовать собственные типы вашего языка и предоставленные типы (например, ObjectId) его драйвера при создании документов, и они будут сопоставлены с соответствующим BSON введите по водителю.

  • что это BSON?

    зубров [пчелка · саном], короткий для двоичном формате JSON, является двоично-кодированным сериализация JSON-подобных документов.

  • чем он отличается от JSON?

BSON разработан, чтобы быть эффективным в пространстве, но в некоторых случаях не намного эффективнее, чем JSON. В некоторых случаях BSON использует даже больше места, чем JSON. Причина для это еще одна из целей дизайна BSON: проходимость. BSON добавляет некоторую "дополнительную" информацию к документам, например длину строк и подобъектов. Это делает обход быстрее.

BSON также предназначен для быстрого кодирования и декодирования. Например, целые числа хранятся как 32 (или 64) битные целые числа, поэтому их не нужно анализировать в текст и из текста. Это использует больше места, чем JSON для небольших целых чисел, но гораздо быстрее для разбора.

в дополнение к компактности, BSON добавляет дополнительные типы данных, недоступные в JSON, в частности BinData и дата типы данных.

от http://bsonspec.org/

MongoDB представляет документы JSON в двоичном формате, называемом BSON за кулисами. BSON расширяет модель JSON, чтобы обеспечить дополнительные типы данных и быть эффективным для кодирования и декодирования в разных языках.

используя кодировку BSON поверх JSON, MongoDB получает возможность создавать индексы поверх значений, которые находятся внутри документа JSON в формате raw. Это помогает в выполнении эффективных аналитических запросов, поскольку система NoSQL была известна тем, что не поддерживала индексы.

в MongoDB представляет JSON documents на двоично-кодированном формате Так что мы называем BSON за кулисами.

BSON расширяет модель JSON, чтобы обеспечить дополнительные типы данных, такие как Date и binary, который был не поддерживается в JSON также предоставляют упорядоченные поля,.

Он должен быть эффективным для кодирования и декодирования в разных языках. 

другими словами, мы можем скажи BSON - это просто двоичный JSON (надмножество JSON с некоторыми другими типами данных, самое главное двоичный массив байтов).

Mongodb используя в качестве формата сериализации JSON С формат кодирования для хранения и доступа к документам. просто мы можем сказать, что BSON-это двоичный кодированный формат для данных JSON.

для получения дополнительной статьи mongoDB:https://om9x.com/blog/bson-vs-json/