Apache Cassandra 如何以 6 种方式助您为多云未来做好准备

Cassandra 灵活的功能集为您的组织的多云战略提供了强大的开源基础。
238 位读者喜欢这篇文章。
Sky with clouds and grass

Flickr 用户:theaucitron (CC BY-SA 2.0)

企业采用多云部署策略(一种云不可知的基础设施、更高的弹性、不依赖于任何单一供应商带来的灵活性,仅举几例)的动机从未如此强烈,并且还在不断增加。是的,实现和管理跨多个云的部署在技术上确实存在一些挑战。但随着对这种面向未来的架构的需求增加,Apache Cassandra 是一种经过独特准备的开源数据库解决方案,可实现此类部署。

以下是 Cassandra 提供多云架构强大基础的 6 种方式

1. 拓扑感知可用性

Cassandra 数据库允许设置故障域,该故障域围绕可能同时发生故障的机器的任何常见组(即, Cassandra 集群中位于同一虚拟机管理程序、机架、可用区等上的机器)构建副本放置。通过这种方式,Cassandra 可以感知关键的共享资源,从而保护可用性,即使在组中断时也是如此。

2. 可调整的一致性

Cassandra 使开发人员能够根据故障域,在数据中心或机架内控制查询的一致性。机架级故障域以数据中心内的实际物理机架命名,这些机架共享电源和网络基础设施。 Cassandra 可以确保这些机架受高带宽/低延迟连接的约束,并且每个特定行的副本都存储在单独的机架位置。这样做可确保副本故障在整个数据集中保持一致,并且所有资源都保持可用。

3. 远程区域感知

Cassandra 中的数据中心可以被视为本地或远程,因此它们具有的带宽较低和延迟较高的潜力已得到充分考虑。 Cassandra 驱动程序和节点包括对本地数据中心以及存在的其他节点的感知。利用 Cassandra 的可调一致性,可以隔离与发送给定查询的数据中心相关的一致性强度。因此,由于 Cassandra 内在的对远程故障域和数据中心的感知,开发人员准备好考虑查询如何与数据库故障和物理拓扑交互。

4. 灵活的全局和本地一致性

Cassandra 的故障域模型特别适合云,它为开发人员提供了强大的功能,可以创建利用多个数据中心、可用区和区域的应用程序。通过支持多个区域的应用程序,可以轻松地将此范围扩展到多个云提供商 - 第二个云提供商的区域应具有与主要提供商的远程区域相似的远程延迟。由于 Cassandra 可以将一致性隔离到数据中心,因此向集群添加新区域或数据中心不需要停机,并且影响可以忽略不计。与此同时, Cassandra 可以通过更高的一致性级别向开发人员保证查询在全球范围内可靠。

5. 简单有效的复制

Cassandra 可以轻松执行基于区域或数据中心的数据复制,该复制在键空间级别配置,因此开发人员可以选择将数据复制到 Cassandra 集群中的某些区域子集。反过来,这为开发人员提供了一种简单的方法来满足客户和业务需求或政府合规性法规等要求。 Cassandra 还可以轻松地将依赖于多个云提供商的任何应用程序或表与仅与一个提供商相关的应用程序或表分开。

6. 具有所需灵活性的开源许可

作为一个开源软件项目,任何企业都可以使用任何云提供商或私有数据中心运行 Cassandra,从而保留专有数据库解决方案或云提供商服务根本无法比拟的自由和灵活性。云提供商提供的数据库服务旨在促进供应商锁定,而 Cassandra 提供了一种简单且经济高效的替代方案,可以避免锁定单个云供应商。

鉴于云提供商环境的差异以及处理配置管理、CI/CD、警报、资源规划和路由/DNS 所需的单独流程和代码路径,实现真正的多云或混合部署具有挑战性。但是, Cassandra 作为适合多云部署的开源数据库的优势意味着数据层不受这些问题的影响。将 Cassandra 与其他流行的标准化解决方案相结合,可以为企业提供一个可以在多个云提供商之间扩展的应用程序堆栈,这尤其适时,因为越来越多的企业转向长期的多云战略。

标签
User profile image.
Ben Bromhead 是 Instaclustr 的首席技术官和联合创始人,Instaclustr 是一家开源即服务公司。

评论已关闭。

知识共享许可协议本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.