SQL HADR多个技术概览和比较

对于企业级用户和关键系统来说,最重要的要求之一就是系统的高度可用性和数据的安全性(High Availability and Disaster Recovery,HADR)。我们先来了解一下HADR的问题空间。HADR有两个目标和衡量方式:

  • 保证系统可用
    目标恢复时间(Recovery Time Objective,RTO):出了故障后把系统恢复正常工作状态所需要的时间。
  • 保证数据安全
    目标恢复点(Recovery Point Objective,RPO):系统数据能恢复到故障前的哪个时间点。换而言之,故障后你能容忍多少数据损失。

故障又主要有两大类别:

  • 计划宕机时间
    • 硬件升级
    • 软件补丁(操作系统,应用程序),应用程序升级
    • 维护操作
  • 意外宕机时间
    • 无法预料的故障
      • 硬件故障,软件故障,电力中断,数据损坏
      • 站点故障:火灾,地震,洪水
    • 用户或应用程序错误
      • 意外更改,不正确的数据操作

针对不同的可用性要求和故障类别,SQL Server提供多样的HADR技术来满足用户的需要。但怎样从中选择最合适的技术?下面是对SQL可用性技术和功能的一个概览:

  • 意外宕机时间
    • SAN/RAID
    • 备份和恢复(Back Up and Restore)
    • 日志传送(Log Shipping)
    • 数据库镜像(Database Mirroring)
    • 故障转移群集(Clustering)复制(Replication)
  • 计划宕机时间
    • 轮流升级和打补丁(Upgrade and Patching)
    • 在线操作(Online Operations)
    • 资源管理器(Resource Governor)
    • 数据库快照(Database Snapshot)

SQL Server HADR 技术比较 

这些技术都有自己的特点和要求,用户可根据自已需求,配置,和预算来选择,以满足HADR在目标恢复时间(RTO)和目标恢复点(RPO)的要求。

希望您能通过本文对SQL HADR技术有个大致了解,以后我们会再详细介绍其中的一些技术,谢谢。

SQL Engine部门经理
吴家震