基于阿里云HBase产品的游戏大数据实践

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 本文介绍了厦门点触科技股份有限公司使用阿里云HBase建立游戏大数据平台的实践。

大数据架构

我们团队大数据方案主要参考阿里巴巴大数据方案并结合自身特点量身定做,像阿里巴巴大数据体系架构一样也分四层,只是内容有所简化和差异。其实多数大数据架构方案都略同,只是在细节上有所差异。
_

  1. 数据采集层:数据来源有两种——客户端埋点日志和服务端请求处理日志。最终这些日志都是以日志聚合的形式,经过消息队列中间件缓存,最终汇总到数据湖。
  2. 数据计算层:市面上有多种离线和实时计算引擎,从技术生态成熟度来说Spark相对完善,我们选择了Spark生态技术栈。数据加工链路与阿里巴巴数据计算层类似分为操作数据层(Operational Data Store, ODS)、明细数据层(Data Warehouse Detail, DWD)、汇总数据层(Data Warehouse Summary, DWS)和应用数据层(Application Data Store, ADS),元数据管理和数据质量处理还有待完善。
  3. 数据服务层:数据服务层对底层数据存储透明,面向数据应用层开放海量数据,并对外提供统一的数据服务平台,通过接口提供数据查询服务和实时数据推送服务。
  4. 数据应用层:以应用的形式提供数据可视化,支持各种应用场景的数据分析,为运营、发行、策划提供宏观决策支撑。

基于HBase大数据解决方案

核心需求

  1. 支持高性能离线计算和实时计算;
  2. 管理数据作业调度;
  3. 支持弹性伸缩计算(节省成本);
  4. 支持冷热存储(节省成本);
  5. 满足数据湖场景,支持高吞吐海量存储结构化和非结构化数据;
  6. 支持即席查询。

技术选型

2018年10月阿里云正在研发HBase产品,我们团队当时正在准备做大数据方案,阿里云HBase技术团队找我们探讨解决方案合作,经过讨论和分析我们认为HBase产品基本能满足游戏大数据业务。HBase产品具有以下优势:托管基础设施运维;将Hadoop核心功能精简为Spark和HBase;使计算与存储分离;高吞吐、高性能、高容量。

HBase产品演化

2018年10月,HBase产品刚上线时主要提供HBase、Phoenix和Spark等核心功能,我们团队向阿里云HBase团队反馈了一些业务场景的需求,随后HBase产品不断新增辅助功能:完善作业提交服务LivyServer,数据工作台支持可视化工作流编排,基于数据湖非结构化数据存储分析的需求提供访问HDFS,提供Zeppelin交互式查询便于开发调试。至2019年4月,HBase产品已经趋于完善,只有弹性伸缩计算这个需求还没有支持,而此时我们团队的大数据方案也基本伴随HBase产品的成熟逐渐落地。

日志聚合

日志采集工具

日志聚合其实是在微服务体系下衍生的产物,也是大数据处理的第一个环节。我们选用Flume和Kafka作为日志采集工具建立日志数据流,虽然这是个经典方案但没看到多少资料解释为什么要这样做,这里根据我们的业务场景补充说明,日志传输需要解决几个问题:解决生产者和消费者速率不匹配的问题,满足高可用、高吞吐、低延时,在数据仓库维护不可用时能缓存数据,支持在线水平扩展和维护,满足多样化数据过滤转换需求和数据扇入扇出。在各种日志收集工具中Flume的灵活性较强,可以满足各种场景的需求,而Kafka具有高可用、高吞吐、低延时的特性,这两种产品组合基本满足了大部分日志传输需求。

日志数据流

_

我们将游戏日志分为核心日志和非核心日志分开处理,核心日志用于计算核心业务指标,非核心日志用于自定义数据分析,分开处理是为了避免系统互相影响。核心日志是结构化数据,因此我们规范了核心日志生产者数据接口,核心日志投递主要通过Phoenix写入HBase,需要实时计算的日志则通过Spark Streaming处理后再写入HBase。非核心日志提供灵活的自定义日志方式,因此数据处理量要比核心日志大的多,为减轻服务端压力我们采用推拉结合的方式,先将日志以文件形式传到NAS,再由Flume从NAS中拉文件再投递到HDFS,如果需要实时计算则传到Kafka经过Spark Streaming再投递到HBase,其中还有部分日志用于追踪系统异常则需要传到Elasticsearch,通过Kibana查询日志。

数据湖

数据湖是一种大型集中式存储库和处理引擎,允许以任意规模存储所有结构化和非结构化数据,拥有强大的信息处理能力和处理几乎无限的并发任务或工作的能力,运行不同类型的分析——从控制面板和可视化到大数据处理、实时分析和机器学习,以指导业务做出更好的决策。与传统数据仓库的重要区别是数据湖可以处理非结构化数据,为后期的机器学习和预测分析提供帮助,而且日志可以更灵活的形式存储,提高数据创新使用效率。基于这种需求,我们需要使用HDFS存储非结构化数据,HBase正好产品规划也包含了这块功能,存储集群HDFS和HBase结合计算集群Spark基本满足了数据湖的需求。

参考资料

  • 《大数据之路 阿里巴巴大数据实践》,阿里巴巴数据技术及产品部著,电子工业出版社
相关实践学习
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
人工智能 运维 Cloud Native
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
149 2
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
717 2
|
1月前
|
SQL 关系型数据库 MySQL
Sqoop【付诸实践 01】Sqoop1最新版 MySQL与HDFS\Hive\HBase 核心导入导出案例分享+多个WRAN及Exception问题处理(一篇即可学会在日常工作中使用Sqoop)
【2月更文挑战第9天】Sqoop【付诸实践 01】Sqoop1最新版 MySQL与HDFS\Hive\HBase 核心导入导出案例分享+多个WRAN及Exception问题处理(一篇即可学会在日常工作中使用Sqoop)
95 7
|
2月前
|
人工智能 数据管理 大数据
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
33 2
|
23天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
205 1
|
1月前
|
人工智能 DataWorks 数据可视化
心动基于阿里云DataWorks构建游戏行业通用大数据模型
心动游戏在阿里云上构建云原生大数据平台,基于DataWorks构建行业通用大数据模型,如玩家、产品、SDK、事件、发行等,满足各种不同的分析型应用的要求,如AI场景、风控场景、数据分析场景等。
334 1
|
2月前
|
人工智能 运维 数据管理
阿里云数据库走向Serverless与AI驱动的一站式数据平台
阿里云数据库走向Serverless与AI驱动的一站式数据平台
271 2
|
2月前
|
人工智能 Cloud Native 数据管理
阿里云数据库:向Serverless与AI驱动的一站式数据平台迈进
众所周知,在人工智能迅猛发展的现在,在AI驱动下的数据平台,正在向一站式、智能化的方向演进,还有就是云原生+Serverless的不断深入,一站式数据平台将让数据管理开发像“搭积木”一样简单实用,以性价比更高、体验更优的云数据库服务,助推用户业务提效增速。据悉阿里云数据库正在朝着Serverless与AI驱动的方向发展,构建一站式、智能化的数据平台,这一发展趋势将为用户提供更简单、实用的数据管理开发体验,以提高业务效率和降低成本。那么本文就来分享一下如何看待阿里云数据库的这一转变,并展望云原生和Serverless对数据管理与开发的未来带来的更多可能性。
67 1
阿里云数据库:向Serverless与AI驱动的一站式数据平台迈进
|
2月前
|
人工智能 分布式计算 大数据
重磅!阿里云在海外市场推出系列AI大数据产品
重磅!阿里云在海外市场推出系列AI大数据产品
96 1