本文整理自来自阿里巴巴的沐远的分享,由大数据技术与架构进行整理和分享。git
场景需求和挑战
面临的场景
金融风控github
个性化推荐面试
- 用户行为分析
- 用户画像
- 推荐引擎
- 海量实时数据处理
社交Feeds 算法
时空时序数据库
- 监控数据
- 轨迹、设备数据
- 地理信息
- 区域分布统计
- 区域查询
大数据segmentfault
新的挑战
Apache HBase(在线查询) 的特色有:架构
- 松散表结构(Schema free)
- 随机查询、范围查询
- 原生海量数据分布式存储
- 高吞吐、低延迟
- 在线分布式数据库
- 多版本、增量导入、多维删除
面临的新的挑战:并发
- 流式及批量入库
- 复杂分析
- 机器学习、图计算
- 生态及联邦分析
选择Spark的缘由

- 快:经过query的执行优化、Cache等技术,Spark可以对任意数据量的数据进行快速分析。逻辑回归场景比Hadoop快100倍
- 一站式:Spark同时支持复杂SQL分析、流式处理、机器学习、图计算等模型,且一个应用中可组合上面多个模型解决场景问题
- 开发者友好:同时友好支持SQL、Python、Scala、Java、R多种开发者语言
- 优秀的生态:支持与Ka=a、HBase、Cassandra、MongoDB、Redis、MYSQL、SQL Server等配合使用
平台机构及案例
一站式数据处理平台架构

- 数据入库:借助于Spark Streaming,可以作流式ETL以及增量入库到HBase/Phoenix。
- 在线查询:HBase/Phoenix可以对外提供高并发的在线查询
- 离线分析及算法:若是HBase/Phoenix的数据须要作复杂分析及算法分析,可使用Spark的SQL、机器学习、图计算等
典型业务场景:爬虫+搜索引擎

- 性能:流吞吐 20万条/秒
- 查询能力:HBase自动同步到solr对外提供全文检索的查询
- 一站式解决方案:Spark服务原生支持经过SQL读取HBase 数据能力进行ETL,Spark + HBase +Solr一站式数据处理平台
典型业务场景:大数据风控系统

- Spark同时支持事中及过后风控
- Spark友好对接HBase、RDS、MongoDB多种在线库
典型业务场景:构建数据仓库(推荐、风控)

- 毫秒级识别拦截代充订单,并发十万量级
- Spark优秀的计算能力:Spark基于列式存储Parquet的分析在数据量大的状况下比Greenplum集群有10倍的性能提高
- 一站式解决方案:Spark服务原生支持经过SQL读取
HBase SQL(Phoenix)数据能力运维
- 聚焦业务:全托管的Spark服务保证了做业运行的稳定性,释放运维人力,同时数据工做台下降了spark做业管理成本
原理及最佳实践
Spark API的发展经历了RDD、DataFrame、DataSet
机器学习
Spark Streaming采用的是Micro-Batch方式处理实时数据。

做业堆积、延迟高、并发不够?
- 每批次的并发:调大kafka的订阅的分区、spark.streaming.blockInterval
- 代码热点优化:查看堆栈、broadcast、代码优化
Spark流式处理入库HBase

Micro-Batch Processing:100ms延迟
ConKnuous Processing:1ms延迟
Spark HBase Connector的一些优化

代码托管在:https://github.com/aliyun/ali... (包含Spark操做Hbase和Phoenix)
声明:本号全部文章除特殊注明,都为原创,公众号读者拥有优先阅读权,未经做者本人容许不得转载,不然追究侵权责任。
关注个人公众号,后台回复【JAVAPDF】获取200页面试题!
5万人关注的大数据成神之路,不来了解一下吗?
5万人关注的大数据成神之路,真的不来了解一下吗?
5万人关注的大数据成神之路,肯定真的不来了解一下吗?
