Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16978
  • 博文数量: 6
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 72
  • 用 户 组: 普通用户
  • 注册时间: 2014-12-02 11:29
文章分类
文章存档

2014年(6)

我的朋友

分类: Android平台

2014-12-18 13:50:45

 

的嵌入式数据库的量级很轻,而且很独立,它木有服务器组件,也无需管理,代码尺寸小,资源需求也是有限的。现在有几种嵌入式数据库,你可以在移动应用程序中使用它。接下来就来介绍一下这几个比较受欢迎的数据库

Couchbase Lite

Couchbase Lite是一个为满足在线和离线的移动应用所开发的超轻量的,可靠的,并且安全的JSON数据库。即使在最不确定的网络条件下,亦可以给您的移动应用提供富有成效的和可靠的信誉。除此之外,’同步门户’功能亦可以提供协作,社交互动或者是用户的更新。

UnQLite

UnQLite是,由Symisc Systems公司出品的一个嵌入式C语言软件库,它实现了一个自包含、无服务器、零配置、事务化的NoSQL 数据库引擎。UnQLite是一个文档存储数据库,类似于MongoDBRedisCouchDB等。同时,也是一个标准的Key/Value存储, 与BerkeleyDBLevelDB等类似。

UnQLite是一个嵌入式NoSQL(键/值存储和文档存储)数据库引擎。不同于其他绝大多数NoSQL数据库,UnQLite没有一个独立的服 务器进程。UnQLite直接读/写普通的磁盘文件。包含多个数据集的一个完整的数据库,存储在单一的磁盘文件中。数据库文件格式是跨平台的,可以在32 位和64位系统或大端和小端架构之间,自由拷贝一个数据库。

Berkeley DB

Berkeley DB是由美国Sleepycat Software公司开发的一套开放源代码的嵌入式数据库管理系统(已被Oracle收购),它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。

Berkeley DBBDB)是一个高效的嵌入式数据库编程库,C语言、C++JavaPerlPythonTcl以及其他很多语言都有其对应的APIBerkeley DB可以保存任意类型的键/值对(Key/Value Pair),而且可以为一个键保存多个数据。 Berkeley DB支持让数千的并发线程同时操作数据库,支持最大256TB的数据,广泛用于各种操作系统,其中包括大多数类Unix操作系统、 Windows操作系统以及实时操作系统。

Couchbase移动平台的亮点:

1.JSON Anywhere:使用专为面向对象的移动应用设计的灵活的数据模型,即时适应你的应用程序需要而无需大幅改动应用程序。

2.易于同步(轻松同步):只须几行代码就可以同步就绪;使开发者可以更专注于应用开发本身,而非同步问题。

3.原生APIs:使用专门为iOSAndroid优化的API管理移动数据库。

4.REST APIs:基于你的开发需求,REST APIs提供了一种替代的访问方法。

LevelDB

LevelDBGoogle开源出的一个Key/Value存储引擎,它采用C++编写的,支持高并发访问和写入,特别适合对于高写入业务环境。

对于LevelDB的概览可以参考数据分析与处理之二(Leveldb实现原理)对LevelDB的一个描述,本文的图解更多的是LevelDB的一个实现层的纠缠,版本为LevelDB 1.7.02

LevelDB存储主要分为SSTableMemTable,前者为不可变且存储于持久设备上,后者位于内存上并且可变(LevelDB中有两 个MemTable,一个为当前写入MemTable,另一个为等待持久化的不可变MemTable)。首先来看SSTable的实现层分析。

SQLite

SQLite是一个开源的嵌入式关系数据库,实现了自包容和零配置、支持事务的SQL数据库引擎。它的高度便携、使用方便、结构紧凑、高效而且可靠。与其他数据库管理系统不同,SQLite的安装和运行非常简单,一般情况下,只要能保证SQLite的二进制文件存在,就可以开始创建,连接和使用数据库了。

假如你现在在寻找一个嵌入式数据库项目,或者解决方案,SQLite是一个很好的选择。


本文来自麦子学院:

阅读(3973) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~