嵌入式数据库_2.嵌入式数据库的一般架构

news/2024/9/25 11:13:44/

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

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 嵌入式数据库管理系统的架构 


http://www.ppmy.cn/news/1470366.html

相关文章

详解 Flink Table API 和 Flink SQL 之时间特性

一、介绍 Table API 和 SQL 进行基于时间的操作(比如时间窗口)时需要定义相关的时间语义和时间数据来源的信息。因此会给表单独提供一个逻辑上的时间字段,专门用来在表处理程序中指示时间时间属性(time attributes)&a…

“中国人对AI的态度最为积极”说明什么?

#AI技术服务 #AI智能应用 #AI合同 #合同AI服务 斯坦福大学的AI指数报告指出:“中国人对AI的态度最为积极……” 这一观点应是基于一系列的观察和研究得出的结果。如果这一观点成立,那么它或许说明了以下几个层面的意义: 首先,政策支持与…

【计算机网络】[第4章 网络层][自用]

1 概述 (1)因特网使用的TCP/IP协议体系(四层)的网际层,提供的是无连接、不可靠的数据报服务; (2)ATM、帧中继、X.25的OSI体系(七层)中的网络层,提供的是面向连接的、可靠的虚电路服务。 (3)路由选择分两种: 一种是由用户or管理员人工进行配置(只适用于规…

新人学习笔记之(注释和关键字)

一、注释 1.什么是注释 (1)注释是在程序指定位置添加的说明性信息 (2)简单理解,就是对代码的一种解释 2.注释的分类 (1)单行注释 格式:// 注释信息 (2)多行注释 格式:/*注释信息*/ 3.注释的使用 (1)主要作用:增加代码的阅读性 4.注…

C# —— 类

简介 类;就是具有相同属性和方法的对象集合,例如,人类 动物类型 ADC类等 Array数组类 ArrayList类 List类 字符串类等 类包含又什么东西组成 又什么可执行的操作(方法) 对象; 类的实例化.通俗讲就是类中的其中一个, 例如 哈士奇,鲁班等 a1 a2 a3就是ArrayList中的…

面向对象设计模式准则

一,简介 罗伯特C马丁在 21 世纪早期引入了名为「SOLID」的设计原则,指代了面向对象编程和面向对象设计的五个基本原则(也有说六个的),即为 SOLIDD. 单一职责原则(Single Responsibility Principle&#x…

ios-deploy - Required for installing your app on a physical device with the CLI

ios-deploy 是一个用于在 iOS 设备上安装、调试和运行 iOS 应用的开源工具。如果你正在使用命令行界面(CLI)来部署 React Native 或其他原生 iOS 应用到物理设备,那么安装 ios-deploy 是必要的。 以下是安装 ios-deploy 的一般步骤&#xff…

如何保证数据库和缓存的一致性

背景:为了提高查询效率,一般会用redis作为缓存。客户端查询数据时,如果能直接命中缓存,就不用再去查数据库,从而减轻数据库的压力,而且redis是基于内存的数据库,读取速度比数据库要快很多。 更新…