influxdb分布式数据库(分布式数据库tidb是什么)

技术怎么解析RadonDB分布式数据库核心技术与实现怎么解析RadonDB分布式数据库核心技术与实现,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。摘要:随着

如何分析RadonDB分布式数据库的核心技术和实现,相信很多没有经验的人都不知所措。因此,本文总结了出现问题的原因和解决方法,希望大家可以通过这篇文章来解决这个问题。

随着摘要:,数据规模的逐渐扩大,存储和运维成本也在逐渐增加,企业对数据库的要求也在逐渐提高。有人认为以MySQL为代表的传统数据库已经过时,无法满足数据爆炸时代企业的需求。以NoSQL为代表的新数据库仍然存在局限性,不具备ACID特性,难以满足企业对核心业务数据的严格要求。这次共享的RadonDB是分布式一致性协议Raft与MySQL相结合的新一代分布式关系数据库。RadonDB最大的特点是结合了两类数据库的优势,让DBA可以从传统单机时代的MySQL无缝过渡到原生云、无限扩展的分布式关系数据库。

RadonDB架构图

RadonDB location是新一代分布式关系数据库。在当今云计算快速发展的时代,我们更愿意称之为云原生数据库,它的自然属性是分布式的、可扩展的、高可用的、强一致性的。下面的MyNewSQL是因为我们结合了MySQL和NewSQL来满足上面的特性。

怎么解析RadonDB分布式数据库核心技术与实现

其中一个请求到达后,SQL层会将该请求分析成分布式执行计划,然后在后端存储层并行执行该SQL。此外,它还将执行二次操作,即按/限制/分组/strong化/加入.等等。也是分散式设计,部署方便,易于扩展。这是整个SQL层的设计。

Storage Nodes

再看存储层,存储层是RadonDB中比较新颖的设计,也是我们定位为新一代分布式数据库的原因之一。

怎么解析RadonDB分布式数据库核心技术与实现

第一个挑战,如何快速选主?

第二个挑战,新主选后数据如何快速回放?

第三个挑战是如何保证数据回放后不丢失数据?RadonDB是怎么解决的?

对于第一个挑战,我们使用了Raft协议。要知道Raft协议主要做两件事,第一件是选择主控,第二件是同步数据。在RadonDB中,只有Raft用于选择主节点。当主机挂机时,我们使用Raft选择一个新的主机,然后同步数据。我们基于MySQL的原生FGTID机制和并行复制快速回放。

为了保证数据不丢失,我们还是以MySQL为基础,使用MySQL的半同步机制。用户写主副本时,首先要到达从副本,收到从副本后,会反馈给客户端。这将始终确保从副本的数据与主副本的数据完全一致,并且从节点将被选为新的主节点,从而确保该数据不会丢失。

当选为新的主节点后,RadonDB的Log并行复制依然基于MySQL机制,并行复制,快速回放,相当于实现了Raft主选择和Log并行复制的结合。很难与Raft Log并行回放两个原始Raft协议。然而,我们用MySQL做得很好。而且,这三个副本是一个分散的设计,只要我们能够到达它们,它们的部署是灵活的。

扩容

RadonDB的底层都是基于MySQL的,方便扩容,因为MySQL有一套工具和机制。

怎么解析RadonDB分布式数据库核心技术与实现

大家可以看到上图,其实MySQL Xa机制总共有五个步骤,但是在RadonDB中,我们对它进行了抽象,也就是封装。我们实现了快照的隔离级别和快照隔离的事务隔离级别。

Binlog

此外,RadonDB支持Binlog。你可能认为一个分布式数据库需要放很多数据在里面,但是数据一旦进入你的分布式数据库,怎么可能出来呢?这相当麻烦。因此,RadonDB提供了Binlog机制,使得数据能够快速同步处理。

OLTP + OLAP

比如我们有一个OLAP集群,可以设置为RadonDB的Binlog,Binlog是实时更新的,完成了一个异构化过程和数据流出,是实时的。

可以看到,在刚才的架构图中,右下角有一个计算节点。事实上,我们的计算节点通过这种机制与RadonDB数据同步。这样,OLTP和OLAP就结合在一起了。当来自用户的复杂查询到达RadonDB时,RadonDB将根

据SQL的模式发到TP节点还是AP节点,前端的用户是没有感知的,这就做到了一些资源的隔离。当然了,这也有一个缺点,数据可能是两份,但目前,我们是通过异构化、列式存储来进行的,高压缩做这种机制。

审计日志

另外,RadonDB还提供了一些审计日志这些功能,为了方便大家对业务进行一些审计,而且审计机制还可以定位一些慢查询SQL,因为分布式的数据库,节点比较多,所以定位一个SQL会比较复杂,有了审计日志,大家可以定位一些慢的SQL。

备份和恢复

RadonDB提供了一整套备份和恢复的工具,可以让用户快速地把数据流进去,流出来,比原生的要快很多。

性能

怎么解析RadonDB分布式数据库核心技术与实现

  mysql> show processlist;

  第一条命是,MySQL常用的,表示用户的链接到RadonDB的状态。

  mysql> show txnz;

  第二个命令是,分布式事务在哪个阶段执行,耗时多少,这个都可以很清楚地看到。

  mysql> show queryz;

  最后一个命令,具体哪些子句落到哪些节点,甚至耗时多少,比如说,某个节点有一些问题,都可以从这个上面反映出来,比较灵活。

看完上述内容,你们掌握怎么解析RadonDB分布式数据库核心技术与实现的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/151912.html

(0)

相关推荐

  • 高级语言中的语句在汇编中是怎么实现的

    技术高级语言中的语句在汇编中是怎么实现的这篇文章主要介绍“高级语言中的语句在汇编中是怎么实现的”,在日常操作中,相信很多人在高级语言中的语句在汇编中是怎么实现的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法

    攻略 2021年10月22日
  • 三点水反犬旁加一个奇,反犬旁右边一个奇 什么字

    技术三点水反犬旁加一个奇,反犬旁右边一个奇 什么字猗 yī (形声三点水反犬旁加一个奇。从犬,奇声。本义:阉割过的狗) 同本义 [castrated dog]
    猗,犬也。——《说文》 猗
    yī 长大 [grow]

    生活 2021年10月23日
  • 应接不暇是什么意思,应接不暇的应是什么意思

    技术应接不暇是什么意思,应接不暇的应是什么意思应接不暇:景物繁多,来不及观赏应接不暇是什么意思。目前多形容来人或事情太多,应付不过来。暇:空闲; 不暇:没有空闲,来不及。原形容景物繁多,目不暇接。后来形容人太多或事务繁杂

    生活 2021年10月30日
  • 不同程序员的Python代码风格有哪些

    技术不同程序员的Python代码风格有哪些这篇文章主要讲解了“不同程序员的Python代码风格有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“不同程序员的Python

    攻略 2021年11月18日
  • 香港服务器迁移网站要注意什么香港服务器租用

    技术香港服务器迁移网站要注意什么香港服务器租用将网站迁移到新的香港服务器需要大量规划。一些主要原因是磁盘空间不足、客户服务差以及服务器经常出现故障。起初,转向新的网络香港机房服务商可能看起来很棒,但实际上,不同的原因所需

    礼包 2021年11月3日
  • google my map(google map application)

    技术如何申请Google Map API v2 的API key如何申请Google Map API v2 的API key,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可

    攻略 2021年12月24日