八年技术加持,性能提升10倍,阿里云HBase 2.0首发商用
摘要: 早在2010年开始,阿里巴巴集团开始研究并把HBase投入生产环境使用,从最初的淘宝历史交易记录,到蚂蚁安全风控数据存储,HBase在几代阿里专家的不懈努力下,已经表现得运行更稳定、性能更高效,内部HBase集群超过万台的规模,单集群超过千台,是集团核心数据库产品之一,也是国内甚至国际上绝对的HBase大户。
阿里云HBase 2.0成长手记,含着金汤匙出身
HBase本身是一个分布式存储、数据库引擎,可以支持千万的QPS、PB级别的存储,这些都已经在生产环境验证,并且在阿里得以验证。
早在2010年开始,阿里巴巴集团开始研究并把HBase投入生产环境使用,从最初的淘宝历史交易记录,到蚂蚁安全风控数据存储,HBase在几代阿里专家的不懈努力下,已经表现得运行更稳定、性能更高效,内部HBase集群超过万台的规模,单集群超过千台,是集团核心数据库产品之一,也是国内甚至国际上绝对的HBase大户。
为什么HBase会受到大客户的青睐。首先在这个上云的时代,在云上,对于引擎最为核心的就是存储计算分离,存储可以按需计费,起码得弹性伸缩。计算则按节点存储提供,完全按照QPS计费,要么费用高得吓人,要么难以满足更多的场景。
比如存储10M,到底算一次QPS,还是多少次。 由于HBase天生就是存储计算分离,天然比较适配云上的架构,可以说到了云上,HBase更加具有优势。
所以国内大型互联网企业内部都有大量的HBase集群,尤其阿里更甚。自2012年诞生第一位“东八区” HBase committer,到今天,阿里巴巴已经拥有3个PMC,6个committer,是中国拥有最多HBase committer的公司,其中HBase内核中超过200+重要的feature是阿里贡献。除了拥有强大的内核团队和内核能力,HBase在内部经过双十一等超级业务的千锤百炼,锻炼出一系列的完善的产品形态和企业级能力。
潜心修炼八年,终成HBase2.0
基于阿里长达8年和超万台实践经验和技术积累的延伸,ApsaraDB for HBase在基于社区的HBase的基础上,推出了云HBase服务。建立在阿里云庞大生态体系下,根据云环境生态和HBase存储系统的特点,推出适合企业严苛要求的云HBase存储系统。
HBase 2.0在性能,稳定性上做了一系列内核架构级别优化。这次阿里云基于社区HBase 2.0稳定版本基础上,进行了进一步一系列性能和稳定性优化和测试验证。
此次首发云HBase 2.0云服务,让用户可以第一时间体验到阿里技术加持的HBase 2.0新版本。
首先是针对企业不同的使用环境,不同的SLA诉求,云HBase一共提供3个版本,分别满足开发环境,在线业务,以及金融级业务的诉求。单节点版本,低廉的价格用于开发测试场景,集群版本,99.9%可用,满足企业在线业务诉求,支持最高5000万的QPS和10P的数据。还有支持金融级高可用的双活版本。所有版本都支持11个9的数据可靠性,无需担心数据丢失。

