论文部分内容阅读
随着嵌入式技术的不断发展,对嵌入式软件的数据处理能力要求越来越高。人们不得不将原本在企业级运用的复杂的数据库处理技术引入到嵌入式系统当中去,应用于嵌入式系统的数据库技术也就应运而生。相对于传统的数据库,嵌入式数据库往往具有移动性。为了满足用户随时随地获取数据、处理数据的要求,针对嵌入式计算环境和移动计算环境的特点,人们提出了各种基于数据复制(Data Replication)或缓存的有效方法。运行在嵌入式移动设备的应用程序可通过嵌入式数据库引擎直接存取本地局部数据副本,而这些数据都是从中心服务器同步复制过来的,然后在本地对数据进行各种操作,再将数据同步到中心服务器及其它计算结点。达梦嵌入式数据库(DM Embedded Database,DMEDB)是武汉达梦数据库公司研制的一款精致的嵌入式数据库软件。复制子系统是达梦嵌入式数据库的重要模块,它支持达梦嵌入式数据库之间以及达梦嵌入式数据库到达梦之间的同步复制和异步复制。数据复制的难点是在分布式环境下保证多个节点间的数据一致性。同步复制实现的是一种强一致性,而异步复制是一种弱一致性。对于同步复制,两阶段提交协议(Two Phase Commit,2PC)为我们提供了很好的解决方案。达梦嵌入式数据库使用2PC来实现同步复制,保证了主服务器和从服务器的事务之间的强一致性。异步复制相对来说比较简单,达梦嵌入式数据库提供了相关接口,由应用程序调用,从而实现多个节点间的数据的异步的一致。另外,在数据捕捉方面,有基于触发器和基于日志的方式。基于触发器的方式实现简单,但占用的系统资源较多。基于日志的方式虽然实现较复杂,但是更加灵活。考虑到资源开销、灵活性以及和达梦数据库(DM)的结合,达梦嵌入式数据库采用基于日志的方式实现数据复制。