嵌入式数据库的应用

网友投稿 819 2023-04-11

嵌入式数据库的应用

嵌入式数据库的应用

引言

嵌入式系统中一直很少使用数据库,因此对大部分人来说,很难想象嵌入式数据库在哪些场合才能发挥出优势。事实上,嵌入式数据库大致可在以下两大领域使用:

① 会计、证券交易等业务的应用软件。在这类软件中应用,不是把数据库作为服务器端组成C/S结构,而是将数据库嵌入到应用程序(使之成为程序的一部分)进行使用。通常也称为“软件嵌入”。  ② 车载导航、路由器、信息家电、DVD记录装置、iPOD、机器人等嵌入式系统。在这类嵌入式系统当中,除了硬件部分外,还需用软件对其进行控制。这时将嵌入式数据库嵌入到这些硬件当中,可使系统的性能和效率大大提高。通常也称作“硬件嵌入”。

1  嵌入式数据库和企业级数据库的比较

2  嵌入式数据库应用实例

2.1  FA领域的实例

下面举例介绍嵌入式数据库产品在控制仪器、数据收集装置中的使用。

FA(Factory Automation)是采用计算机控制技术使工厂自动化,既可提高生产效益又可实现必要的功能。嵌入式数据库在FA领域已经广泛使用。

2.1.1  汽车碰撞测试装置

嵌入式数据库经常在汽车碰撞测试装置中使用,如图1所示。所谓汽车碰撞测试,是检验汽车安全性能的一种有效手段。在测试中,让汽车高速碰撞某个物体,然后收集嵌入在车体中各个部位的各种感应器所发出的数据,再对这些数据进行分析,这需要在碰撞的瞬间大量地收集和保存数据。这时,如何能尽快地保存数据是一个问题。为了解决这个问题,在汽车碰撞测试装置中使用嵌入式数据库,取得非常好的实际效果。

2.1.2  发电机监视装置

在美国大型发电厂的发电机监视装置里,使用了嵌入式数据库。发电厂的发电机是非常重要的生产设备,所以要严格管理以防发电机停机。发电机的监控装置通过收集发电机的各种数据进行监视,如图2所示。

2.1.3  监视引擎

2.1.4  在FA领域中使用数据库的注意事项

在这个领域利用嵌入式数据库时,会有一些常见的典型问题,如往数据库写入数据的速度和性能等问题。一方面要求内存消耗量足够少,一方面又需要对大量数据的进行运算,所以必须同时满足两个相反的要求。再者,像发电机装置监视的例子那样,数据监视模块必须要嵌入到数据库中(在实际的嵌入式数据库中,这些监视模块主要是通过用户自定义的函数来实现数据的收集、监视和报警等)。

另外,在出现故障时能否通过事务处理和恢复注册等功能进行数据的恢复也很重要。

2.2  车载导航的实例

2.2.1  车载导航的GPS与自动导航装置组合

车载导航系统在日本等发达国家已经普及,在中国实际使用者应该也有很多。不过对日常使用的车载导航,了解它的内部构造的人并不多。这里就有关车载导航的系统构造进行简单说明。

车载导航刚开始开发时,只使用“自动导航法”装置。由于靠装置自身来推算出车辆的位置,因此行驶开始后有必要对行驶到一定地点的行驶方向和行驶角度进行小调整。现在GPS方法非常盛行。该方法通过GPS推算出车辆的位置。不过只靠GPS,不管怎样设计总会有某种程度的误差。因此,现在的车载导航通过对GPS和“自动导航法”装置组合的方法来弥补双方的缺点,以推算出车辆的位置。

2.2.2  车载导航与地图信息的融合

随着技术的发展,现在的车载导航系统把交通信息、堵车信息等也都反映在车载导航中了。因为这些信息要不断地被更新,所以ROM存储设备已很难满足需求了。

为此,许多最新的设计方案中用硬盘存储介质(HDD,Hard Disk Drive)代替ROM存储介质。这样,能够对多种信息进行更新的新一代车载导航产品问世了。另外,由于装载了HDD使得车载导航的运行速度变得更快。

2.2.4  车载导航上追加媒体终端功能

2.2.5  现在的车载导航存在的问题

