技术开发 频道

魅族左兴宇:DBA那些年的寂寞谁懂

  【IT168 专稿】他,大学毕业从事了4年开发,起初对DBA充满敬仰与好奇,机缘巧合踏入数据库行业,从此一发不可收拾,进可“solo”小规模db,退可“团战”大容量数据集群,这就是小编今天要给大家八卦的男主… 

魅族左兴宇:DBA那些年的寂寞谁懂

  ▲魅族首席DBA 左兴宇

  说到魅族,相信小伙伴们都不陌生,因为在你我当中不少使用这款智能手机的。而且,不知道你有木有这种感觉,魅族的深入人心貌似很自然、随意。对于一个新人来说,能采访到首席DBA,那是相当的幸运,于是小编火力全开,头天就准备好了各种问题,随我来看!

  “刀尖上跳舞”的营生不缺故事

  在采访中了解到,左兴宇曾经是美国saas营销软件公司Demandforce北京研发中心高级DBA。2013年搭上了魅族这艘快船。担任魅族的首席DBA,并经历了魅族近几年来飞跃式的发展,用户数从300W到3500W,IDC设备数从2位数到4位数,IDC机房数从1个扩大到4个,这已很让我们惊叹,相信任何处在这个潮流中的人都受益匪浅。

  技术人员很大部分的自豪感和荣誉感来自解决了错综复杂的问题带来的欣喜,也来自通宵数据割接半夜处理故障带来的苦闷,DBA的寂寞谁懂呢?说DBA是“高危“职业,这一点根本无需质疑!然后左兴宇给小编说了一个紧急数据修复的故事:

  记得事故发生时,DBA正在和另外一个项目组团建,从电话里对方慌张的语气里感受到这次事件非同寻常,二话不说赶紧跑路,回来发现确实摊上大事了。

  第一件事是终止数据继续错乱,已经有开发和运营在做了,第二件事就是尽快修复数据。数据恢复2个要素1)恢复效率 2)数据准确性都要保证,同时还不得影响线上业务正常运行。了解清楚情况后立即着手做数据修复,40几个数据集群,每个集群数据量都在1TB以上,单个备份文件在100G左右,不能用平时恢复数据那样搞了,于是采取了几个措施1)把DBA分组,每个人负责10个集群 2)把全部备用机器拿出来,提供最大的IO写入能力 3)把备份文件切割,做库级别的并发还原4)用DBA时间换用户时间,DBA两班倒24小时在线。

  通过这几个手段数据一个晚上全部恢复到前一个版本,经过3天错乱数据全部修复。回想起兄弟们熬夜通红的双眼总会莫名的心酸。当然DBA的生活不总是苦的累的,通过努力把业务可用性从3个9做到4个9,单用户成本降低90%,日常工作繁忙度从90%降低到50%等等,这些改变带来的欢乐也是刻骨铭心的。有甜有苦,有笑有泪,这才是真实的生活!

  发展迅速的魅族也不缺棘手的问题

  一个企业的发展逐年递进,那每一个阶段都会有不同的问题,在采访中,左兴宇梳理了几个问题,可见这个首席DBA的细心与耐心…他分享的这些相信每个DBA都会感同身受。

  首先,因标准化程度太低造成的混沌状态。硬件层、OS层、实例层、库结构等方面没有规范。这导致了DBA需要付出很大的人力去应付每个项目的差异,并且不可持续发展,初级阶段就是这样走过来的。左兴宇说道,个人感受即使这个阶段,也要分出部分人力来做标准化。这个工作在未来就能够得到非常好回报,标准化从根上解决的是质量问题。

  其次,标准化落地的过程时间很长并且一直在进化。当标准化走到一定程度时,才可以着手自动化。没有标准化为前提来做自动化,路上会很艰辛。手工操作尽可能的变成自动化工具,工具整合变成平台,DBA变成审核部门和“点鼠标”工程师,把精力从重复单调的日常任务里解放出来,做更有价值的事情。自动化解决的是效率问题。

  再次,DBA好比“拆迁队”,由于前期资源规划不合理,业务成长迅速远超预期,业务规则改变等原因,数据到一定规模后会出现分分合合。到这个阶段,怎样做容量规划,怎样快速拆迁/减少拆迁,才是最迫切的需求。摊子大了就一定要有规划,有数据做支撑的规划设计会减少很多未来会出现的拆迁。目前也在做魅族的数据库中间件,今年中间件出来后的拆迁/扩容缩容就简单多了。

  最后,DBA是个业务支撑部门,不直接产生利润,但可以通过提高资源利用率、通过容量系统、技术等手段减少支出,这就是创收。例如:现在正在做容量系统的建设,初略计算一下,这件事做完后可以节约30%以上的支出。得到同样的性能可以有不同的硬件搭配,如何让一台64G的R720跑1T热点数据?如何搭配才是性价比比较高的?如何界定容量上限?这些都是很有意义的工作。

  浩瀚数据海 深度挖掘是王道

  从人机大战4:1战胜李世石的阿尔法狗到阿里2016财年交易额突破3W亿RMB,这些伟大的成就无一不是建立在数据之上的,数据无处不在,人人都是数据的生产者,同时也是数据的消费者,谁能从浩瀚的数据汪洋中深度挖掘觅得真金,谁就能做笑到最后的那个人。

  全世界每年产生的数据以50%+的速度持续增长,一年产生的信息量比信息化之前人类发展几千年产生的信息之和还多。我们的日常生活从起床听歌跑步,到外卖订单,到淘宝京东购物,到美团电影,到微博微信朋友圈,这些行为产生的数据,通过大数据分析得到的个人画像,甚至比你自己更了解你。

  这就是数据的魅力,它成就了你我,也成就了这个时代,它就像空气一样,你感觉不到它的存在,但你已经无法离开它。未来一定是数字化的,数据就是未来。

  软件的发展与硬件瓶颈优化

  在保证数据正确性的前提下怎么样做到更快的存进去,更快的取出来,这是数据库领域永恒的话题,从历史上的网状数据库,文档数据库,发展到成熟的关系数据库,以及各种NOSQL产品的出现,都是围绕存取这个基本点来发展的。

  NOSQL产品的蓬勃发展和SQL形成互补关系,NOSQL的服务保有量也逐年提升。软件产品是跑在硬件之上的,性能受限于硬件特性,关系数据库诞生到现在,数据库管理软件的发展一直围绕这IO这个硬件瓶颈做各种优化,以求达到更好的平衡。

  而NOSQL产品的出现,回避了磁盘IO这个瓶颈,用更快的设备达到更高的性能,比如redis就是一款数据全部跑在内存里的NOSQL产品。近年来出现的闪存技术打破了被硬件IO速度设定的天花板,磁盘能提供的IO能力已经远远高于业务需求,但价格相对机械磁盘也要贵不少。现在有几个问题需要解决。

  1.开发基于闪存硬件的数据库软件,来吃掉高达60W的IOPS,提供更强劲的性能。从最近发布的MySQL5.7来看,厂家针对闪存硬件做了一些调整,但我觉得还不够,或许未来能出现一个100%基于闪存技术的全新的数据库软件。

  2.从成本来看,如何把SSD和HDD高低搭配,在性能提高的同时做到更好的性价比,BAT大厂已经有成熟的解决方案在使用,联想也有团队在干这件事,但对小厂来说还有技术门槛。

  3.存储容量越来越大,三星已经做到SSD单盘16TB,100WIOPS,国内的闪存厂家宝存/memblaze也做到了单卡6.4T,这么大容量的数据存储,一块卡损坏导致数据影响面放大了很多倍。这在数据库架构方面提出了更高的要求,如何做到业务硬件无关性,如何快速恢复这么大的数据,是我们需要面对的问题。

  写在最后

  左兴宇会在数据库架构设计专场带来《魅族互联网发展路程之数据库篇》,主要介绍魅族年出货量从400万到2000万,用户数300万增长到3500万的过程中,数据库作为关键存储技术所遇到的问题,以及如何解决。主要技术点: 1:mysql,redis,mongodb,zookeeper,mha,lvs 2:单机房到多机房,GSLB 3:数据分片,用户分片 4:SSD闪存的应用。感兴趣的小伙伴不要错过哦!

魅族左兴宇:DBA那些年的寂寞谁懂

  2016第七届中国数据库技术大会(DTCC)将于2016年5月12日-14日召开,大会云集了国内外顶尖专家,共同探讨MySQL、智能数据平台、数据治理、大数据创业、大数据深度学习等领域的前瞻性热点话题与技术,为数据库人群、大数据从业人员、广大互联网人士及行业相关人士提供最具价值的交流平台。欲了解更多有关大会的精彩内容请访问DTCC 2016官网:http://dtcc.it168.com/

1
相关文章