潘建装,IBM资深售前技术顾问
分布式架构因为具备成本低、自主研发、灵活兼容和伸缩扩张方面的优势,备受互联网公司和创业公司的青睐,一些金融机构也开始探索分布式架构的解决方案,但在具体实践中不免还是会遇到鱼和熊掌难以兼顾的挑战,尤其是在满足一致性的问题上。IBM LinuxONE 可以和分布式架构形成很好的互补,完美地解决分布式架构落地遇到的重重挑战。
分布式架构落地,难关重重
说起分布式系统的难点,不得不说著名的CAP定律,它是说在分布式系统中,一致性(C)、可用性(A)和分区容忍性(P)三项,只能满足两项,而不能同时满足。因为在分布式环境中,由于节点之间的通信容易出现问题,为了扩展性,往往不得不牺牲一致性。此外,对于数据库的设计通常要遵循的四大特性(原子性、一致性、隔离性与持久性),分布式数据库也难以兼顾,要严格执行,就要在执行性能上花费很大的代价。
后来出现的BASE理论提供了一种解题思路,但也没有从根本上解决一致性问题。它的核心思想是容许分布式系统出现短暂性的不一致的状态,只要能够在一定时间内,最终达到一致状态就行。但是如果面对一些重要的系统,它们对一致性的要求非常高,就对分布式系统提出很大的挑战。因此,分布式系统的使命,并不是要放弃一致性,而是要不断的去追求更高一致性。
但是对于正要转向分布式架构的用户来说,做出抉择依然是艰难的,因为在实践层面他们将面临的不仅仅是数据不一致和网络质量无法保证的问题,更多的时候还有业务上的难题。
首先业务的拆分很复杂,包括业务功能和服务解耦,以及应用改造策略等。到底是推倒重来,还是循序渐进?慢慢拆分,对于拆分颗粒度的选择、分库分表的策略的定义、迁移数据的完整性,都具有一定的挑战性。
其次,拆分不容易,合并起来更难,比如全局一致性的备份、批量合并操作、全局跨分片分布式事务的处理,以及网络通讯质量的问题,都有很大的挑战性。
第三,拆分的越多,节点和服务数量也越多,随之而来的是,系统整体性能瓶颈点和故障点也增多。伴随着物理服务器和网络设备数量的不断增加,机房空间和电力不足的制约,软件成本的和整体TCO成本的不断增加,也会逐渐显现出来。
不难看出,分布式架构的水很深,选择分布式并不容易。但是,如果已经做好了选择,那么如何应对分布式架构带来的挑战,就显得尤为重要。
当分布式数据库遇上开放服务器LinuxONE
解决分布式架构落地的难题,有一种很好的选择,就是将分布式系统与IBM LinuxONE相结合,后者可以很好地应对分布式架构带来的种种挑战。
LinuxONE本质上是一台开放Linux服务器,其综合能力远远超过其它的Linux服务器,它把开放开源的最好的部分,也就是基于Linux发展出来的开放的软件技术堆栈,跟企业级计算里最强的大机硬件平台做了强强联合。
基于这种组合打造的LinuxONE,在软件层因为采用基于开放开源的技术堆栈,在使用体验上可以做到同样的简单易用,包括应用的开发、交付、混合多云的管理,以及服务治理管控等等。另外,客户在Linux方面的已积累的技术力量,同样可以在LinuxONE上得到充分的复用,并不会带来额外的技能要求。
更重要的是,LinuxONE除了具备开源开放、稳敏合一、绿色计算和安全可靠的特性外,还有很多独特的价值,可以很好地帮助分布式系统来应对各个层面的挑战。
首先,LinuxONE拥有独有的内存通讯技术,可以很好的解决分布式系统节点数量过多,而带来节点之间通讯不可靠的痛点。
其次,LinuxONE多层级虚拟化和大规模整合能力,不但简化了运维,还可以大大缓解物理设备激增所以带来的压力。
另外,LinuxONE具备最高等级稳定性和安全性,可以为云中的核心系统提供最强的保障。
可以说,当分布式数据库遇上LinuxONE,分布式数据库对更强一致性的追求,能够轻松得到提升。LinuxONE和分布式数据库的组合,就是一对黄金搭档。LinuxONE在硬件层面,提供了非常强大的底层支撑平台,从而在“相同的简单易用”基础之上,可以带给客户“与众不同的能力和体验”。
LinuxONE的独门绝技
就像“脚踏风火轮、手拿红缨枪”的哪吒,他有三头六臂,还有混天绫和乾坤圈各项技能,LinuxONE也同样拥有自己的各项独门技能。我们可以用“3高6黑”来概括LinuxONE的强大能力。
其中,3高是指LinuxONE超越任何其它平台的3种超高能力,这三种高超能力是“高性能、高可靠和高密度”。
在高性能方面, LinuxONE是所有商用服务器里性能最高的,它配置了5.2GHz主频的处理器,以及总量超过11GB的4级CPU大缓存,再加上高达192个的IO插槽,从而为客户提供最强大的计算能力和IO处理的能力。
在高可靠方面,LinuxONE提供了N+1的全冗余的体系架构,这里面涵盖了CPU、内存、IO、电源、风扇、控制台等等,从而使得LinuxONE单机就可达到6个9的可靠性。
在高密度方面,LinuxONE除了具备强大的纵向扩展能力外,横向扩展能力也是很强的,LinuxONE单机可支持85个逻辑分区、支持8000多个虚机,以及2百多万个容器,对X86而言,可以用“以一顶百”的方式,来实现高密度的集约化部署。
6黑是指LinuxONE所配备的6种黑科技,主要是解决企业级用户经常会遇到的一些需求,比如数据的压缩排序和加解密,以及虚拟化环境中各种应用负载或虚拟服务器之间的通讯、隔离、时钟同步的需求。
LinuxONE之所以能自带这些黑科技纵横江湖,那是因为它在硬件层面做了很多有针对性的优化。比如LinuxONE的芯片压缩功能,支持高达260GB/s的超大规模吞吐能力,可以帮助用户节省大量存储空间、节省网络带宽、缩短数据传输时间等。LinuxONE的内存通讯技术,可以帮助联机交易端到端的响应时间减少30%,同时TPS提升超过50%!
尤其值得一提的是,在时钟同步方面,LinuxONE可以确保在同一设备内,所有分区和虚机、以及跨多台设备集群的精准同步,可以达到微秒级。这对于分布式数据库来说,有很大的价值,因为分布式数据库对于节点间的时间同步,往往有着非常苛刻的要求。
无可替代的价值
在BASE理论中,最终一致性是对分布式系统中数据不一致的中间状态的妥协,如何提升一致性,使得分布式数据库可以更好支持企业级的关键业务,是国内分布式数据库厂商普遍的追求。LinuxONE的价值也在于此,在分布式数据库环境下,LinuxONE支持以“大而少”的部署方式,以“快又稳”的技术实现,可以大幅减少各类不稳定问题的发生。
大而少:当有了更高一致性的约束之后,分布式的数据库不是节点数越多越好的,这个时候 LinuxONE 的高主频、大缓存的设计,就显得尤为重要。它可以用更大的、更少的节点来部署分布式数据库,这种部署方式可以大大减少节点数量、节点的不稳定性,节点之间的通讯量,以及减少节点之间因时钟同步而出现问题的频率,同时还可以减少跨分片分布式事务的发生。此外, LinuxONE 还支持秒级之内激活微码的方式,可以在不中断业务的前提下,在线极大程度地纵向扩容节点,从而减少节点数量的增加,满足数据再平衡的需求。
快又稳:LinuxONE 的各种黑科技,不仅可以大幅提升性能,还能大大增强节点和网络通讯的稳定性,以及节点之间以微秒级的精准时钟同步,这些恰恰帮助分布式数据库解决了在一致性方面所面临的几个主要的麻烦。
简又省:不管是大而少,还是小而多,LinuxONE 能够以“以一顶百”的方式,做到高密度集约化部署,简化运维的同时,还实现了更为可持续的发展模式。这种高密度集约化部署,在帮助分布式系统简化运维、提升最佳数据一致性水平的同时,还以更稳健和更节省的绿色计算的方式,帮助用户推进分布式架构的转型和创新。
当分布式数据库遇上了LinuxONE,这一对黄金搭档的结合,可以帮助用户在选择分布式架构时,创造无限可能。
关键词: