5个用于移动开发的最流行数据库

嵌入式数据库是轻量级的,独立的库,没有服务器组件,无需管理,一个小的代码尺寸,以及有限的资源需求。目前有几种嵌入式数据库,你可以在移动应用程序中使用。让我们来看看这些最流行的数据库。
  数据库
  数据类型存储
  License支持平台
  BerkeleyDBrelational, objects, key-value pairs, documentsAGPL 3.0Android, iOS
  Couchbase LitedocumentsApache 2.0Android, iOS
  LevelDBkey-value pairsNew BSDAndroid, iOS
  SQLiterelationalPublic DomainAndroid, iOS, Windows Phone, Blackberry
  UnQLitekey-value pairs, documentsBSD 2-ClauseAndroid, iOS, Windows Phone
  1. Berkeley DB
  Berkeley DB 是由美国 Sleepycat Software 公司开发的一套开放源代码的嵌入式数据库管理系统(已被 Oracle 收购),它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。
  Berkeley DB(BDB)是一个高效的嵌入式数据库编程库,C语言、C++、Java、Perl、Python、Tcl 以及其他很多语言都有其对应的 API。Berkeley DB 可以保存任意类型的键/值对(Key/Value Pair),而且可以为一个键保存多个数据。Berkeley DB 支持让数千的并发线程同时操作数据库,支持最大 256TB 的数据,广泛用于各种操作系统,其中包括大多数类 Unix 操作系统、Windows 操作系统以及实时操作系统。
  2. Couchbase Lite
  Couchbase Lite 是一个为满足在线和离线的移动应用所开发的超轻量的,可靠的,并且安全的 JSON 数据库。即使在最不确定的网络条件下,亦可以给您的移动应用提供富有成效的和可靠的信誉。除此之外,’同步门户’功能亦可以提供协作, 社交互动或者是用户的更新。
  3. LevelDB
  LevelDB 是 Google 开源出的一个 Key/Value 存储引擎,它采用 C++ 编写的,支持高并发访问和写入,特别适合对于高写入业务环境。
  对于 LevelDB 的概览可以参考数据分析与处理之二(Leveldb 实现原理)对 LevelDB 的一个描述,本文的图解更多的是 LevelDB 的一个实现层的纠缠,版本为 LevelDB 1.7.02。
  LevelDB 存储主要分为 SSTable 和 MemTable,前者为不可变且存储于持久设备上,后者位于内存上并且可变(在 LevelDB 中有两个 MemTable,一个为当前写入 MemTable,另一个为等待持久化的不可变 MemTable)。首先来看 SSTable 的实现层分析。
  4. SQLite
  SQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的 SQL 数据库引擎。 其特点是高度便携、使用方便、结构紧凑、高效、可靠。 与其他数据库管理系统不同,SQLite 的安装和运行非常简单,在大多数情况下 - 只要确保 SQLite 的二进制文件存在即可开始创建、连接和使用数据库。如果您正在寻找一个嵌入式数据库项目或解决方案,SQLite 是绝对值得考虑。
  5. UnQLite
  UnQLite 是,由 Symisc Systems 公司出品的一个嵌入式C语言软件库,它实现了一个自包含、无服务器、零配置、事务化的NoSQL 数据库引擎。UnQLite是一个文档存储数据库,类似于 MongoDB、Redis、CouchDB 等。同时,也是一个标准的 Key/Value 存储,与 BerkeleyDB 和 LevelDB 等类似。
  UnQLite 是一个嵌入式NoSQL(键/值存储和文档存储)数据库引擎。不同于其他绝大多数 NoSQL 数据库,UnQLite 没有一个独立的服务器进程。UnQLite 直接读/写普通的磁盘文件。包含多个数据集的一个完整的数据库,存储在单一的磁盘文件中。数据库文件格式是跨平台的,可以在32位和64位系统或大端和小端架构之间,自由拷贝一个数据库

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-09-23 07:10:46

5个用于移动开发的最流行数据库的相关文章

现流行数据库程序开发工具的比较分析

比较|程序|数据|数据库 [程序开发系列一]现流行数据库程序开发工具的比较分析 武汉华中师大信管系 谢刚 摘要:随着计算机技术不断发展,各种数据库编程工具也随着发展,使当今的大多数程序开发人员可以摆脱枯燥无味的用计算机指令或汇编语言开发软件,而是利用一系列高效的.具有良好可视化的编程工具去开发各种数据库软件,从而达到事半功倍的效果,但是现在市面上的数据库编程工具门类众多,优良不齐,比如VB,VC,DEPHI,PB等,对此我特别针对流行的开发语言介绍相应的较为成熟的数据库编程工具. 关键字:数据库

17个用于设计开发的chrome扩展工具