除了完善的产品形态,针对企业应用中成本、安全、稳定性、易用性等诸多诉求,阿里云HBase提供了强大的能力,例如存储计算分离,按需弹性能力; 数据备份恢复能力;数据冷热分离和分级存储能力;SQL接口和强大的二级索引和倒排索引能力;多层次安全能力等等。
细数ApsaraDB HBase典型场景
云HBase已经通过阿里云的公共云、专有云及混合云的形态对外服务,用户覆盖社交、金融、车联网、物流、零售、电商、共享出行等数十个行业,帮助用户顶住千万级QPS的业务压力,以及PB级数据高效存储和处理。
HBase2.0支持多region replicas服务,充分利用集群资源支持更高并发随机读。进一步加强了HBase高并发多读能力,因此非常适合车联网等物联网场景。
除了在物联网场景的应用,我们知道不少的头条类、新闻类的的新闻、网页、图片存储在HBase之中。HBase2.0支持中等对象存储,兼容原生api读写访问以及bulkload等,合适企业存储一些附件文档、图片数据,而不需要企业另选其它对象存储系统,大大简化企业后台数据架构。在存储上支持各类数据,包括日志、订单、交易数据、消息等,在线实时写入,实时查询。
通过对读写全链路优化,rpc改进等,比随机读写延时更低。同时满足了金融级分控,推荐等核心场景的极致时延和稳定性要求。
小结
历经近8年的技术沉淀,阿里巴巴大数据NoSQL数据库处理技术的精华沉淀在HBase上,后者成功支撑了成功支撑了阿里经济体中最大的NoSQL业务体量,是阿里大数据处理技术的核心组成部分,当前将这项技术应用到广大企业中,助力企业发现数据价值。
阅读原文
更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight
八年技术加持,性能提升10倍,阿里云HBase 2.0首发商用的更多相关文章
- Web 应用性能提升 10 倍的 10 个建议
转载自http://blog.jobbole.com/94962/ 提升 Web 应用的性能变得越来越重要.线上经济活动的份额持续增长,当前发达世界中 5 % 的经济发生在互联网上(查看下面资源的统计 ...
- Nacos 2.0 正式发布,性能提升 10 倍!!
3月20号,Nacos 2.0.0 正式发布了! Nacos 简介: 一个更易于构建云原生应用的动态服务发现.配置管理和服务管理平台. 通俗点讲,Nacos 就是一把微服务双刃剑:注册中心 + 配置中 ...
- Elasticsearch Reindex性能提升10倍+实战
文章转载自: https://mp.weixin.qq.com/s?__biz=MzI2NDY1MTA3OQ==&mid=2247484134&idx=1&sn=750249a ...
- 重构、插件化、性能提升 20 倍,Apache DolphinScheduler 2.0 alpha 发布亮点太多!
点击上方 蓝字关注我们 社区的小伙伴们,好消息!经过 100 多位社区贡献者近 10 个月的共同努力,我们很高兴地宣布 Apache DolphinScheduler 2.0 alpha 发布.这是 ...
- 存算分离下写性能提升10倍以上,EMR Spark引擎是如何做到的?
引言 随着大数据技术架构的演进,存储与计算分离的架构能更好的满足用户对降低数据存储成本,按需调度计算资源的诉求,正在成为越来越多人的选择.相较 HDFS,数据存储在对象存储上可以节约存储成本,但与此 ...
- 如何把 MySQL 备份验证性能提升 10 倍
JuiceFS 非常适合用来做 MySQL 物理备份,具体使用参考我们的官方文档.最近有个客户在测试时反馈,备份验证的数据准备(xtrabackup --prepare)过程非常慢.我们借助 Juic ...
- 一次 Spark SQL 性能提升10倍的经历(转载)
1. 遇到了啥问题 是酱紫的,简单来说:并发执行 spark job 的时候,并发的提速很不明显. 嗯,且听我慢慢道来,啰嗦点说,类似于我们内部有一个系统给分析师用,他们写一些 sql,在我们的 sp ...
- 如何把Go调用C的性能提升10倍?
目前,当Go需要和C/C++代码集成的时候,大家最先想到的肯定是CGO.毕竟是官方的解决方案,而且简单. 但是CGO是非常慢的.因为CGO其实一个桥接器,通过自动生成代码,CGO在保留了C/C++运行 ...
- Databricks缓存提升Spark性能--为什么NVMe固态硬盘能够提升10倍缓存性能(原创)
我们兴奋的宣布Databricks缓存的通用可用性,作为统一分析平台一部分的 Databricks 运行时特性,它可以将Spark工作负载的扫描速度提升10倍,并且这种改变无需任何代码修改. 1.在本 ...
随机推荐
- 百度语音 python
python实现语音识别 我们用到是百度语音识别,因为不掏钱哈哈!首先去百度官网去创建你的 APPID AK SK 这个网上很多大家没创建的自己看下 目前本SDK的功能同REST API,需要联网调用 ...
- Quartz.Net 任务调度之简单任务(1)
本文github链接 https://github.com/sunshuaize/cnBlogDemos/tree/master/Quartz.Net%20%E4%BB%BB%E5%8A%A1%E8% ...
- c++ vector push_back对象的时候存起来的是拷贝[转]
比如 class C1; vector<C1> vec; C1* p=new C1; vec v1; v1.push_back(&(*p)); delete p; 这里,传进函数的 ...
- LCD驱动程序架构和分析
一.LCD驱动程序架构 1.裸机驱动代码分析 ①LCD初始化:控制器初始化,端口初始化,指明帧缓冲 ②LCD图形显示:将图形数据写入帧缓冲 void lcd_init() { lcd_port_ini ...
- 集合类中的Collection接口实现类
今天学习一下集合包里面的内容,常见的有Collection和Map两个接口的实现类Collection中常见的又分为两种: 1.List ,支持放入重复的对象,实现类有arraylist,linked ...
- WebView中shouldOverrideUrlLoading和onPageStarted方法的区别
WebView中的shouldOverrideUrlLoading和onPageStarted这两个方法就是可以捕获到跳转的url,然后进行一系列的操作,但是他们两到底有什么区别呢? 当点击页面中的链 ...
- ShopNC B2B2C最新版去除shop方法教程
1.转移shop下目录文件至根目录: 2.修改config.ini.php里的shop绑定域名更改为无shop目录: 3.将原始根目录的index.php更改为main.php文件名自己定!并修改in ...
- SQL必知必会——插入数据(十五)
1.数据插入 INSERT用来将行插入(或添加)到数据库表.插入有几种方式: 插入完整的行插入行的一些部分插入某些查询的结果注意:1.使用INSERT语句可能需要客户端/服务端DBMS中的特定安全权限 ...
- 用JOptionPane类实现各种对话框
用JOptionPane类实现各种对话框 运行结果: 下面部分参考: JOptionPane类提示框的一些常用的方法 - - ITeye博客 http://847353020-qq-com.itey ...
- webpack构建缓存机制-hash介绍
前言 浏览器为了优化体验,会有缓存机制.如果浏览器判断当前资源没有更新,就不会去服务端下载,而是直接使用本地资源.在webpack的构建中,我们通常使用给文件添加后缀值来改名以及提取公共代码到不会改变 ...