技术开发 频道

数据存储技术应用详解:高可用性

  2.灾备方案

  备份是容错的补充,合适的灾备方案会使数据更加安全。备份又分为冷备份和热备份。冷备份就是指系统在关闭状态下,不会产生数据交互的情况下进行的备份。因为冷备份需要停止应用,所以目前冷备份的应用越来越少,只有在系统建立初期或进行系统的大规模改造时,进行冷备份做为系统运行的一个基线。热备份与之相对,就是在系统运行的情况下对数据进行备份,因为无需停止应用,所以热备份被广泛应用。

  备份数据的过程中对系统资源的消耗比较少,但是恢复数据将是一个相对漫长的过程。所以在制定灾备方案的时候,一定要考虑备份对系统资源的消耗以及数据恢复造成宕机的时间是否可以接受。

  在制定备份方案时,还应该考虑备份数据的存放问题。数据备份到本地,效率高,易于维护和管理,但是数据的安全性不高,如果本地存储出现问题,备份数据也有可能受到破坏,即使备份数据没有被破坏,系统恢复将非常麻烦,恢复时间将会很漫长。所以在制定备份方案时,还应该考虑异地备份的问题,以及备份数据异地恢复的问题。但是异地备份效率不高,有可能会因为网络状况等原因造成数据备份有一定的延时,严重的有可能造成数据的不一致,所以异地备份与本地备份要或为补充,整个数据的的安全性就会更高。

  综上所述,制定灾备方案时,首先要制定本地备份的备份计划,然后再完成异地备用机器的建设。

  就数据库而言,本地备份的技术已经相当完善,我们需要考虑的就是备份对系统资源的消耗,所以在制定本地备份计划时,首先要考虑备份时间,尽量是在系统相对比较空闲的时间进行备份。其次要考虑备份时长,长时间的备份不仅消耗系统资源,而且在备份期间出现灾难的概率也相应的增加了。所以要尽量缩短备份时长。因此在制定备份计划的时候要充分利用增量备份的机制,缩短备份时长,降低在备份期间出现灾难的概率。差异增量备份如下图所示:

灾备方案

  各个数据库异地备份的实现方式有所不同。主要有两种方式进行数据同步,第一是分析数据库日志进行数据同步,第二是传送日志文件到备份服务器上,在备份机器上恢复日志文件实现数据同步。第一种方式数据可以实现实时同步,但是因为要实现在主备机器上都要成功的写入数据,这就造成数据写入效率相应的降低。第二种方式只传送日志文件,所以对数据的写入效率影响不大,但是备份数据库需要恢复这些日志文件才能使用,做不到数据的实时同步。

  以Oracle的GoldenGate为例,它就是通过分析数据库的日志文件来实现数据同步的。它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达9:1的压缩率对数据进行压缩,可以大大降低带宽需求。在目标端,GoldenGat可以通过交易重组,分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,可以在亚秒级实现大量数据的复制,并且目标端数据库是活动的。其工作示意图如下:

灾备方案

  而Oracle的DataGuard就是通过传送日志文件到备份机器上,实现异地备份的。因为Oracle的DataGuard传送是的归档日志,所以在恢复备份数据库时,切记要把redo日志文件也恢复到备用数据库中。

  以上是以数据库为例介绍了针对数据库数据的灾备方案,对于数据文件的灾备也要考虑以上所说的两点,即不仅要制定本地备份计划,还要制定异地备份方案,保证数据的安全高效。

  总之数据的存储及灾备的技术方案有很多,每一种技术方案都有各自的优缺点。根据应用的实际需求和系统的可扩展能力选择合适的技术方案才是最关键的。

0
相关文章