×

oceanbase c

oceanbase(OceanBase的一致性协议为什么选择 paxos而不是raft)

admin admin 发表于2022-09-06 01:10:11 浏览191 评论0

抢沙发发表评论

本文目录

OceanBase的一致性协议为什么选择 paxos而不是raft


基于Raft的分布式一致性协议实现的局限及其对数据库的风险普通服务器具有良好的性价比,因此在互联网等行业得到了广泛的应用。但普通服务器也不得不面对2%-4%的年故障率(),于是必须高可用的传统数据库只得很悲催地使用性价比低得可怜的高可靠服务器。分布式一致性协议(distributed consensus protocol)是迄今为止最有效的解决服务器不可靠问题的途径,因为它使得一组服务器形成一个相互协同的系统,从而当其中部分服务器故障后,整个系统也能够继续工作。而Paxos协议()则几乎成了分布式一致性协议的代名词。然而,Paxos协议的难以理解的名声似乎跟它本身一样出名。为此,Stanford大学的博士生Diego Ongaro甚至把对Paxos协议的研究作为了博士课题。他在2014年秋天正式发表了博士论文:“CONSENSUS: BRIDGING THEORY AND PRACTICE”,在这篇博士论文中,他给出了分布式一致性协议的一个实现算法,即Raft。由于这篇博士论文很长(257页),可能是为了便于别人阅读和理解,他在博士论文正式发表之前,即2014年初,把Raft相关的部分摘了出来,形成了一篇十多页的文章:“In Search of an Understandable Consensus Algorithm”,即人们俗称的Raft论文。Raft算法给出了分布式一致性协议的一个比较简单的实现,到目前为止并没有人挑战这个算法的正确性。然而,OceanBase却没有采用Raft算法,这并非是OceanBase团队同学不懂Raft,而是Raft的一个根本性的局限对数据库的事务有很大的风险。Raft有一个很强的假设是主(leader)和备(follower)都按顺序投票,为了便于阐述,以数据库事务为例:·主库按事务顺序发送事务日志·备库按事务顺序持久化事务和应答主库

分布式文件系统和分布式数据库有什么不同


分布式文件系统(dfs)和分布式数据库都支持存入,取出和删除。但是分布式文件系统比较暴力,可以当做key/value的存取。分布式数据库涉及精炼的数据,传统的分布式关系型数据库会定义数据元组的schema,存入取出删除的粒度较小。
分布式文件系统现在比较出名的有GFS(未开源),HDFS(Hadoop
distributed
file
system)。分布式数据库现在出名的有Hbase,oceanbase。其中Hbase是基于HDFS,而oceanbase是自己内部实现的分布式文件系统,在此也可以说分布式数据库以分布式文件系统做基础存储。

oceanbase认证有必要考吗


