为什么选cassandra
企业追求多云部署策略的动机-与云无关的基础架构,更大的弹性,不依赖任何一个供应商(仅举几例)的灵活性—从来没有像现在这样引人注目,它们是不断增加。 是的,实施和管理跨越多个云的部署的技术壮举带来了一些挑战。 但是,随着对这种面向未来的体系结构的需求增加, Apache Cassandra是用于启动此类部署的独特初始化的开源数据库解决方案。
Cassandra通过以下六种方式为多云架构提供了强大的基础:
1.拓扑感知的可用性
Cassandra数据库允许设置故障域,该故障域在具有可能同时发生故障的任何常见计算机组(即,Cassandra群集中位于同一虚拟机管理程序,机架,可用性区域等上的计算机)周围构造副本位置。 通过这种方式,即使在组中断时,也可以使Cassandra知道关键的共享资源以保护可用性。
2.可调一致性
3.远程区域意识
可将Cassandra内的数据中心视为本地或远程数据中心,因此充分考虑了它们具有较少带宽和较高延迟的潜力。 Cassandra驱动程序和节点包括对本地数据中心以及存在的其他节点的了解。 利用Cassandra的可调一致性,可以相对于发送给定查询的数据中心隔离一致性强度。 因此,由于Cassandra对远程故障域和数据中心的根深蒂固的认识,开发人员因此准备考虑查询如何与数据库故障和物理拓扑交互。
4.灵活的全球和本地一致性
Cassandra的故障域模型特别适合云计算,为开发人员提供了巨大的能力来创建利用多个数据中心,可用性区域和区域的应用程序。 有了支持多个区域的应用程序,将覆盖范围扩展到多个云提供商并不难–二级云提供商的区域应具有与主要提供商的远程区域相似的远程延迟。 因为Cassandra可以将一致性隔离到数据中心,所以将新区域或数据中心添加到群集不需要停机,并且影响可忽略不计。 同时,Cassandra可以通过更高的一致性级别向开发人员保证查询在全球范围内是可靠的。
5.简单有效的复制
通过Cassandra,可以轻松地执行在键空间级别配置的基于区域或数据中心的数据复制,以便开发人员可以选择将数据复制到Cassandra集群中的某些区域子集。 反过来,这为开发人员提供了一种简单的方法来满足需求,例如客户和业务需求或政府合规性法规。 Cassandra还使将依赖于多个云提供程序的任何应用程序或表与仅涉及一个提供程序的应用程序或表分离开来变得简单。
6.具有所需灵活性的开源许可
作为一个开源软件项目,任何企业都可以在任何云提供商或私有数据中心中运行Cassandra,从而保留了专有数据库解决方案或云提供商服务根本无法匹敌的自由度和灵活性。 云提供商提供的数据库服务旨在促进供应商锁定,而Cassandra提供了一种简单且经济高效的选择,避免了与单个云供应商的锁定。
鉴于云提供商环境的差异以及处理配置管理,CI / CD,警报,资源规划和路由/ DNS所需的单独的流程和代码路径,实现真正的多云或混合部署具有挑战性。 但是,Cassandra作为适合多云部署的开源数据库的优势意味着数据层没有这些问题。 将Cassandra与其他流行的标准化解决方案结合在一起,可以为企业提供可跨多个云提供商扩展的应用程序堆栈,特别是在越来越多的企业转向长期多云战略时,它的时机恰到好处。
翻译自: https://opensource.com/article/18/3/apache-cassandra-multi-cloud-future
为什么选cassandra