5個用于移動開發的最流行數據庫
數據庫 |
數據類型存儲
</div>
</th>
License |
支持平臺 |
</tr>
</thead>
BerkeleyDB |
relational, objects, key-value pairs, documents |
AGPL 3.0 |
Android, iOS |
</tr>
Couchbase Lite |
documents |
Apache 2.0 |
Android, iOS |
</tr>
LevelDB |
key-value pairs |
New BSD |
Android, iOS |
</tr>
SQLite |
relational |
Public Domain |
Android, iOS, Windows Phone, Blackberry |
</tr>
UnQLite |
key-value pairs, documents |
BSD 2-Clause |
Android, iOS, Windows Phone |
</tr>
</tbody>
</table>
Berkeley DBBerkeley DB是由美國Sleepycat Software公司開發的一套開放源代碼的嵌入式數據庫管理系統(已被Oracle收購),它為應用程序提供可伸縮的、高性能的、有事務保護功能的數據管理服務。 Berkeley DB(BDB)是一個高效的嵌入式數據庫編程庫,C語言、C++、Java、Perl、Python、Tcl以及其他很多語言都有其對應的API。Berkeley DB可以保存任意類型的鍵/值對(Key/Value Pair),而且可以為一個鍵保存多個數據。Berkeley DB支持讓數千的并發線程同時操作數據庫,支持最大256TB的數據,廣泛用于各種操作系統,其中包括大多數類Unix操作系統、Windows操作系統以及實時操作系統。 Couchbase LiteCouchbase Lite 是一個為滿足在線和離線的移動應用所開發的超輕量的,可靠的,并且安全的JSON數據庫。即使在最不確定的網絡條件下,亦可以給您的移動應用提供富有成效的和可靠的信譽。除此之外,’同步門戶’功能亦可以提供協作, 社交互動或者是用戶的更新。 Couchbase移動平臺的亮點JSON Anywhere使用專為面向對象的移動應用設計的靈活的數據模型,即時適應你的應用程序需要而無需大幅改動應用程序 易于同步 (輕松同步)只須幾行代碼就可以同步就緒;使開發者可以更專注于應用開發本身,而非同步問題。 原生 APIs使用專門為iOS和Android優化的API管理移動數據庫 REST APIs基于你的開發需求, REST APIs 提供了一種替代的訪問方法。 LevelDBLevelDB是Google開源出的一個Key/Value存儲引擎,它采用C++編寫的,支持高并發訪問和寫入,特別適合對于高寫入業務環境。 LevelDB存儲主要分為SSTable和MemTable,前者為不可變且存儲于持久設備上,后者位于內存上并且可變(在LevelDB中有兩個MemTable,一個為當前寫入MemTable,另一個為等待持久化的不可變MemTable)。首先來看SSTable的實現層分析。 SQLiteSQLite 是一個開源的嵌入式關系數據庫,實現自包容、零配置、支持事務的SQL數據庫引擎。 其特點是高度便攜、使用方便、結構緊湊、高效、可靠。 與其他數據庫管理系統不同,SQLite 的安裝和運行非常簡單,在大多數情況下 - 只要確保SQLite的二進制文件存在即可開始創建、連接和使用數據庫。如果您正在尋找一個嵌入式數據庫項目或解決方案,SQLite是絕對值得考慮。 UnQLiteUnQLite是,由 Symisc Systems公司出品的一個嵌入式C語言軟件庫,它實現了一個自包含、無服務器、零配置、事務化的NoSQL數據庫引擎。 UnQLite是一個
可以通過UnQLite特點一頁,了解更多的細節。(想想: UnQLite是,一個自包含的C庫,無外部依賴。它要求非常小的外部庫或來自操作系統的支持。特別適合應用于嵌入式設備,也適用于應用程序內部(那些需要運行于大量的計算機,而無需修改各種配置)。 UnQLite是,100%手工編碼,使用ANSI C,線程安全,完全可重入,編譯無需修改,而且可運行于絕大多數的平臺,包括受限的嵌入式設備,僅需要一個C編譯器。UnQLite已經在非常廣泛的平臺進行了測試,包括Windows和UNIX系統,特別是Linux、FreeBSD、Oracle Solaris及Mac OS X。 UnQLite是,一個標準的key/value存儲,與BerkeleyDB和LevelDB等相似。但是,擁有更加豐富的特性集,包括支持事務(ACID),并發讀等。在KV存儲下,鍵和值都被視為簡單的字節數組,所以內容可以是任何東西,包括ASCII字符串、二進制對象和磁盤文件等。應用程序,可以通過接口API來訪問KV層,包括 等等。 UnQLite用來在數據庫中存儲JSON文檔(如,對象、數組、字符串等)的文檔存儲接口,是通過 總之,UnQLite一塊開源軟件,在 2-Clause BSD協議下開放源代碼。 UnQLite編程接口以下文檔描述了,如何使用API進行UnQLite編程。UnQLite的學習成本很低,對于變成新手,也很容易學習。有用的鏈接,如下: 5分鐘玩轉UnQLite這是一個非常初級的UnQLite編程指南,通過C語言實現的列子展開介紹。 UnQLite C/C++接口介紹描繪了一個UnQLite C/C++編程接口的概覽和路線圖。 Jx9介紹Jx9就是支撐UnQLite文檔存儲接口的嵌入式腳本語言。Jx9是一個圖靈完備(Turing-Complete),基于JSON的,編程語言,作為UnQLite內核的一個庫而存在。 C/C++ API參考指南這個文檔描述了每個API函數的具體細節。 UnQLite數據庫引擎架構概括的介紹了UnQLite的上層構架和相關的接口。 外部函數實現這是一個howto指南,介紹如何創建和安裝外部函數(一般為C/C++實現),以及如何通過Jx9腳本進行調用。 常量擴展機制這是一個howto指南,介紹加載外部常量(一般為C/C++實現),以及如何通過Jx9腳本擴展其值。 其他有用的鏈接下載獲取最新開放版本的UnQLite,開始嵌入,并享受編程的樂趣。 UnQLite特色這個文檔枚舉,并介紹了UnQLite的一些特色和擴展,以及數據庫模型相關的Jx9編程語言。 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
相關經驗
| |
---|