大多数设计师和开发人员都选择火狐,因为火狐提供了强大的插件扩展.尽管chrome目前提供的扩展还没不及火狐所提供的,但仍有可能成为设计师和开发者的选择.在某些情况下,他们不如火狐强大(如firebug和firebug lite),但如果你正在使用chrome,你可能会对他们提供的扩展有兴趣,何况chrome用于设计开发的工具正逐步被开发出来.       在这篇文章里,我们将介绍chrome17个用于设计开发的扩展工具.如果有可能的话,希望chrome提供的出色扩展也可与火狐扩展相媲美. Spe

独家 | 手把手教你用Python 3创建用于机器学习开发的Linux虚拟机(附安装教程&代码)

Linux是使用Python进行机器学习开发的极佳环境.这些工具能够被简便快捷地安装,并且您可以直接开发和运行大型模型. 在本教程中,您将了解如何使用Python创建和安装用于机器学习的Linux虚拟机.完成本教程后,您将知道: 如何下载和安装VirtualBox来管理虚拟机如何下载和安装Fedora Linux如何在Python 3中为机器学习安装一个SciPy环境 如果您的电脑操作系统是Windows.Mac OS X和Linux.那么本教程是适合您的. Linux虚拟机的好处 您可能有很多

java用于android开发要装什么集成开发工具

问题描述 java用于android开发要装什么集成开发工具 比如:用于企业开发要装eclipse J2EE版,android的装什么? 解决方案 eclipse + jdk + sdk 就行了 解决方案二: 就是给eclips装一个插件--ADT.嗯,然后在配置SDK的时候将路径指向SDK的路径就可以了!!! 解决方案三: 直接下一个androidstudio全搞定,或者idea+android插件

观点 | Docker根本不适合用于本地开发环境

本文讲的是观点 | Docker根本不适合用于本地开发环境,[编者的话]依托Docker运行的后端服务(如数据库,缓存,存储等)感觉相当完美,但对于编译语言,Docker却并未本地开发的理想之选. 我一直在尝试使用Docker作为本地开发环境,最近我又尝试了一遍,结果发现依然行不通.但是这次尝试我得出了进一步的结论,那就是对于大多数的开发堆栈而言,将Docker作为本地开发环境毫无意义,除了引入更多的复杂性外,几乎没有任何优势. 若要实现高效的代码编写.编译.运行周期,意味着本地开发环境的容器没

韩都衣舍将建立200个小组用于产品开发

[亿邦动力网讯]2月3日消息,知名淘品牌韩都衣舍CEO赵迎光表示,2012年韩都衣舍将建立200个小组用于产品开发,而2013年则会增加到350个.按每个小组3至5人计算,2012年韩都衣舍将投入600至1000人用于产品开发. 韩都衣舍CEO赵迎光新浪微博截图 据了解,韩都衣舍的产品开发小组的最早建立于2008年,由选款师.选款助理.商品制作专员.订单库管专员.文员组成.每个产品开发小组都有自己的开发资金,这些小组独立地为韩都衣舍选择产品款式,制定价格和生产数量,以及随时调整打折促销政策.而每

罗牛山6家猪场将被关原址用于旅游开发

因旅游规划,罗牛山(行情,问诊)(000735,SZ)旗下的猪场关停数量,由之前报道的2家增加到6家. 据悉,海口市政府日前计划,今年年底前将关停演丰东河流域6家大型养猪场,并督促其他3家猪场制定治理方案,在确保污水不外排的前提下逐步减少养殖规模,做好停产关闭准备.其中涉及罗牛山旗下的养猪场就有6家. 金融界盈利宝,活期储蓄利率提升1000% 将用于旅游开发 9月23日,海口市环保局公示的<海口市东寨港旅游区总体规划(2012-2030年)环评>(以下简称<旅游区环评>)显示,海口

农村集体建设用地流转不得用于商品房开发

本报扬州12月6日电国土资源部副部长王世元在中国土地学会2009年学术年会上表示,农村集体建设用地管理制度改革创新,是土地管理制度改革的重要内容,要严格实施土地用途管制,农村集体建设用地流转不得用于商品房开发. 王世元表示,农村集体建设用地管理制度改革创新,出发点和落脚点应当遵循"五个有利于":改革创新应当有利于在坚持土地公有制的前提下,实现权益的最佳形式:改革创新应当有利于城乡统筹.一体化发展:改革创新应当有利于节约集约用地,尤其是保护耕地:改革创新应当有利于城乡统一土地市场的培育和

Android开发中使用SQLite 数据库

SQPte 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP, Python)都使用了 SQPte. SQPte 由以下几个组件组成:SQL 编译器.内核.后端以及附件.SQPte 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试.修改和扩展 SQPte 的内核变得更加方便. 图 1. SQPte 内部结构 开发中使用SQLite 数据库-android sqlite数据库"&g