加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

不间断营业,腾讯10P+金融数据跨机房迁徙拭魅战

发布时间:2019-03-13 17:10:23 所属栏目:业界 来源:DBAplus社群
导读:一、HBase常识先容 思量到来听分享的大部门都是MySQL DBA,因此这里做了个简朴的HBase相干先容,首要先容了如下三个方面的内容: 1、HBase简介 HBase是基于google bigtable的开源实现,又称为hadoop database,具有高机能、高可用、易伸缩等特点,是一个面
副问题[/!--empirenews.page--]

 一、HBase常识先容

思量到来听分享的大部门都是MySQL DBA,因此这里做了个简朴的HBase相干先容,首要先容了如下三个方面的内容:

1、HBase简介

HBase是基于google bigtable的开源实现,又称为hadoop database,具有高机能、高可用、易伸缩等特点,是一个面向列的漫衍式存储体系,可以在便宜PC Server的呆板上搭建海量存储处事。

跟着数据量的不绝增大,查询和写入的机能并不会呈现明明的降落,可以说是今朝各大企业构建数据中心很好的选择。

不间断营业,腾讯10P+金融数据跨机房迁徙拭魅战

2、HBase的优弱点

HBase的利益

总结了HBase的几个利益如下:

  • 列可以动态增进

着实更精确的说,HBase是面向列族的数据库,一个表可以有多个列族,而每个列族下面可以有很是多的列,也就是说列族下面的列可以动态增进可能镌汰。

  • 卓越的写入机能

HBase回收的是LSM范例体系布局,写入都是先写内存,后头再异步批量革新到磁盘,因此写入机能很是好。而且这种写入机能很轻易通过扩容呆板晋升。

  • 海量存储

HBase就是为海量存储而生的,因为其优越的架构计划,使得数据量的不绝增添,在查询时延方面并不会降落出格多。因此HBase在海量数据的场景下,上风很是明明。

  • 极易扩展

HBase因为其架构的特征(后端回收HDFS存储,借助ZK的相干特征),HBase极易扩展,通过添加节点,来增进存储量和晋升写入机能,使得HBase极具伸缩性。

HBase的弱点

总结了HBase的弱点如下:

  • HBase原生不支持SQL

HBase原生并不支持SQL,营业接入HBase必要通过接口做一些改革,这在必然水平上照旧不太友爱。固然今朝有一些组件也为HBase提供一些接口支持,好比phoenix。可是就我们的测试来看,不变性如故是一个很大的题目。

  • 查询耽误比DB大

HBase较量多的应用是通过便宜的PC Sever构建海量存储处事,而今朝DB的标配根基都是SSD盘,DB的耽误可以做到0.x个毫秒,而基于便宜PC Server构建的海量存储处事的耽误一样平常在几十毫秒到上百毫秒之间。

虽然HBase也可以回收SSD盘来构建海量存储,但这种本钱就较量高。今朝HBase已经支持了异构存储成果,可以将热数据存储到SSD,冷数据存储到SATA,这是一个很好的方案。

  • RegionServer单点

运维过RegionServer的同窗都也许深有领会,表的某一个region只能分派到某一台RegionSever的呆板上,因此,当某一台RegionServer非常的时辰,上面的Region必定会有影响,尤其是当一个RegionServer上有高出1000个region的时辰,影响也许会到达几分钟。这个单点的题目照旧一个较量大的硬伤。

今朝HBase2.0版本已经引入了Region Replica的支持,可是因为必要更多的资源和强读同等性的题目,业界真正在出产情形行使这个成果的很是少。较量多的是回网络群容灾方法,在营业层做切换,今朝我们就是回收这种方法,以镌汰单个RegionServer非常对营业造成影响。

3、HBase架构

HBase的架构图如下:

不间断营业,腾讯10P+金融数据跨机房迁徙拭魅战

上面是较量经典的HBase架构图,偷个懒,直接借来用一下,从图中我们可以看出HBase的架构条理照旧很清楚的。可以把这个架构分成三层来看(暂且把Zookeeper和Master忽略):

第一层:客户端层

客户端层首要是营业提倡的处所,可所以写入提倡端,也可所以营业查询端,这个较量好领略,就是HBase的挪用方。

第二层:RegionServer层

RegionServer提供全部会见层的成果,你可以简朴地领略为那一层是路由层、缓存层、引擎层等。全部对HBase的读写哀求都必要颠末RegionServer层。

第三层:存储层

HBase底层回收HDFS作为存储层,全部的数据都存储在HDFS,前面说的HBase极具伸缩性,很洪流平上得益于底层回收的HDFS存储。

4、一个DBA都能领略的HBase行使场景

上面讲了那么多,那么HBase到底是怎么行使的?

着实HBase可以用在许多的场景中,较量动静订单、时序DB、工具存储、保举画像等。这里讲一个DB最能领略的行使场景,那就是存储必要持久生涯的海量汗青数据。

好比:对付金融数据,因为禁锢的要求,至少必要保存5年,对付付出的订单、支持流水等数据,自己数据量很是大,而且汗青数据尚有查询需求。

这种数据假如保存在相关型的DB中,汗青DB的扩容、迁徙、维护,尚有会见将会是DBA的恶梦。可是假如这种数据保存在HBase中,就会很是的利便。

二、HBase跨机房迁徙

1、配景及挑衅

配景

这次HBase跨机房迁徙的配景是机房裁撤,必需在划定的时刻内把HBase集群从裁撤机房迁徙到新机房。

挑衅

针对这次HBase跨机房迁徙,我们首要面对如下几个挑衅:

  • 履历缺乏

在做这次迁徙之前,我们团队缺乏HBase大局限数据迁徙履历,而我本身之前首要做MySQL数据库相干的事变,对HBase壹贝偾做过一些研究,拭魅战履历并不多。只能摸着石头过河。

  • 营业不能间断

因为是金融营业,营业上是不能呈现间断的,因此,必需确保此次迁徙滑腻举办。

  • 数据同等性

金融数据必需担保数据的精确性和同等性,数据不能少,也不能错。数据同等性我们始终是放在最重要的位置上。

  • 数据量大

此次迁徙涉及到10P+的数据,而且不能影响现有的营业,这自己就是一个蛮大的挑衅。

2、方案选型

此次迁徙,因为缺乏履历,我们研究了许多业界的一些迁徙的方案和案例,总结出如下几个方案,我们最终选择了SnapShot+集群写的方案:

不间断营业,腾讯10P+金融数据跨机房迁徙拭魅战

下面我们别离来看看各个方案的详细环境:

Replication方案

Replication和MySQL同步的方案较量相同,也是通过同步日记(WAL日记)的方法实现HBase数据的增量同步,这个方案首要是基于增量数据的同步,而且主从集群版内情同,启用replication成果还必要重启集群。

我们这次迁徙涉及到较量大的版本变换(之前的集群版本较量老),而且有10P+的汗青数据,而且这种方法和我今朝的集群双写方案也不兼容,因此我们没有回收这个方案。

Distcp方案

Distcp是通过MR拷贝HDFS底层文件的情势实现数据的迁徙,因为不涉及到RegionServer层,因此服从很是高,很是得当汗青数据(不会再有修改的数据)的迁徙。针对及时表的话,则必要停写才气确保数据的同等性。

CopyTable方案和Export/Import方案

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读