嵌⼊式数据库架构特点
看过⼀篇嵌⼊式数据库架构的⽂章。
其中嵌⼊式数据库的存储结构和功能实现等均与Oracle数据库的实现⽅式有相似点。
写这篇⽂章⽤以记录嵌⼊式数据库的架构,可以与之前的Oracle结构体系对⽐来看,总结相同点和差异点。
嵌⼊式数据库相对于传统数据库来说有处理速度快,实时性,运⾏开喝酒技巧 销⼩。由于是嵌⼊式数据库,对数据的独⽴性要求没有传统数据库那么
⾼。⽽且嵌⼊式系统的资源有限,所以需要注意资源的⽽有效分配。
那么我们就把关注点更多的放在数据的存取,处理上边。
三级模式的结构体系:⽤户模式,逻辑模式,存储模式
和传统数据库的:⽤户管理模块(⽤户进程与服务器进程的链接,连接池,ssion白消安 ,实例管理,中间件),逻辑处理模块(backgroud
Program,undo,redo,DML,DDL等)和存储架构模块(data file,tablespace,gment,extent,block)
嵌⼊式数据库需要具备的功能:
⾜够⾼效的数据存储机制
数据安全控制(锁机制)
实时事务管理机制
数据库恢复机制(历史数据存储)
嵌⼊式数据库开发需要注意的部分:
嵌⼊式数据库⼀般有特殊的运⾏情况和环境,实现特定的功能。所以要根据实际情况来选择不同的设计模型。要合理⾼效的分配嵌⼊式系统
的有效资源,提⾼数据库的存储效率和稳定性。并对数据的保护,交换,查询,事务处理算法的优化,事务优先级的分派,事务调度,并发
控制等都要制定好良好的策略。
嵌⼊式数据库的数据模型(逻辑模式):
关系型数据库 -- 利⽤⽽为关系表现存储,但是会造成数据的冗余,可以使⽤索引提⾼查找的效率
⽹状数据库 -- 直接使⽤指针来表越南内战 现关系,节省空间,提⾼效率,但是关系较为复杂
物理结构(存储模式):
采⽤内存+ 硬盘的形式
内存中包括:索引取,数据区,系统信息区(均⽤来存储当前⼯作使⽤到的部分),每条记录由表名,短号,段nba得分榜排名 内偏移地址来确定
硬盘中包括:存储使⽤频率较低的数据和⽇志⽂件,历史数据等。
对应于传统数据库来讲,内存中包括,数据字典,当前使⽤频繁的表内容,undo buffer等。硬盘中为所有的数据⽂件和⽇志⽂件。并对不
是⽤的⽇志⽂件进⾏归档
嵌⼊式数据库的索引结构:
数据结构(使⽤数组存储),B数的结构(节点数据的覆盖率⼩),AVL树(每个节点需要两个指针域和附加控制信息,存储效率不⾼,浪
费存储空间),不平衡B树(T*树,避免了调解书的明恒,提⾼了写性能,节点由若⼲个关键字和指针域构成)
Oracle数据库的索引结构:B树的结构,bitmap的结构,建索引的⽅式和类型有唯⼀索引,范围索引,反向建索引(防⽌数据块分布不均导
致的树不够平衡,如⼤部分以6开头),函数索引(对列的函数值进⾏索引),压缩索引,升序/降序索引
嵌⼊式数据库的管理机制:
存储空间的管理:采取静态分配纽约爱情故事 或者动态分配+索引的⽅式
数据的安全性,完整性:建⽴约束,通过约束来实现
事务并发控制模块:利⽤锁机制来控制(信号量等)。选取表级作为锁的粒度,尽可能的减少所得切换,有效减少了锁在计算过程中的开
销)
实时数据转储:类似Oracle的redo buffer,开辟保存实时数据的内存缓存区,缓冲区满⼀次写⼊磁盘,读数据也有缓冲内存区,保存使⽤
频率⾼的(或最近使⽤的)数据
⽇志管理:⽇志也应有对应的内存缓存区,缓存满后统⼀写⼊磁盘,减少痣相图解大全 I/O。
内存区的管理⽅式:
使⽤空闲列表的⽅式记录缓冲区的使⽤情况
开辟⼀段内存空间空间,作为空闲区放到空闲列表中,当内存空间满,则从空闲列表中删除当前内存空间地址,移⼊满区列表,再申请⼀块
新的内存空间作为新的缓冲区的空闲区。当内存空间扩展到⼀定程度,则将脏块写回磁盘。
嵌⼊式数据库事务的优先级控制:可以参考操作系统的事务优先级算法,先来先服务,最短期限等。
嵌⼊式数据库的实现⽅式均可以在传统数据库上找到相似处,只是不同的数据库有不同的侧重点。
本文发布于:2023-04-21 00:20:10,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/82/506760.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |