什麼是JSON?如何使用?它比BSON更好嗎?

2016-07-27    分類:WEB開發、程式設計開發、首頁精華1人評論發表於2016-07-27

本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

長話短說:如果你想知道JSON——它是什麼,如何使用它以及它和BSON哪個更好,那麼你來對地方了。在本文中,我們將探討這些縮寫字母代表什麼意思,以及這些格式在程式設計和資料庫世界中有什麼作用。

什麼是JSON?

JSON代表JavaScript Object Notation。基本上說來,它使用從JavaScript衍生的語法,用一種人類和機器都可讀的方式來表示資料。例如,JSON網站上使用的一個例子描述了JavaScript Object Notation中的glossary,如下所示:

如何使用JSON

正如你所看到的,我們建立了層次結構,在一系列花括號內({})封裝各個層次。在每個層次中,有名稱/值對,如“title”:“example glossary”。用和JavaScript物件相同的方式工作,通過啟動新的花括號,對的值部分可以開啟但卻會是另一個層次。這創造了一種良好的資料佈局,不但資訊可以被機器輕易掃描,而且人類搜尋所需要的內容也方便。

這種標記方法允許表示許多資料型別——數字,字串和布林值,雜湊(用{}封裝)和陣列(用[]封裝)。

一旦資料用這種標記方法表示的話,那麼JSON解析器可以用於幾乎任何程式語言,將這種標記方法轉變為本地資料型別,從而允許程式設計師使用語言的自然語法訪問資料。由於這種標記方法是如此的普遍,因此大多數程式設計師對儲存和檢索這種資料型別有著大量豐富的經驗。

如何在資料庫中使用它?

文件資料庫通常用JSON格式或基於這種格式來儲存資料。不同於關聯式資料庫使用表格和行,文件資料庫會通過使用JSON格式來儲存和查詢資訊。

這些資料庫把每組JSON資料作為一個檔案。由於結構是層次化的,因此每個文件都可以有關於任何鍵的子文件。這種設定使得它很容易讓熟悉語言的程式設計師在資料庫中儲存和查詢資料。

什麼是BSON?

BSON即Binary JSON。這種格式專門用於MongoDB的文件資料庫。其背後的理念是提供JSON格式的功能,同時也能夠用自帶二進位制格式的速度使用該格式。

JSON vs. BSON

JSON僅代表一種資料結構,而MongoDB可以使用BSON在任何層次的基礎上構建鍵資料庫索引,從而幫助提高這個領域的速度。MongoDB也提供了一種稱為GridFS的規範,可以結合BSON儲存資料,同時不受BSON的16MB檔案大小的限制。這在儲存大檔案時真的很有用,因為它會把大檔案劃分成“塊”,以便於在資料庫中的儲存能夠正常工作。

在大多數情況下,JSON和BSON非常相似,但BSON可以提供額外的速度衝擊。當然,兩者都是應用程式儲存和檢索資料非常方便的方法。

譯文連結:http://www.codeceo.com/article/json-vs-bson.html
英文原文:What is JSON? How Do I Use It? Does It Beat BSON?
翻譯作者:碼農網 – 小峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章