sql server几种读写分离方案的比较

在生产环境中咱们常常会遇到这种状况:前端

前端的oltp业务很繁忙,可是须要对这些运营数据进行olap,为了避免影响前端正常业务,因此须要将数据库进行读写分离。sql

这里我将几种能够用来进行读写分离的方案总结一下,这里并不考虑数据库是否高可用,只针对读写分离场景,方案自己并没有优劣可言,只看是否适合业务使用场景,因此只把几个方案的特色罗列出来,遇到具体的问题时按本身需求和环境综合考虑后再进行取舍数据库

 

读写分离方案 实时同步 副本数据是否直接可读 副本数 最小粒度 副本创建索引 环境 缺点
镜像 否(须要开启快照,只读) 1 域/非域(使用证书)

在高安全模式下对主库安全

性能有必定影响服务器

log shipping 是(只读) N UNC方式可访问  副本库在作resotre时会断开已链接用户链接/可能影响常规日志备份
发布订阅 是(读写,但写可能会产生数据不一致) N 表(查询) 域/非域 在主库上有大量DML操做时,对分发服务器会有必定影响,且订阅数据库可能有数据同步延迟
always on 是(只读) 4(sql 2012)
8(sql 2014)
非域环境没法使用
相关文章
相关标签/搜索