基于HBase和Spark构建企业级数据处理平台
作者:沐远
文章图片
大数据技术与架构
点击右侧关注,大数据开发领域最强公众号!
文章图片
文章图片
暴走大数据
点击右侧关注,暴走大数据!
文章图片
本文整理自来自阿里巴巴的沐远的技术分享,由大数据技术与架构进行整理和总结。
场景需求和挑战
面临的场景 金融风控
- 用户画像库
- 爬虫抓取信息
- 反欺诈系统
- 订单数据
- 用户行为分析
- 用户画像
- 推荐引擎
- 海量实时数据处理
- 海量帖子、文章
- 聊天、评论
- 海量实时数据处理
- 监控数据
- 轨迹、设备数据
- 地理信息
- 区域分布统计
- 区域查询
- 维表和结果表
- 离线分析
- 海量实时数据存储
- 松散表结构(Schema free)
- 随机查询、范围查询
- 原生海量数据分布式存储
- 高吞吐、低延迟
- 在线分布式数据库
- 多版本、增量导入、多维删除
- 流式及批量入库
- 复杂分析
- 机器学习、图计算
- 生态及联邦分析
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/3b1d8aab971848bca2236a97009061f8.jpg)
文章图片
- 快:通过query的执行优化、Cache等技术,Spark能够对任意数据量的数据进行快速分析。逻辑回归场景比Hadoop快100倍
- 一站式:Spark同时支持复杂SQL分析、流式处理、机器学习、图计算等模型,且一个应用中可组合上面多个模型解决场景问题
- 开发者友好:同时友好支持SQL、Python、Scala、Java、R多种开发者语言
- 优秀的生态:支持与Ka=a、HBase、Cassandra、MongoDB、Redis、MYSQL、SQL Server等配合使用
一站式数据处理平台架构
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/08e92d165df2496e83e76f5af9b77745.jpg)
文章图片
- 数据入库:借助于Spark Streaming,能够做流式ETL以及增量入库到HBase/Phoenix。
- 在线查询:HBase/Phoenix能够对外提供高并发的在线查询
- 离线分析及算法:如果HBase/Phoenix的数据需要做复杂分析及算法分析,可以使用Spark的SQL、机器学习、图计算等
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/6c40f9ffdcc844689e478ed2b8dfbd68.jpg)
文章图片
- 性能:流吞吐 20万条/秒
- 查询能力:HBase自动同步到solr对外提供全文检索的查询
- 一站式解决方案:Spark服务原生支持通过SQL读取HBase 数据能力进行ETL,Spark + HBase +Solr一站式数据处理平台
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/c787720734f84491be124305d38dda4a.jpg)
文章图片
- Spark同时支持事中及事后风控
- Spark友好对接HBase、RDS、MongoDB多种在线库
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/eb3f5c3e33994cedb3c33d8ca5996c2e.jpg)
文章图片
- 毫秒级识别拦截代充订单,并发十万量级
- Spark优秀的计算能力:Spark基于列式存储Parquet的分析在数据量大的情况下比Greenplum集群有10倍的性能提升
- 一站式解决方案:Spark服务原生支持通过SQL读取 HBase SQL(Phoenix)数据能力
- 聚焦业务:全托管的Spark服务保证了作业运行的稳定性,释放运维人力,同时数据工作台降低了spark作业管理成本
Spark API的发展经历了RDD、DataFrame、DataSet
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/fd83abb29dd04f72854c63bd4b7a16b0.jpg)
文章图片
Spark Streaming采用的是Micro-Batch方式处理实时数据。
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/0d9b97e807474cffb42e9b0da4ee61ce.jpg)
文章图片
作业堆积、延迟高、并发不够?
- 每批次的并发:调大kafka的订阅的分区、spark.streaming.blockInterval
- 代码热点优化:查看堆栈、broadcast、代码优化
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/70df15191c2f406f9aee07156620f76a.jpg)
文章图片
Micro-Batch Processing:100ms延迟 ,Continuous Processing:1ms延迟
Spark HBase Connector的一些优化
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/b29420f509a94bae86d82a8c221ea85b.jpg)
文章图片
代码托管在:https://github.com/aliyun/aliyun-apsaradb-hbase-demo (包含Spark操作Hbase和Phoenix)
欢迎点赞+收藏+转发朋友圈素质三连
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/2538afe3b08b4309bfa2a0221c547f33.jpg)
文章图片
![基于HBase和Spark构建企业级数据处理平台](https://img.it610.com/image/info8/3c9b9c079083427192293d9d34cc281f.jpg)
文章图片
【基于HBase和Spark构建企业级数据处理平台】文章不错?点个【在看】吧! ????
推荐阅读
- 急于表达——往往欲速则不达
- 第三节|第三节 快乐和幸福(12)
- 20170612时间和注意力开销记录
- 2.6|2.6 Photoshop操作步骤的撤消和重做 [Ps教程]
- 对称加密和非对称加密的区别
- 眼光要放高远
- 樱花雨
- 前任
- 基于微信小程序带后端ssm接口小区物业管理平台设计
- 2020-04-07vue中Axios的封装和API接口的管理