Moebius for SQL Server如何实现复杂查询优化?

摘要:Moebius(莫比斯)介绍 Moebius数据库多活集群是格瑞趋势为SQL Server数据库研发的能够同时满足可用性、数据安全、容灾、读写分离、负载均衡的一站式多活集群。集群的名字取自Moebius环,寓意无限扩展。 Moebius采用
Moebius(莫比斯)介绍 Moebius数据库多活集群是格瑞趋势为SQL Server数据库研发的能够同时满足可用性、数据安全、容灾、读写分离、负载均衡的一站式多活集群。集群的名字取自Moebius环,寓意无限扩展。 Moebius采用“share nothing”架构,每个节点的SQL Server服务独立安装,使用每个服务器自己存储介质内的数据库文件。不基于共享存储设备,也不基于磁盘镜像等功能,通过SQL Server的日志同步技术实现各节点中数据的一致性。在主节点写入数据时会产生日志,Moebius捕获并传输日志到其他节点,并通过REDO技术把日志转换成数据。因此每个节点的SQL Server服务都是启动的,数据都是“活”的。Moebius有实时和准实时两种同步方式,不同的节点可以使用不同的同步方式。 Moebius 通过“网络心跳”及“仲裁机制”实现故障监控,当侦测到某节点发生故障并经过仲裁后,将此节点剥离出集群,如果故障节点是主节点,则会进行自动故障转移,重新选择健康的节点作为主节点。节点故障恢复后会自动从主节点同步差异数据,同步完成后加入到集群中。 Moebius的调度引擎支持连接级和SQL语句级两种调度方式,通过规则的配置,在不改动或者少改动应用程序的前提下,透明的实现读写分离、负载均衡。 Moebius集群的架构 Moebius集群采用无共享磁盘架构 Moebius集群由一组数据库服务器组成,每个服务器上安装相同的数据库,集群支持无共享磁盘架构,各机器可以不连接一个共享设备,数据可以存储在每个机器自己的存储介质中。 无共享磁盘架构,使得存储不再是单点,系统可用性提高,同时还可以充分利用集群中每个机器的CPU、I/O等硬件来实现集群的高性能。 无需价格高昂的共享磁盘柜,只要使用2台服务器即可轻松构筑低成本的集群。 Moebius集群架构的分类 依据数据是否分区,Moebius集群架构分为标准架构和高级架构: 标准架构:每个节点中具有完全相同的数据,每个节点都拥有数据全集。 高级架构:每个节点中数据是不同的,每个节点只拥有数据全集的一部分。 Moebius For SQLServer标准架构 Moebius集群是一组相互独立的服务器,通过相互协作形成一个统一的整体。集群中多个节点相互连接,这样冗余的硬件架构不但可以避免单点故障而且提供了杰出的故障恢复能力。一旦发生系统失败,Moebius集群对用户保证最高的可用性,保障关键是业务数据不丢失。 Moebius 集群标准架构 一个集群数据库可以看作是一个被多个应用实例访问的单一数据库。在Moebius集群中,每个SQL Server实例在各自的服务器上运行。随着应用的增加,当需要添加额外的资源时,可以在不停机的情况下很容易地增加节点。 标准架构中间件工作原理 中间件驻留在每个机器的数据库中,监测数据库内数据的变化,并将变化的数据同步到其它数据库中。数据同步完成后客户端才会得到响应,同步过程是并发完成的,因此同步到多个数据库和同步到一个数据库的时间基本相等;另外同步过程是在事务环境下完成的,保证了多份数据的数据一致性。 正因为中间件宿主在数据库中,所以中间件不但能知道数据的变化,而且知道引起数据变化的SQL语句,根据SQL语句的类型智能地采取不同的数据同步策略以保证数据同步成本的最小化: 1. 数据条数很少,数据内容也不大,则直接同步数据。 2. 数据条数很少,但是里面包含大数据类型,比如文本,二进制数据等, 则先对数据进行压缩然后再 同步,从而减少网络带宽的占用和传输所用的时间。 3. 数据条数很多,此时中间件会获取造成数据变化的SQL语句, 然后对SQL语句进行解析,分析其 执行计划和执行成本,并选择是同步数据还是同步SQL语句到其他的数据库中。在对表结构进行调整 或者批量更改数据的时候,这种同步策略非常有用。 Moebius For SQL Server高级架构 在高级架构中,采用数据分区技术,依据某种规则把数据分散到多个数据库中。 数据为什么分区? 1.当数据量很大的时候,即使服务器在没有任何压力的情况下,某些复杂的查询操作都会非常缓慢,影 响最终用户的体验。 2.在大数据量下对数据库的装载与导出,备份与恢复,结构的调整,索引的调整等都会让数据库停止服 务或者高负荷运转很长时间,影响数据库的可用性和易管理性。 3.面对这样的应用环境,仅仅依靠提升服务器的硬件配置是起不到作用的,比较好的办法是通过数据分 区,把数据分成更小的部分来提高数据库的可用性和易管理性。
阅读全文