《技术HardCore》栏目由数数科技的技术老炮(儿)们联合「开发」。
在这里,实践与真知齐飞,技术与业务共舞~你可以通过用代码思维敲出来的硬核文字,轻松 get:
· 千亿级多源异构数据怎样做到快速即席查询?
· 怎样用一个平台服务实时、即席、离线数据应用?
……等诸多专业难题。
让我们一起来畅想你的游戏数据平台明(儿)个要做点(儿)啥~
温馨提示:
本篇阅读时长:6 min
适宜阅读人群:游戏公司 CTO、数据中台负责人、数据研发工程师
硬核指数:✭✭✭✩✩
对于游戏公司来说,如果把提升营收作为赛道终点,那么在游戏开发到上线、稳定运营等各个环节,都可以算作弯道超车的机遇点。成熟企业更是凭借过往的积累,在方方面面力争上游。然而,事实却证明了,哪怕投入十几亿,也不一定就能跑出奇迹。
虽然“用户在哪里,起跑线就在哪里”始终清晰,但是如果从数据的角度来说,你所踏上的“起跑线”是远途还是捷径,则是数据采集质量所决定的。
被低估的数据采集质量问题
作为数据体系的根基,数据采集是一个看似简单、实则复杂的环节。
许多游戏企业因低估其复杂性,乃至于忽视这一环节,为后续的数据分析埋下雷点,等出现问题,又要花费大量时间、人力进行数据治理,以至于还未进入赛道,就已经输在了起跑线上。
痛点 1:客户端 SDK 埋点
一般,本着玩家数据从哪里产生,就从哪里采集数据的考虑,大多数游戏企业往往会优先选择在客户端 SDK 进行埋点。但是因为客户端埋点是在原有代码上进行二次开发,涉及策划、分析师、开发多方协同,导致埋点设计与实施之间存在一定协同壁垒。
而在前期如果没有设计好埋点方案,想要再补,又需要跟随游戏包体更新才能更新;同时,由于 SDK 自身的代码原因,游戏性能问题、数据丢失问题、应用市场打回等问题屡见不鲜…这些问题不仅浪费大量时间,也为开发同学带来了繁重的工作量。
其次,由于游戏涉及的平台和引擎众多,如 iOS、Android、Unity、Unreal 等,而引擎和客户端本身也在不断更新迭代,因此,客户端 SDK 难以持续更新以跟上它们的版本,并确保其更新不影响游戏应用的稳定性。
痛点 2:服务端 SDK 埋点
作为另一种数据埋点补充,服务端 SDK 也是一种常用的数据采集方式。
但是,仅依赖服务端日志,并不能采集只在客户端发生的玩家行为,比如进入活动页面,存在一定数据缺口,会极大限制用户行为分析的深度,影响业务同学对玩家需求及其游戏体验的把握。
同时,对于及时性较高的数据分析需求,还需要通过客户端 SDK 实现,跨端采集的埋点设计复杂度成本增加,对于埋点设计与埋点实施都提出了更高的要求。
痛点 3:Restful API 数据上报
应对前两种情况,虽然很多游戏企业的数据中台会提供 Restful API 的方式进行数据上报,将数据上报的主动权下放给业务,但是这种方式看似简单、灵活,却极易造成数据上报丢失、数据埋点混乱,并且事后很难排查定位。
此外,不同的业务团队进行埋点,难以进行统一规范,也会造成数据埋点混乱,不利于整个企业的数据体系建设。
痛点 4:第三方数据获取
当下,游戏企业都更加重视玩家全生命周期管理,因此,我们还面对着第三方数据采集的需求。
但第三方数据往往没有标准接口,所有接口都需要定制化开发,导致开发工作量很大;此外,由于三方平台的数据各异,也给数据清洗带来了很大工作量。
在遇到上述问题时,中台团队不得不投入大量的精力和资源,可这种投入却难以直接转化为业务需求的价值,使得许多游戏企业的数据中台建设陷入两难境地。
用数据引擎解决数据采集难题
在游戏数据的领域里,任何结论都出自分析,任何分析都来自对游戏数据的严谨解构。
所有数据都是埋点后的上报和反馈,解决客户端 SDK 和服务器 SDK 埋点两种埋点的业务痛点,将“埋点”这件“小事”做好,是重中之重,更有着“大大的学问”:
为了提升数据源端的质量,我们需要把数据采集的能力进行收口,封装为标准化的采集工具,并提供给业务团队使用,一方面是降低业务数据埋点的接入成本,提供统一的接口语义;另一方面,也是通过采集工具实现异常重试、exactly-once、日志定位等核心能力。
在有限资源的情况下,对于中台团队而言,我们更加需要着眼于业务,去解决一系列复杂业务场景问题。而在提升数据采集质量等夯实自有数据平台建设方面,则可以借助数数科技的游戏大数据引擎 ThinkingEngine(以下简称“TE 系统”),以较小的投入,快速改变现状。
我们提供了完善的客户端 SDK 和服务端 SDK,几乎覆盖游戏行业所有的平台和技术栈,各接入方式在过往服务数千款游戏的过程中,久经考验,可靠性值得信赖。同时,还提供了数据导入工具,可以接入游戏企业的历史数据,帮助游戏企业快速构建专属且完备的数据采集体系,从源头解决数据质量问题。
通过覆盖全在线游戏品类的 1000+ 游戏埋点文档和实战案例,以及详实丰富的数据课程,TE 系统为游戏企业提供了满足各品类需求、上手即用的数据规范,帮助企业建立科学完备、可扩展性强的数据体系。
在此之上,我们还打通了游戏上下游的三方数据生态,支持接入国内外主流归因平台(如 AppsFlyer、热云)与媒体渠道(如 巨量、Google、Meta等)的超过 50 个数据接口,将用户的来源及变现数据与应用内行为深度绑定,打通用户全生命周期数据。
对于接入了 TE 系统的游戏公司而言,选择接入我们的客户端 SDK,再采用我们提供的 LogBus 工具进行服务端日志采集,就可以在确保 SDK 稳定性的同时,打通玩家客户端和服务端的统一埋点。
通过 TE 客户端 SDK 自动采集应用安装、打开、关闭等事件行为,自动采集设备机型、CPU、内存、FPS 帧数等埋点属性,极大扩展玩家行为分析的维度。
同时,基于 LogBus 采集工具,流式地处理服务端日志流,将数据的时效性提升到了 1 分钟以内,既保证了数据的准确性和稳定性,又提高了数据分析的效率和时效性。对于中台部门而言,也无需再在数据采集质量问题上多做投入。
同为游戏数据中台建设者,在帮助游戏企业夯实自有数据中台建设的道路上,我们不断寻求最佳实践,以此为更多中台的朋友提供支持,让大家可以更聚焦于业务问题,探索独属于自己企业的成功道路。