-
Notifications
You must be signed in to change notification settings - Fork 80
/
index.html
82 lines (81 loc) · 4.26 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<meta name="google-site-verification" content="mgXKU4eJahd8ymdcdK9W5XHEzt0GmpovTXx2saqSQEk">
<title>BSON (Binary JSON) Serialization</title>
<link rel="stylesheet" href="css/reset-fonts-grids.css" type="text/css">
<link rel="stylesheet" href="css/style.css" type="text/css">
</head>
<body>
<div id="doc" class="yui-t7">
<div id="hd">
<h1><a href="#/">BSON</a></h1>
<div id="graphic">
<div id="right-brace" class="brace">}</div>
<div id="bits">
01000010<br>
01010011<br>
01001111<br>
01001110
</div>
<div id="left-brace" class="brace">{</div>
</div>
</div>
<div id="bd">
<div class="yui-g intro">
<div class="yui-u first">
<p><abbr title="Binary JSON">BSON</abbr>, short for Bin­ary <a href="http://json.org"><abbr title="JavaScript Object Notation">JSON</abbr></a>, is a bin­ary-en­coded seri­al­iz­a­tion of JSON-like doc­u­ments. Like JSON, BSON sup­ports the em­bed­ding of doc­u­ments and ar­rays with­in oth­er doc­u­ments and ar­rays. BSON also con­tains ex­ten­sions that al­low rep­res­ent­a­tion of data types that are not part of the JSON spec. For ex­ample, BSON has a Date type and a BinData type.</p>
<p>BSON can be com­pared to bin­ary inter­change for­mats, like <a href="http://code.google.com/p/protobuf/">Proto­col Buf­fers</a>. BSON is more "schema-less" than Proto­col Buf­fers, which can give it an ad­vant­age in flex­ib­il­ity but also a slight dis­ad­vant­age in space ef­fi­ciency (BSON has over­head for field names with­in the seri­al­ized data).</p>
</div>
<div class="yui-u">
<p>BSON was de­signed to have the fol­low­ing three char­ac­ter­ist­ics:</p>
<ol>
<li>
<h3>Lightweight</h3>
<p>Keep­ing spa­tial over­head to a min­im­um is im­port­ant for any data rep­res­ent­a­tion format, es­pe­cially when used over the net­work.</p>
</li>
<li>
<h3>Traversable</h3>
<p>BSON is de­signed to be tra­versed eas­ily. This is a vi­tal prop­erty in its role as the primary data rep­res­ent­a­tion for <a href="http://www.mongodb.org">Mon­goDB</a>.</p>
</li>
<li>
<h3>Efficient</h3>
<p>En­cod­ing data to BSON and de­cod­ing from BSON can be per­formed very quickly in most lan­guages due to the use of C data types.</p>
</li>
</ol>
</div>
</div>
<div id="buttons">
<span class="button" id="first-button">
<a class="nav spec" href="spec.html">specification</a>
</span>
<span class="button">
<a class="nav lib" href="implementations.html">implementations</a>
</span>
<span class="button">
<a class="nav faq" href="faq.html" rel="address:faq">FAQ</a>
</span>
<span class="button">
<a class="nav" href="https://groups.google.com/group/bson">discussion</a>
</span>
</div>
<div id="ft">
<div>
<a href="http://creativecommons.org/publicdomain/zero/1.0/" id="cc" class="ro"><span>Creative Commons — CC0</span></a>
</div>
</div>
</div>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-7301842-4");
pageTracker._trackPageview();
} catch(err) {}
</script>
</body>
</html>