- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
基于HBase和Spark构建企业级数据处理平台(沐远)
展开查看详情
1 . 基于HBase和Spark构建企业级 数据处理平台 阿里云数据库 李伟(沐远) 2019.03 中国 HBase 技术社区网站:http://hbase.group
2 . 目录 / Contents 01 当前面临的挑战 02 平台架构及案例 03 原理及最佳实践 04 HBase X-Pack服务 中国 HBase 技术社区网站:http://hbase.group
3 . 01 当前面临的挑战 中国 HBase 技术社区网站:http://hbase.group
4 . 1 众多场景需求 金融风控 个性化推荐 社交Feeds 时空时序 大数据 • 用户画像库 • 监控数据 • 用户行为分析 • 维表和结果表 • 爬虫抓取信息 • 海量帖子、文章 • 轨迹、设备数据 • 用户画像 • 离线分析 • 反欺诈系统 • 聊天、评论 • 地理信息 • 推荐引擎 • 海量实时数据存储 • 订单数据 • 海量实时数据处理 • 区域分布统计 • 海量实时数据处理 • 区域查询 中国 HBase 技术社区网站:http://hbase.group
5 . 2 HBase的新挑战 Apache HBase(在线查询) 新挑战 • 松散表结构(Schema free) • 流式及批量入库 • 随机查询、范围查询; • 复杂分析 • 原生海量数据分布式存储; • 机器学习、图计算 • 高吞吐、低延迟; • 生态及联邦分析 • 在线分布式数据库; • 多版本、增量导入、多维删除 中国 HBase 技术社区网站:http://hbase.group
6 . 3 Why Spark l 快:通过query的执行优化、Cache等技术,Spark能够对任意数据量的数据进行快速分析。逻辑回归场景比Hadoop快100倍; l 一站式:Spark同时支持复杂SQL分析、流式处理、机器学习、图计算等模型,且一个应用中可组合上面多个模型解决场景问题; l 开发者友好:同时友好支持SQL、Python、Scala、Java、R多种开发者语言; l 优秀的生态:支持与Ka=a、HBase、Cassandra、MongoDB、Redis、MYSQL、SQL Server等配合使用。 中国 HBase 技术社区网站:http://hbase.group
7 . 4 Why Spark 丰富的开发者基础 eBay 将60PB的MPP DBMS迁移至Spark的经验: hFp://www.10Kao.com/html/198/201902/2653123391/1.html SQL Server 2019 preview combines SQL Server and Apache Spark to create a unified data plaUorm: hFps://cloudblogs.microsoV.com/sqlserver/2018/09/24/sql-server-2019-preview-combines-sql-server-and-apache-spark-to-create-a- unified-data-plaUorm/ 中国 HBase 技术社区网站:http://hbase.group
8 . 02 平台架构及案例 中国 HBase 技术社区网站:http://hbase.group
9 . 1 一站式数据处理平台架构 HBase+Spark可解 决大数据90%场景 • 数据入库:借助于Spark Streaming,能够做流式ETL以及增量入库到HBase/Phoenix。 • 在线查询:HBase/Phoenix能够对外提供高并发的在线查询 • 离线分析及算法:如果HBase/Phoenix的数据需要做复杂分析及算法分析,可以使用Spark的SQL、机器学习、图计算等 中国 HBase 技术社区网站:http://hbase.group
10 . 2 典型业务场景:爬虫+搜索引擎 价值: • 性能:流吞吐 20万条/秒 • 查询能力:HBase自动同步到solr对外提供全文检索的查询 • 一站式解决方案:Spark服务原生支持通过SQL读取HBase 数据能力进行ETL,Spark + HBase +Solr一站式数据处理平台 中国 HBase 技术社区网站:http://hbase.group
11 . 3 典型业务场景:大数据风控系统 价值: • Spark同时支持事中及事后风控 • Spark友好对接HBase、RDS、MongoDB多种在线库 中国 HBase 技术社区网站:http://hbase.group
12 . 4 典型业务场景:构建数据仓库(推荐、风控) 价值: • 毫秒级识别拦截代充订单,并发十万量级 • Spark优秀的计算能力:Spark基于列式存储Parquet的分 析在数据量大的情况下比Greenplum集群有10倍的性能 提升 • 一站式解决方案:Spark服务原生支持通过SQL读取 HBase SQL(Phoenix)数据能力 • 聚焦业务:全托管的Spark服务保证了作业运行的稳定 性,释放运维人力,同时数据工作台降低了spark作业 管理成本 中国 HBase 技术社区网站:http://hbase.group
13 . 03 原理及最佳实践 中国 HBase 技术社区网站:http://hbase.group
14 . 1 Spark API发展 RDD > DataFrames > DataSets 中国 HBase 技术社区网站:http://hbase.group
15 . 2 Spark API发展 DataFrames Optimization Datasets Optimization 中国 HBase 技术社区网站:http://hbase.group
16 . 3 Spark API发展 中国 HBase 技术社区网站:http://hbase.group
17 . 4 Spark流式处理(DStream) Spark Streaming(Dstream) Micro-Batch 中国 HBase 技术社区网站:http://hbase.group
18 . 5 Spark流式处理入库HBase(Dstream优化策略) 作业堆积、延迟高、并发不够? • 每批次的并发:调大kafka的订阅的分区、 spark.streaming.blockInterval • 代码热点优化:查看堆栈、broadcast、代码优化 Gson,FastJson,Jackson,Json-lib 中国 HBase 技术社区网站:http://hbase.group
19 . 6 Spark流式处理入库HBase(Dstream优化策略) • BroadCast处理时间消耗大的对象 中国 HBase 技术社区网站:http://hbase.group
20 . 7 Spark流式处理入库HBase(Structured Streaming) payments \ .filter("isPaymentFlagged(paymentId)") \ .writeStream \ {...} .trigger(processingTime = "0 seconds") \ .start() Micro-Batch Processing:100ms延迟 ConKnuous Processing:1ms延迟 hFps://databricks.com/blog/2018/03/20/low-latency-conKnuous-processing-mode-in- structured-streaming-in-apache-spark-2-3-0.html 中国 HBase 技术社区网站:http://hbase.group
21 . 8 Spark复杂分析HBase(执行架构图) 中国 HBase 技术社区网站:http://hbase.group
22 . 9 Spark复杂分析HBase Spark HBase Connector:分区裁剪、列裁剪、谓词下推 中国 HBase 技术社区网站:http://hbase.group
23 . 0 Spark复杂分析样例及优化 select * from spark_hbase_test6 where col0>'row1'; 中国 HBase 技术社区网站:http://hbase.group
24 . 0 代码及文档 hFps://github.com/aliyun/aliyun-apsaradb-hbase-demo hFps://help.aliyun.com/document_detail/93899.html 中国 HBase 技术社区网站:http://hbase.group
25 . 04 HBase X-Pack服务 中国 HBase 技术社区网站:http://hbase.group
26 . 1 Spark服务 特性 开源Spark Spark服务 页面一键关联阿里云HBase、MongoDB、RDS等数据库实例 X √ 产品能力(多数据 集群内置HBase、HBase SQL(Phoenix)、MongoDB等SQL连接器。支持多数据源联邦分析 X √ 源) 支持一条SQL将HBase、HBase SQL(Phoenix)、MongoDB等数据同步到parquet列存归档 X √ 资源管理功能支持通过页面管理jar包等资源文件 X √ 作业管理功能支持提交作业、实时更新状态、展示Spark UI等 X √ 产品能力(数据工 工作流管理功能支持页面拖拽生成工作流构建作业依赖、以及周期调度 X √ 作台) 报警功能支持作业、工作流运行失败的报警 X √ 支持交互式查询 X √ 报警功能支持作业、工作流运行失败的报警 X √ 服务组件的高可用 X √ 可靠性 服务提供SLA保障 X √ 自动部署、免运维 X √ 可维护性 支持小版本升级 X √ 集群状态、作业状态监控报警、流处理作业支持延迟吞吐的监控报警 X √ 内置SQL连接器做了列裁剪、分区裁剪、谓词下推等优化 X √ 性能及成本 数据支持存储到冷存储oss上降低成本 X √ 支持通过command line 管理jar等资源文件 X √ 生态集成 中国 HBase 技术社区网站:http://hbase.group 提供ResUul API管理作业 X √
27 . 2 Spark服务(多数据源关联) 多数据源关联:hbase、phoenix、mongodb、rds 中国 HBase 技术社区网站:http://hbase.group
28 . 3 Spark服务(数据工作台) 数据工作台 中国 HBase 技术社区网站:http://hbase.group
29 . 3 Spark服务(数据工作台) 作业管理、工作流 中国 HBase 技术社区网站:http://hbase.group