嵌入式数据库原理与应用笔记介绍,系统结构
目录
【嵌入式数据库原理与应用笔记】介绍,系统结构
【功能】: 嵌入式系统中的数据存储和管理 数据查询
【定义】:嵌入式数据库系统是指 支持移动计算或某种特定计算模式的数据库管理系统 ,它通常与操作系统和具体应用集成在一起,运行在智能型嵌入式设备或移动设备上。涉及 数据库、分布式计算以及移动通讯 等多个学科领域
【趋势与升级点】
- 智能化和主动化
- 多媒体嵌入式数据库
- 时空数据库,同时处理时间和空间数据的时空数据库
- 数据库内核 数据库的可靠性 数据库的可移植性
【应用】
【特点】
【分类】
- 按照嵌入对象的不同分为:软件嵌入数据库、设备嵌入数据库、内存数据库;
- 按照系统结构分为:嵌入数据库、移动数据库、小型的C/S(Client/Server,客户机/服务器)结构数据库等
- 按照数据库存储位置的不同 基于内存方式、基于文件方式和基于网络方式三类
- 基于内存方式 实时系统和数据库系统的有机结合主要的“工作”部分放入内存,使每个事务在执行过程中没有I/O,则为系统较准确估算和安排事务的运行时间具有较好的动态可预测性提供了有力的支持,同时也为实现事务的定时限制打下了基础。“主拷贝”或“工作版本”常驻内存,即活动事务只与实时内存数据库的内存拷贝打交道。对内存数据库可归纳出如下定义: 设有数据库DB,DBM(t)是t时刻DB在内存中的数据集,DBM(t)真包含于DB;TS为所有事务的集合,AT(t)是t时刻的活动事务集,AT(t)真包含于TS;Dt(T)为T在t时刻的操作数据集,Dt(T)真包含于DB;若在任一时刻t,均有:对任一事务AT(t),Dt(T)真包含于DBM(t)成立,则称DB为一个内存数据库,简记为MMDB。
- 基于文件方式 以文件(File-Based)为组织方式,数据按照一定格式储存在磁盘中
- 基于网络方式 嵌入式本地数据库和嵌入式网络数据库 嵌入式网络数据库系统是指 客户端为嵌入式设备,数据存放在远程服务器 上的数据库系统。客户端通过 网络协议 ,可以使用SQL(Structured Query Language,结构化查询语言)接口或者其他接口访问远程数据信息。客户端的主要技术在于网络协议的实现; 远程服务器 除了提供基本的 数据服务 外,关键需要处理好 多用户并发问题 ,并 维护数据的一致性 。 通信方式有串口通信、红外通信、蓝牙通信、GPRS(General Packet Radio Service,通用无线分组业务)、CDMA(Code Division Multiple Access,码分多址)拨号通信等
嵌入式网络数据库系统的特点:
- 无需解析SQL语句
- 支持更多的SQL操作
- 客户端小
- 有利于代码重用,可移植性强
数据库设计:
【系统结构】
- 数据库内核层 嵌入式数据库引擎,为上层的访问提供接口服务,便于数据库的管理及访问服务。
- 内核级API-嵌入式数据库区别与传统数据库的重要特征之一 访问数据库引擎的接口层。直接嵌入到应用程序中,具有开销小、速度快特点,适合本地程序轻量级数据库访问
- SQL层 SQL层意义: 提供SQL访问能力 简化数据库引擎 兼顾效率、功能、资源 增加可移植性 通常SQL子集
【典型的嵌入式数据库】
- Berkeley DB(BDB)
- SQLite
- Empress (1)单机工作方式; (2)客户机/服务器工作方式。
Empress提供了数据库加密功能。Empress数据库加密功能基于以下的方式: (1) 通过 使用硬件设备或者装置 。 (2) 通过 使用包含加密算法的安全库作为纯粹的软件解决方案 。 (3) 用户可以再任何能够 索引Empress数据类型加密列上创建索引 。
- OpenBASE Mini
- OpenBASE Mini SyncServer主要包括 同步服务引擎、同步管理中心平台和客户端同步组件 ,它是一个中间件服务器,作为移动客户端与主数据库之间数据同步的桥梁, 协助完成两者之间的数据同步,同时提供发布、发布项、用户和设备等全生命周期的部署与管理。
- 移动客户端包括嵌入式数据库(包括数据库管理系统和数据库)和客户端同步组件两个子模块。其中,运行在嵌入式或移动设备上的嵌入式数据库管理系统和数据库,是嵌入式应用的数据存储主体,客户端同步组件则提供了与主数据源进行双向数据同步的接口。
- 主数据库 (1)微内核结构。 (2)完备的数据库管理。 (3)数据同步。
【关键技术】
- 系统微型化 存储空间的限制是制约各种嵌入式系统的主要因素,因此嵌入式数据库系统的微型化就成为实现嵌入式系统的关键。嵌入式数据库的微型化主要包括两方面: 数据库的微型化和数据库管理系统的微型化。
- 数据同步 嵌入式数据库一般采用 某种数据复制模式(上载、下载或混合模式)与服务器数据库进行映射 ,满足人们在任意地点、任意时刻访问任意数据的需求。由于存在数据复制,系统中各个应用前端和后端服务器之间需要各种必要的同步控制过程。 数据同步作为嵌入式数据库系统最重要的一个功能特点,包括 数据传输、同步冲突检测和解决、同步过程中事务完整性保持、主动同步、异构数据源同步以及异构数据源之间数据类型变化等内容 。同步冲突检测和解决是同步最重要的一项功能。
- 定制能力 当数据库系统和应用是分离的时候,即使应用所需的功能很少,数据库系统仍然包括了所有支持的功能模块,对于硬件资源非常有限的手持设备和智能电器来说,这无疑是不合理的。将数据库系统和应用结合在一起的方法能很好地解决这个问题, 根据实际应用需求定制数据库系统的功能 ,真正做到量体裁衣。这种将数据库系统和应用程序结合在一起的方法就是数据库系统的定制技术。
- 实时处理 系统所嵌入的某种移动设备支持实时应用,则嵌入式数据库系统还要考虑实时处理的要求。这是因为设备的移动性,如果应用请求的处理时间过长,任务就可能在执行完成后得到无效的逻辑结果,或有效性大大降低。因此,处理的实时性和正确性同样重要。