文档章节

嵌入式数据库调研

刘春辉
 刘春辉
发布于 2015/08/16 23:52
字数 884
阅读 133
收藏 4

嵌入式数据库概念:

嵌入式数据库系统是指支持移动计算或某种特定计算模式的数据库管理系统,他通常与操作系统和具体应用集成在一起,运行在智能型嵌入式设备或移动设备上。由于嵌入式数据库总是与移动计算相结合,所以嵌入数据库通常也称为嵌入式移动数据库。

嵌入式数据库种类:

1.progress:


2.SQLite:http://www.sqlite.org/


1. 支持事件,不需要配置,不需要安装,也不需要管理员

2. 支持大部分SQL92

3. 一个完整的数据库保存在磁盘上面一个文件,同一个数据库文件可以在不同机器上面使用,最大到2T,字符和BLOB的支持仅限制于可用内存

4. 整个系统少于3万行代码,少于250KB的内存占用(gcc),大部分应用比目前常见的客户端/服务端的数据库快,没有其它依赖 

5. 源代码开放,代码95%有较好的注释,简单易用的API。官方带有TCL的编译版本。

SQLite执行速度快,http://www.ituring.com.cn/article/44112


3.Empress(商业数据库):


4.Berkeley DB的特点如下:

1、嵌入式,无需安装配置。
2、为多种编程语言提供了API接口,其中包括C、C++、Java、Perl、Tcl、Python和PHP等等。
3、轻便灵活。它可以运行于几乎所有的UNIX和Linux系统及其变种系统、Windows操作系统以及多种嵌入式实时操作系统之下。
4、可伸缩。它的Database library才几百KB大小,但它能够管理规模高达256TB的数据库。它支持高并发度,成千上万个用户可同时操纵同一个数据库。


5.Firebird的嵌入版有如下特色:

1、数据库文件与Firebird网络版本完全兼容,差别仅在于连接方式不同,可以实现零成本迁移。
2、数据库文件仅受操作系统的限制,且支持将一个数据库分割成不同文件,突破了操作系统最大文件的限制,提高了IO吞吐量。
3、完全支持SQL92标准,支持大部分SQL-99标准功能。
4、丰富的开发工具支持,绝大部分基于Interbase的组件,可以直接使用于Firebird。
5、支持事务、存储过程、触发器等关系数据库的所有特性。
6、可自己编写扩展函数(UDF)。

嵌入式数据库特性对比
产品名称      SQLite        Berkeley DB          Firebird
当前版本:     3.3.8、         4.5.20、            2.0
速度:        最快、          快、              
稳定性:       好、           好、              
数据库容量:    2TB、         256TB、             64TB
SQL支持:    大部份SQL- 92、     不支持、       完全SQL-92与大部份SQL-99
Win32平台下最小体积: 374KB、     840KB、             3.68MB
数据操纵:    SQL、         仅应用程序接口、          SQL

开发接口:C, C++, PHP, Java, Delphi, Python .net(有些是第三方厂商开发的)

从 以上对比中,我们可以看到,最短小精悍的是SQLite,它的性能也是最高的,Berkeley DB比较特殊,因为它不是用SQL语言来操纵数据的,Firebird嵌入版的体积对比之下显得稍大了些,但它对关系数据库特性的支持是最好的,如果要考 虑到今后或许要将数据库升级成网络版本,就要选Firebird了。


相关链接:

http://www.360doc.com/content/11/0321/10/59141_103107315.shtml




本文转载自:http://www.360doc.com/content/11/0321/10/59141_103107315.shtml

刘春辉
粉丝 4
博文 18
码字总数 5952
作品 0
淄博
程序员
私信 提问
Nacos v0.7.0:对接 CMDB,实现基于标签的服务发现能力

Nacos近期发布了0.7.0版本,该版本支持对接第三方CMDB获取CMDB数据、使用Selector机制来配置服务的路由类型、支持单机模式使用MySQL数据库、上线Node.js客户端,并修复了一些bug。 一、对接C...

中间件小姐姐
2018/12/21
1K
0
One$DB

Daffodil DB Java嵌入式数据库是一个独立平台且功能丰富的Java关系数据库管理系统。能提供多级连接是针对嵌入式的Java应用程序而设计。Daffodil DB嵌入式数据库可以在Java程序内直接集成,并...

匿名
2008/09/11
504
0
APL 解释器--NARS2000

第一个 NARS (Nested Arrays Research System) 嵌入式数组调研系统在 1980s 早期已经被设计并且实现了,作为新理念的 APL 解决方案,主要是嵌入式数组。四分之一个世纪之后,我们重新来尝试 ...

叶秀兰
2014/10/22
345
0
工作选择这事儿,方向不对很容易努力白费……

一个求职的小伙子问我,“大专学历,跨行找嵌入式的工作,感觉好难”,通过聊天的文字都能感觉到他的沮丧。 从客观来讲,临近春节,企业招聘需求减少,是常态现象,但并不是最关键的点。 工作...

明哥聊求职
2018/12/14
0
0
招聘C/C++嵌入式数据库开发工程师

嵌入式数据库开发工程师 工作地点:北京 西二旗 公司名称:人大金仓 http://www.kingbase.com.cn 待遇:7K起 有效期:10月底 联系方式:sekaii@163.com 手机:18910391705 要求: 1. 2年以上c...

sekaii
2010/09/29
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

友元函数强制转换

友元函数强制转换 p522

天王盖地虎626
昨天
4
0
js中实现页面跳转(返回前一页、后一页)

本文转载于:专业的前端网站➸js中实现页面跳转(返回前一页、后一页) 一:JS 重载页面,本地刷新,返回上一页 复制代码代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a h...

前端老手
昨天
3
0
JAVA 利用时间戳来判断TOKEN是否过期

import java.time.Instant;import java.time.LocalDateTime;import java.time.ZoneId;import java.time.ZoneOffset;import java.time.format.DateTimeFormatter;/** * @descri......

huangkejie
昨天
3
0
分页查询

一、配置 /*** @author beth* @data 2019-10-14 20:01*/@Configurationpublic class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor(){ ......

一个yuanbeth
昨天
6
0
在LINQPad中使用Ignite.NET

LINQPad是进行.NET开发的一款优秀工具,非常有利于Ignite.NET API的快速入门。 入门 下载LINQPad:linqpad.net/Download.aspx,注意要选择64位操作系统的AnyCPU版本; 安装Ignite.NET的NuGet...

李玉珏
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部