阿里巴巴瑾谦/沐远:云HBaseSQL及分析Phoenix&Spark

  • 时间:
  • 浏览:0
  • 来源:彩神大发APP_神彩大发APP官方

简介

众所周知Spark 和 HBase是大数据目前比较流行的两款产品。HBase可以划分在OLTP你两种领域,它有基于Row key点查性能好,可以自定sharding,高可用的社会形态。而Spark可以划分在OLAP领域,它具有通用的DAG分析引擎,可以做高性能的内存迭代计算,完善SQL优化层的一系列特点。这两款产品的结合映射成了目前比较流行的一类数据库HTAP,它既具备OLAP的功能又具备OLTP的功能。

目前社区做Spark on HBase的都主要做以下三方面的功能和优化:Spark SQL、Dataset、DataFrame API支持,支持分区裁剪、列裁剪、谓词下推等优化,Cache HBase的Connections。

下面亲戚亲戚亲戚朋友从Spark和HBase的部署层面以及执行层面来看如可用Spark来分析HBase上的数据。 当要启动三个 多Spark作业的然后首先时要三个 多driver,而driver中会做或多或少运算如Compiler,Analyzer,Optimizer,Planner,并最终生成三个 多执行计划,而执行计划会分为多个然后每三个 多都对应三个 多task,而task会采集到实际的资源上执行。而HBase是通过RegionServer来部署的,而每个RegionServer负责若干个Region的读和写。

架构

HBase上的SQL层



HBASE上的SQL层Phoenix 被亲戚亲戚亲戚朋友更多使用的三个 多社会形态是二级索引。要使用Phoenix首先时要了解它分为Client端和server端,server端是以三个 多jar包的形式部署在HBASE的内内外部。server端对meta表的操作和二级索引的读写等一系列操作都有通过HBASE的ZOOKEEPER完成的。

二级索引更为亲戚亲戚亲戚朋友关注的是Phoenix的二级索引。目前Phoenix的二级索引主要被亲戚亲戚亲戚朋友使用的是GLOBAL INDEX和LOCAL INDEX。GLOBAL INDEX目前为止使用场景比LOCAL INDEX更为广泛,它实质上是一张HBASE表,即把一张倒开索引单独存到另一张HBASE表中。不可能 你两种设计的社会形态使得它更多的使用与写少多读的场景。当然不可能 GLOBAL INDEX是一张单独的表也不它可以使用或多或少主表的社会形态,比如可以使用加盐,指定压缩等社会形态。而LOCAL INDEX是在元数据表中多加了三个 多列数去存储的。不可能 LOCAL INDEX和元数据表是位于一张表中,故它更多的适用于写多读少的场景中,然后该社会形态使得主表的数据量只有过大。GLOBAL INDEX和LOCAL INDEX相比LOCAL INDEX的网络开销比较小,故当索引表数据量适量的具体情况下LOCAL INDEX的性能更高。

以下是精彩视频内容采集:

关于SQL以及分析,未来计划将为用户做出一款体验更好的产品。该产品的架构为最上层是SQL层,该SQL同或多或少的分析引擎一样会有Parser、Planner、Qptimizer、Execrtor,但这套SQL会提供两种能力分别为OLTP和OLAP,他的runtime将使用Spark Runtime。同样在HBase底层会提供二级索引以及全文索引来富有这套SQL的表达能力以及他的性能。在HBase存储层面,HBase原始的存储有Memstore以及HFile,也不可能 会引入parquet/ORC来提高性能。

二级索引单条写性能测试结果下面是三根二级索引单条写性能测试的数据,配置信息为:云HBASE 1.4.4.3&ALi-Phoenix4.12,4核8G SSD(三个 多RS),主表SALT_BUCKETS=4,GLOBLA INDEX SALT_BUCKETS=4,下图为测试结果。

性能对比及使用在如此 Spark SQL你两种层面的HBase集成是,大偏离 人使用的是Native HBaseRDD来scan HBase的数据,当有Spark SQL的之可以能用DataFrame API来分析数据。通过执行三个 多catalog的表做简单的select及filter操作后count,对比二者的数据可以看出Spark SQL所需时间要远少于Native HBaseRDD。

Hbase上的分析从使用的土法子 上来分类可以分为NATIVE和SQL两类,而二者均位于小数量简单分析和大数据量冗杂分析两种场景。但无论在NATIVE和SQL上做小数据量分析不可能 大数据量分析均需防止HBASE的或多或少根本问题,比如HBASE表数据热点问题,易用性以及适用更多场景。

索引中的Row Key格式

二级索引案例

猜你喜欢

Angular2+进阶开发实战

为您提供简单高效、解决能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维速度,降低IT成本,使您更专注于核...用于实时预测用户对物品偏好,支持企业定制推荐算

2020-02-28

列举中国所有的朝代,和朝代发生的重大事件

参考资料来源:百度百科——董卓之乱公元5年(元始五年)十二月,汉平帝死后,王莽指使同党向太皇太后王政君上书,要求我就代天子临朝。王政君无奈,只好顺从这人 要求,由王莽摄政,称

2020-02-28

关爱罕见病人,让爱不“罕见”

国际罕见病日今幸微视频成立于2016年,由一批脑洞大开的影视青年联合创作,团队有健康专业的执业药师、有才华横溢的优秀插画师、更有脑洞大开的影视导演,为全网提供优秀有用的视频。欧

2020-02-28

游客b6pszzjbq3gqs的主页

云栖社区Java、Redis、MongoDB运营小编,有意合...文章:0丨粉丝:483丨话题:0文章:9丨粉丝:477丨话题:0文章:27丨粉丝:626丨话题:0文章:100

2020-02-28

预告|阿里云华北5地域将于十月开放服务 全系25G网络,侧重服务人工智能行业

“我们歌词 希望为我们歌词 提供高性能、普惠的计算资源,推动新兴行业的发展。”阿里云飞天研发负责人李津表示,规模效益和技术升级带来的领先优势,将帮助相互相互合作伙伴和客户把

2020-02-28