大部分车载导航是通过使用ROM存储方式提供地图信息、店铺信息以及设施的数据来进行计算的,不能够随时对有变化的一部分数据进行更新,只能重新再制作一张DVDROM,对所有的信息进行一次性的完全更新。

除此以外,不同的使用者应该可以设定自己的个性化数据,即在使用车载导航时,根据个人的身份数据的不同,应能产生不同的检索结果(这被称为“个性化功能”)。在目前的车载导航上还不能够实现这种功能。要实现这些功能,必须使用嵌入式数据库。

2.2.6  数据库用在车载导航场合能实现的功能

下面再详细说明一下嵌入式数据库在装入车载导航装置后能实现的新功能。

在检索功能方面,不但能实现上面的复合检索和模糊检索等,还能实现空间检索。所谓的“空间检索”,就是能在二维地图上进行检索。具体地说,就是手机带有的道路向导和车载导航的路由检索功能中预先把坐标数据和属性数据保存于数据库中,在检索条件里设定一个空间范围(比如:离某地几km内,同时在另外一个范围内。类似二个圆的交集)。

个人住所地址或店铺名称等发生更改时,使用嵌入式数据库的优势就体现出来了。例如“A百货店”改为“B百货店”时,要是不更换新的DVDROM就一直是“A百货店”,如果换上新的DVDROM就会变成“B百货店”,“A百货店”就不能被检索了,二者都是不能被接受的。这时如果使用嵌入式数据库,则在一定的时期内对输入的“A百货店”或“B百货店”都能进行检索;过了一定时期后,还可以删掉“A百货店”,只让“B百货店”成为检索对象。

以个人履历信息为基础的详细个性化功能的形式如:在“张三”的车载导航的履历中,他经常去垒球场。以后,只要“张三”检索体育场,首先就会显示垒球场的信息。

加载数据库后的车载导航系统功能如图4所示。

2.3  信息家电的实例

信息家电正在改变人们的生活。以电视机、大容量刻录机、DVD、HD、AV机等为代表的家电数字化进程正在稳步推进。另外,电视节目也将以数字化的形式传输和播放。这些节目可以预先存储在服务器上再播放,即所谓的“服务器蓄积型”播放形式。

2.3.2  信息家电中使用嵌入式数据库的例子

和互联网电视从远程下载节目信息的接收装置一样,许多信息家电需要进行远距离的电视节目信息的管理、下载、检索,并根据演员的名字或节目种类进行复合检索。今后的DVD刻录机、带HDD的DVD刻录机等产品也需要这些功能。

另外,通过在卡拉OK遥控装置中装载嵌入式数据库,就可以提供根据曲名、种类进行复杂的复合检索。通过设定广告播放控制盒等设备的各种参数,可以实现广告内容的定时管理等功能。

2.3.3  信息家电中使用数据库的注意事项

要在信息家电领域使用数据库,数据库的内核必须足够的小。电源断电后的恢复功能(即电源断电后自动恢复到原先状态的功能)也是必要的。在实际应用中,电源发生瞬间或者长时间断电的时候,对数据进行保护是毋庸置疑的。数据库通常是通过事务处理来对数据进行保护的。具体地说,这种事务处理就是把日志写入文件系统。因此,一旦文件系统被破坏,就不能进行事务处理了。也就是说,仅靠文件系统层面来实现电源断电恢复功能或数据保护功能是很难的。嵌入式数据库里可以带有其他的硬件所提供的独立的高性能、高稳定性的文件系统来完善电源断电恢复功能和数据保护功能。这时,可以根据需要选择文件系统层面的断电保护和数据库层面的断电保护。

在信息家电的制造中,常常受生产成本或价格的制约,仅靠硬件达不到预期的高性能。因此需要嵌入式数据库,以支持内存存取和磁盘存取。把最重要的数据表放到内存,可以大大提高性能,降低成本。

2.4  宇宙航空和机器人的实例

嵌入式数据库在宇宙航空以及机器人的应用程序中起着核心的作用。在数据库中保存着全部的程序、指令、可执行的模块,并将这些制作成基于知识(knowledge based)或者基于规则 (rule based)的系统。可执行模块将根据传感器的信息执行各种动作或命令。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:为什么我们需要分布式数据库
下一篇:数据库系统的常见用户
相关文章