Меню

Главная
Случайная статья
Настройки
BSON
Материал из https://ru.wikipedia.org

BSON (англ. Binary JavaScript Object Notation) — формат электронного обмена цифровыми данными, бинарная форма представления простых структур данных и ассоциативных массивов (которые в контексте обмена называют объектами или документами). Является надмножеством JSON, включая дополнительно регулярные выражения, двоичные данные и даты[2].

Содержание

Типы данных и синтаксис

BSON-документы (объекты) состоят из сортированных списков элементов. Каждый элемент состоит из имени поля, типа и значения. Имена полей — это строки. Типы включают:
  • string — строка,
  • int — целое число,
  • double — число с плавающей запятой двойной точности,
  • DateTime — дата,
  • byte[] — массив байтов (бинарные данные),
  • bool — булевые (True и False),
  • null — «Null» (специальное значение),
  • BsonObject — BSON-объект,
  • BsonObject[] — массив BSON-объектов.


Не все эти типы доступны в JSON, в котором, например, нет массива с типом «бинарные данные», но из-за ограничений по длине некоторые действительные значения JSON (такие как очень длинные строки) не являются действительными значениями BSON[уточнить].

Эффективность

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

BSON во многом аналогичен Protocol Buffers — реализации языково- и платформно-независимого формата для обмена данными, но BSON является более свободным от схемы данных. Тем самым, большая гибкость BSON уменьшает преимущества в производительности в случае, когда схема определена[2].

Примечания
  1. BSON Support in ASP.NET Web API 2.1
  2. 1 2 Tiwari, 2011, Chapter 4: Understanding the Storage Architecture > Document Store Internals.


Литература

Ссылки
Downgrade Counter