观点文章

借 IBM LinuxONE 加快分布式架构转型与创新
十一月 24, 2020

潘建装,IBM 资深售前技术顾问...

潘建装,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,这一对黄金搭档的结合,可以帮助用户在选择分布式架构时,创造无限可能。

Article Categories