嵌入式数据库的一般架构

嵌入式数据库的架构与应用对象紧密相关,其架构是以内存、文件和网络等三种方式为主。

1.基于内存的数据库系统

基于内存的数据库系统中比较典型的产品是每个McObject公司的eXtremeDB嵌入式数据库,2013年3月推出5.0版,它采用内存数据结构,基于对象模型,并直接与应用结合,不属于客户端/服务器架构。eXtremeDB内存数据库与其他数据库相比,在提供高性能的数据管理服务的同时,专门针对实时系统的要求进行了优化。

eXtremeDB嵌入式数据库的架构见图1。

图1 eXtremeDB嵌入式数据库的架构

2.基于文件的嵌入式数据库系统

基于文件的嵌入式数据库系统是以文件方式存储数据库数据。比较典型的产品是由D.Richard Hipp建立的公有领域项目开发的SQLite轻量型嵌入式数据库系统。SQLite诞生于2000年,其设计目标是嵌入式的,而且已经在很多嵌入式产品中使用。它占用资源非常少,在嵌入式设备中,可能只需要几百"KB"的内存就够了,支持Windows/Linux/Unix等主流操作系统,同时能够跟许多程序语言相结合,如:TCL、C#、JAVA等。

SQLite轻量型嵌入式数据库系统架构见图2。

图2 SQLite嵌入式数据库系统架构

3.基于网络的数据库系统

基于网络的数据库系统是以远程数据库为存储载体的,客户端通过移动网访问服务器上的远程数据库。由于基于网络的数据库系统被应用在多种领域,其架构千变万化,没有统一相对固定结构和产品,如:C/S架构的数据库、B/S架构的数据库以及云数据库等。因此这里仅给出了一种简单的架构描述,见图3。

图3给出的是一款嵌入式数据库管理系统的架构,其目的是在嵌入式设备上使用的数据库管理系统,以解决移动计算环境下数据的管理问题。

基于网络的嵌入式数据库系统由基本的几个子系统组成,包括:远程数据库管理系统、远程数据库、同步服务器、嵌入式数据库管理系统、嵌入式数据库和连接网络等。

图3 嵌入式数据库管理系统的架构

相关推荐
白露与泡影1 小时前
Redis:我是如何与客户端进行通信的
数据库·redis·缓存
GilgameshJSS3 小时前
STM32H743-ARM例程33-TOUCH
c语言·arm开发·stm32·单片机·嵌入式硬件
一只小bit5 小时前
MySQL 索引:从聚簇到普通索引,如何加快查询效率?
数据库·mysql·oracle
洛克大航海7 小时前
解锁 PySpark SQL 的强大功能:有关 App Store 数据的端到端教程
linux·数据库·sql·pyspark sql
XueminXu8 小时前
ClickHouse数据库的表引擎
数据库·clickhouse·log·表引擎·mergetree·special·integrations
冒泡的肥皂9 小时前
MVCC初学demo(二
数据库·后端·mysql
代码程序猿RIP9 小时前
【Redis 】Redis 详解以及安装教程
数据库·etcd
小生凡一9 小时前
redis 大key、热key优化技巧|空间存储优化|调优技巧(一)
数据库·redis·缓存
oe10199 小时前
好文与笔记分享 A Survey of Context Engineering for Large Language Models(上)
数据库·笔记·语言模型·agent·上下文工程
小马哥编程9 小时前
【软考架构】案例分析-对比MySQL查询缓存与Memcached
java·数据库·mysql·缓存·架构·memcached