专栏首页大数据杂货铺运营数据库系列之高可用性

运营数据库系列之高可用性

这篇博客文章是CDP中Cloudera的操作数据库(OpDB)系列文章的一部分。每篇文章都会详细介绍新功能。从该系列的开头开始,请参阅《CDP中的运营数据库》,《运营数据库系列之可访问性》,《运营数据库系列之管理篇》。

这篇博客文章概述了Cloudera OpDB的高可用性的配置功能。

Cloudera的运营数据库(OpDB)是基于集群的软件,它开箱即用地配置为具有高可用性(HA)的特性。

这将导致节点之间的无缝自动故障转移,并使配置路径对故障转移也具有弹性,这意味着可以在不关闭OpDB的情况下将其恢复。

HA可以通过以下功能进一步扩展:

异步复制:在本地、跨数据中心、在数据中心和云之间以及以地理分布的方式。

扩展集群配置:带有网络延迟(建议链接延迟小于20毫秒)。距离可能会有所不同,具体取决于网络负载延迟和带宽。

只读副本:它们在数据库中提供了额外的弹性。

在线重组和配置更改

Cloudera的OpDB允许数据库重组,而无需关闭OpDB。这是因为命名空间大致等同于DB,并且可以将它们分配给集群中的不同服务器集而无需关闭集群。

可以在区域中的节点之间移动名称空间,也可以通过区域服务器组将名称空间限制为节点的子集,而不必考虑节点在集群中的物理位置,或者集群是否跨越扩展集群配置中的数据中心。

还支持索引重组。大多数索引(例如近实时索引)都可以在实时系统中创建、修改或删除。其他索引可以在线创建或删除,但不能修改。

也可以在不停止OpDB的情况下更改配置。可以在实时系统中添加和删除节点、表和列,还可以在不停机的情况下添加SQL引擎和辅助组件。

还支持不关闭同一数据库上多个实例的配置更改。例如,可以在“列族”中添加新列,也可以将应用程序更改为使用该新列。

升级

Cloudera Manager通过发行版和维护补丁程序自动化升级OpDB中各种组件的过程。

Cloudera Manager以自动化方式处理以下流程:

• 安装发行或维护补丁

• 管理配置

• 每个受影响的组件的重新启动过程

Cloudera的OpDB产品是基于集群的产品,因此所有升级和补丁都跨越多个节点。

还支持无停机的应用程序升级。升级用户应用程序时,无需关闭任何存储引擎。

复写

支持所有数据复制(DR)组合:

• 热热

• 温热

• 热冷

• 热热冷

• 这些配置的其他排列

复制的方向可以是通过高级地理分布拓扑的单向、双向或多向复制。

数据库在集群中至少维护三个数据副本(可以配置更多副本),以防止在热灾难恢复环境中中断。但是,如果需要这种方法,则提供了多种机制以允许在热环境中创建数据的副本:

• Snapshots

• Replication

• Export

• CopyTable

• HTable API

Active-hot DR站点可用于所有形式的访问,包括只读、读写、仅写等。多向复制可用于保持数据同步,并可在数据库中进行设置(命名空间)级别以及表级别。

还以与Active-hot DR站点相同的方式支持热和冷DR站点。所有站点均以相同方式获得许可,而无需考虑站点类型。

异步复制

Cloudera的OpDB平台支持在同一OpDB的实例之间进行近乎实时的数据异步复制,而对性能的影响最小。

异步复制具有两种一致性模式:最终一致和时间轴一致

有多种方法可以实现异步复制。

基于存储层的方法

基于存储层的异步复制方法是在多个集群之间异步复制数据。

集群复制使用主动推送方法。集群可以是源集群(也称为主动集群,表示它写入新数据),目标集群(也称为被动集群,表示它使用复制接收数据),或者可以一次完成这两个角色。

这种异步集群复制是指使用源集群的预写日志(WAL)传播更改,从而使一个集群状态与另一集群状态保持同步。

以列族的粒度启用复制。列族是在表创建时定义的列分组,与在表创建时不必定义的列形成对照,因为它们可以在插入时动态创建。

当数据从一个集群复制到另一集群时,将使用集群ID(属于元数据的一部分)跟踪数据的原始来源。还跟踪所有已经使用了数据的集群。这样可以防止复制循环。

常见的复制技术:

• 中央源集群可以将更改传播到多个目标集群,以进行故障转移或者由于地理分布。

• 源集群可以将更改推送到目标集群,目标集群也可以将自己的更改推送回原始集群。

• 许多不同的低延迟集群可以将更改推送到一个集中式集群,以进行备份或资源密集型数据分析作业。然后,可以将处理后的数据复制回低延迟集群。