这个还是有必要考的,你看看下面的简介吧。
OceanBase数据库是由蚂蚁集团完全自主研发的企业级分布式关系数据库,始创于 2010 年。具有数据强一致、高可用、高性能、在线扩展、高度兼容 SQL 标准和主流关系数据库、低成本等特点。至今已成功应用于支付宝及阿里巴巴全部核心业务。并从 2017 年开始服务于广泛行业客户,包括南京银行、西安银行、天津银行、苏州银行、东莞银行、常熟农商行、广东农信、中国人保等近四十家银行、保险和证券机构,以及印度最大支付公司Paytm。
OBCA (OceanBase 数据库认证专员)认证主要讲解 OceanBase 的发展历程、应用案例、产品架构、核心功能、部署安装等知识。
以下内容是对OBCA在线课程内容进行的整理,与课程大纲一致共分为6个章节。
分布式数据库与集中式数据库的差异
OceanBase数据库产品简介
OceanBase产品家族及基础概念
OceanBase集群技术架构
OB Server的SQL引擎和存储引擎
OCP及ODC工具介绍
OceanBase功能
OceanBase设计和实现的时候暂时摒弃了不紧急的DBMS的功能,例如临时表,视图(view),研发团队把有限的资源集中到关键点上,当前OceanBase主要解决数据更新一致性、高性能的跨表读事务、范围查询、join、数据全量及增量dump、批量数据导入。
OceanBase数据访问特点
虽然数据总量比较大,但跟许多行业一样,淘宝业务一段时间(例如小时或天)内数据的增删改是有限的(通常一天不超过几千万次到几亿次),根据这个特点,OceanBase把一段时间内的增删改等修改操作以增量形式记录下来(称之为动态数据,通常保存在内存中),这样也使得了主体数据在一段时间内保持了相对稳定(称之为基准数据)。
由于动态数据相对较小,通常情况下,OceanBase把它保存在独立的服务器UpdateServer的内存中。以内存保存增删改记录极大地提高了系统写事务的性能。此外,假如每条修改平均消耗100 Bytes,那么10GB内存可以记录100M(即1亿)条修改,且扩充UpdateServer内存即增加了内存中容纳的修改量。不仅如此,由于冻结后的内存表不再修改,它也可以转换成sstable格式并保存到SSD固态盘或磁盘上。转储到SSD固态盘后所占内存即可释放,并仍然可以提供较高性能的读服务,这也缓解了极端情况下UpdateServer的内存需求。为了应对机器故障,动态数据服务器UpdateServer写commit log并采取双机(乃至多机)热备。由于UpdateServer的主备机是同步的,因此备机也可同时提供读服务。
因为基准数据相对稳定,OceanBase把它按照主键(primary key,也称为row key)分段(即tablet)后保存多个副本(一般是3个)到多台机器(ChunkServer)上,避免了单台机器故障导致的服务中断,多个副本也提升了系统服务能力。单个tablet的尺寸可以根据应用数据特点进行配置,相对配置过小的tablet会合并,过大的tablet则会分裂。
由于tablet按主键分块连续存放,因此OceanBase按主键的范围查询对应着连续的磁盘读,十分高效。
对于已经冻结/转储的动态数据,OceanBase的ChunkServer会在自己不是太繁忙的时候启动基准数据与冻结/转储内存表的合并,并生成新的基准数据。这种合并过程其实是一种范围查询,是一串连续的磁盘读和连续的磁盘写,也是很高效的。
传统DBMS提供了强大的事务性、良好的一致性和很短的查询修改响应时间,但数据规模受到严重制约,缺乏扩展性;现代云计算提供了极大的数据规模、良好的扩展性,但缺乏跨行跨表事务、数据一致性也较弱、查询修改响应时间通常也较长,OceanBase的设计和实现融合了二者的优势:
UpdateServer:类似于DBMS中的DB角色,提供跨行跨表事务和很短的查询修改的响应时间以及良好的一致性。
ChunkServer:类似于云计算中的工作机(如GFS的chunk server),具有数据多副本(通常是3)、中等规模数据粒度(tablet大小约256MB)、自动负载平衡、宕机恢复、机器plug and play等特点,系统容量及性能可随时扩展。
MergeServer:结合ChunkServer和UpdateServer,获得最新数据,实现数据一致性。
RootServer:类似于云计算中的主控机(如GFS master),进行机器故障检测、负载平衡计算、负载迁移调度等。
上述的DBMS和云计算技术的优势互补使得OceanBase既具有传统DBMS的跨行跨表事务、数据的强一致性以及很短的查询修改响应时间,还有云计算的海量数据管理能力、自动故障恢复、自动负载平衡以及良好的扩展性。
OceanBase当前在淘宝的应用
OceanBase现在已经应用于淘宝收藏夹,用于存储淘宝用户收藏条目和具体的商品、店铺信息,每天支持4~5千万的更新操作。等待上线的应用还包括CTU、SNS等,每天更新超过20亿,更新数据量超过2.5TB,并会逐步在淘宝内部推广,也期待外部合作者。
-oceanbase

TiDB和oceanbase谁更牛逼






摘要
您好,努力解答小主疑惑的饭小希很高兴为您服务,感谢茫茫人海中选择我为你解答!





就目前来说,这是国内技术和生态都不错的分布式数据库,哪个更优秀还需要等市场来说话。这两个数据库在墨天轮国产数据库流行度排行榜中一直占据第一和第二的位置呢





OB和TiDB的架构比较相似,适用的场景也有很大的重叠,而且两者都选择金融行业为切入点。





TiDB开源,OB闭源。





个人认为国产数据库至少还要等5-10年,才能去分出伯仲,让各大厂商之间PK,市场和生态来说明一切。







咨询记录 · 回答于2021-11-17









TiDB和oceanbase谁更牛逼?









您好,努力解答小主疑惑的饭小希很高兴为您服务,感谢茫茫人海中选择我为你解答!









就目前来说,这是国内技术和生态都不错的分布式数据库,哪个更优秀还需要等市场来说话。这两个数据库在墨天轮国产数据库流行度排行榜中一直占据第一和第二的位置呢









OB和TiDB的架构比较相似,适用的场景也有很大的重叠,而且两者都选择金融行业为切入点。









TiDB开源,OB闭源。









个人认为国产数据库至少还要等5-10年,才能去分出伯仲,让各大厂商之间PK,市场和生态来说明一切。









以上资料,提供参考作用。









答题的时光总是短暂的,饭小希为您解答完毕了,希望您能满意!如果没有疑问,希望您结束咨询,可以得到您的赞!









已赞






大数据存储必备软件有什么


文件存储

1、CouchDB

2、MongoDB

3、HDFS

4、Tachyon

表格存储

1、OceanBase

贡献者:阿里巴巴

2、Cassandra

贡献者:facebook


oceanbase数据库开源版本适合什么项目


适合处理各种数据,资源分配上。
oceanbase数据库具有高可用性。OceanBase的物理备份+逻辑备份,可以确保数据安全万无一失。同时多副本模式保障在满足多数节点可用时down机数据不丢失,不影响使用,在线修复或替换即可。
存储空间使用率大幅度下降。OceanBase官方结论为节省70%的磁盘空间(仅作参考),我们实际测试发现,原先使用MySQL需要3.8T的空间,使用OceanBase只需822G,节省空间超过70%,使用成本大大降低。
-c

vdba支持多少种数据库


vdba支持九种数据库。
vdba支持Oracle、MySQL、MSSQL、PG、OceanBase、TiDB、openGauss和达梦等9种数据库。
vdba包括云数据库审计与云数据库防火墙,是国内领先的云数据库安全防护系列产品,可部署在市场主流的虚拟化系统上。
-oceanbase