多种级别的复写可以链接起来,以满足您的需求。

双重写范例

实现异步复制的另一种方法是使用双重写入范例,客户端可以将数据写入我们的持久消息队列中,然后将其写入数据库的两个实例中。

这种方法适用于某些最终一致性足以满足编写要求的用例。

同步复制

Cloudera的OpDB支持将同一集群的节点之间的数据同步复制为非可选默认值。

每次写入均被复制到最少三个节点,然后再确认回客户端。您可以配置将写操作复制到的节点数。

异构复制

异构OpDB复制允许OpDB在不同的OpDB供应商之间进行复制。当组织中使用多个不同的OpDB引擎或在向新OpDB平台的迁移过程中使用此引擎时,这一点很重要。

Cloudera提供了多种工具来支持异构OpDB复制,而无需额外费用。例如,提供Nifi来启用流式接收,并从任何关系DBMS导出到Cloudera的OpDB。

只读副本

可以创建只读副本,这意味着它不支持对象的更新、删除或创建。这种类型的副本适用于只读工作负载分配和业务连续性计划。

您可以通过两种不同的方式创建只读版本:

• 将数据库复制到标记为只读的第二个集群。

• 使用“只读副本”功能,客户端将请求发送到托管数据副本(包括主副本)的所有RegionServer。客户端接受第一个响应,包括它是来自主要还是辅助RegionServer。

读取和写入操作读取/写入副本

读/写RrReplicas支持读和写操作,作为具有冲突解决方案的双活集群的一部分。当复制用于双向同步两个不同的集群时,这种类型的副本非常有用。这使两个集群都可以在双活配置中写入。

在单个集群的范围内,所有写入均以分布式方式完成,确保在确认客户端之前,在多个节点上至少写入三个副本。这是通过解决冲突来完成的,以确保为客户端提供强大的一致性。

错误保护

OpDB还可以防止用户错误。我们的两个存储引擎都提供了此功能。

如果用户出现类似“我不是要删除该记录”的错误,则用户可以在使用setTimeRange 删除之前检索记录记录。

此外,定期进行增量备份或快照使用户可以回滚到上一个保存的恢复点。

结论

在此博客文章中,我们研究了如何在OpDB中配置和使用高可用性功能。在下一篇文章中,我们将介绍CDP中OpDB的数据完整性功能。

原文链接:https://blog.cloudera.com/operational-database-availability/

作者:Liliana Kadar

本文分享自微信公众号 - 大数据杂货铺(bigdataGrocery),作者:大数据杂货铺

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 初始Streams Replication Manager

    Streams Replication Manager(SRM)是一种企业级复制解决方案,可实现容错、可扩展且健壮的跨集群Kafka主题复制。SRM提供了动态更...

    大数据杂货铺
  • SRM常见用例和架构

    Streams Replication Manager(SRM)是一种企业级复制解决方案,可实现容错、可扩展且健壮的跨集群Kafka主题复制。SRM提供了动态更...

    大数据杂货铺
  • Kafka运维篇之使用SMM监控Kafka集群复制

    继之前《Kafka运维篇之初识Streams Messaging Manager》、《Kafka运维篇之使用SMM监控Kafka集群》和《Kafka运维篇之使用...

    大数据杂货铺
  • 最新的15 个有趣的前端库(December 2016)

    时见疏星
  • 分享一些实用的Chrome DevTools技巧

    提示:如果您使用jQuery,则可以输入$($0)以访问此元素上的jQuery API。

    德顺
  • Redis学习笔记(六)Redis数据存储类型之set

    ​ (1)添加数据 sadd key member1 member2…

    萌萌哒的瓤瓤
  • HLAminer:根据NGS数据确定HLA分型结果

    PCR-SBT方法是世界卫生组织WHO推崇的HLA 分型的金标准,其实就是指的直接测序,无论是WGS, WES, RNA_seq 数据都可以。近几年来涌现了很多...

    生信修炼手册
  • GAN的入门与实践

    作者:Double_V 编辑:龚 赛 PART 01 GAN 简介 引言 生成对抗网络(Generative Adversarial Nets,GAN)是...

    机器学习算法工程师
  • 泰国公布加密资产监管细则,交易这7种币完全合法

    泰国证券交易委员会(SEC)公布了有关该国加密资产和ICO监管框架的细则,包括许可证要求、费用等,另外还批准了7种加密资产上线交易所。

    电微13823152032
  • 如何编写高质量的测试用例?

    rectinajh

扫码关注云+社区

领取腾讯云代金券