在游戏数据服务的生命周期中,数据接入作为数据服务体系idata中的基础服务,为数据处理分析、数据挖掘等上层应用提供数据支撑。数据接入是数据服务的起点,向用户提供了游戏日志统一采集的平台(Tlog)及运营数据管理平台(ODM)、元数据管理及数据质量监控 (iMeta)、数据传输(DT/TDBank)、运维数据提取及运维基础等诸多数据服务。
iData数据服务体系中数据基础服务的位置如下:
提供的服务内容:
Ø 日志接入:为各业务提供统一游戏日志接入、日志入库的服务;
Ø 数据传输:为各业务提供数据入库数据仓库的全流程接入服务,为后续数据使用提供统一数据源;
Ø 数据监控:为各业务提供数据流转全方位、实时的数据监控服务;
Ø 数据提取:为各业务提供个性化、实时性高的数据提取服务;
Ø 基础运维:为iData数据服务体系提供基础运维服务;
Ø 流程保障:指对以上各方面活动的执行进行流程方面的引导与监督,保证活动有序、有效的执行。
下面详细介绍iData基础服务层组件及工作流程,让大家了解到游戏生命周期中,数据接入所扮演的角色。
一、 游戏日志统一采集的平台(Tlog)
Tlog是腾讯游戏日志统一采集的平台,作为游戏流水日志入数据仓库的数据来源,规范了游戏日志统一接入、简化游戏日志的运营。
1、 日志处理系统
Ø GameSvr通过UDP方式向Tlogd写入日志;
Ø Tlog把日志内容写入文本文件;
Ø LogTool从文本文件中读取信息,经过协议转换,存储到LogDB;
2、 Tlog接入时序图
1) 接入准备:主要服务游戏研发,指导api的接入事宜;
2) 接入前期:运维侧按tlog标准准备好硬件资源和软件环境;
3) 申请接入:申请部署环境和接入到tlog管理平台ODM系统;
4) 正式接入:受理、完成接入;
5) 检查验收:验证接入情况;
6) 运营:保证游戏的正运营。
3、 日志标准化接入
1) 接入方式:使用tlog api或者UDP方式;
2) 接入协议:用xml协议描述日志结构;
3) 自主检查:通过checklog自动化检查工具,游戏开发者可自行检查日志内容与xml文件正确性;
4) 接入周期:新业务接入在1小时内搞定,新开大区5分钟之内可以搞定;
5) 日志内容:按照《腾讯互娱游戏接入日志内容规范》输出游戏日志,比如,角色创建日志
4、 运营数据管理平台(ODM)
ODM作为tlog接入、运营、管理的统一平台,集成了业务管理、tlogd_server服务器集群管理、告警监控、变更管理、自助运营工具等一系列功能,极大方便了tlog的接入和运营。
二、 数据质量监控服务(iMeta)
元数据管理主要提供游戏数据产生到落地、以及TDW分布式集中的流转过程中的数据质量指标监控和数据地图服务。
1、 数据监控了什么?
数据流转质量指标监控,包括数据流转量、时延、完整度、正确度等指标,见图:
目前监控业务覆盖度5,6星级业务已经覆盖率达到100%,同时针对业务的数据进行分级监控,重点数据重点监控。同时,在针对监控告警的进行告警收敛的优化,主要从事件相关性,时间相关性,流程相关性,数据运营事件回环反馈角度来进行告警收敛。
现在监控的腾讯游戏数据入库数据仓库的完整度和正确度阀值是0.999;0.999三个9的标准。(游戏日志本身产生的问题不记)
我们监控的纬度如下:
Ø 数据完整度---数据条数在传输过程中是否有异常;
Ø 数据正确性---数据内容是否异常:行列移位,中文编码等;
Ø 数据传输时延---目前要保持在从数据产生到数据正式入库到数据仓库保证在<2小时;
Ø 数据异常---数据产生,传输,入库等各个环节的机器,进程异常;
Ø 数据变更---数据地图,数据字典的变更是实现全流程的自动化实施以及异常监控;
2、带来的效果和收益
Ø 减少业务数据质量问题所带来的突发;
Ø 增加业务数据的可靠度和可用度;
Ø 减少运维配置变更沟通时长,提升实施配置变更自动化准确程度(TDW数据入库);
Ø 更好的为周边系统提供系统服务支持,例:经分、业务受理等;
3、接入流程介绍
3.1 数据监控接入概述
数据监控外部依赖的系统是CC互娱配置系统和ODM运营数据管理平台系统。这里,简述下系统关系图以便理解快速接入。
由以上的元数据管理系统关系图可以看出,配置变更管理在整个系统中的重要作用,它是整个系统能够配置化、自动化运营的关键作用。所以,所需要接入的业务必须要在CC和ODM系统上有标准化的配置。
2.2 数据监控接入流程
下面给出业务接入imeta元数据管理系统接入的正常时序流程:
三、 数据传输服务
数据传输(DT/TDBank) 是将数据接入到数据仓库TDW的快捷、方便的工具,具有主动拉取数据、自动分拣入库、实时监控接入状态等特点,解决了海量的数据快速写入数据仓库的问题。同时具备如下特点:
Ø 配置简单
只需要三项简单的配置,即可完成数据仓库的接入;
Ø 自动入库
会根据配置,自动拉取数据并进行分拣入库,无需人工干预;
Ø 实时监控
全面实时地监控配置任务状态,及时地了解数据接入情况;
Ø 功能强大
可支持各种类型的数据源接入,并提供丰富的管理功能。支持批量导入导出操作,减轻重复工作量。
Ø 历史数据自定义补录
DT可支持对历史数据单表级别任意时间段 自定义进行数据补录。
在数据采集支持方面,数据传输已经覆盖了各个IEG各游戏业务各种接入方式,主要包括:
1)文件读取(Tail方式);
2)消息接入(TCP/UDP方式);
3)MySQL binlog实时同步(测试中);
4)HTTP 请求消息;
5)Syslog消息。
数据传输(DT/TDBank) 旨在统一数据接入入口,提供多样的数据接入方式,以及高效实时的分布式数据分发,实现完整的数据生命周期管理和数据服务。总之,只要告诉数据传输 数据在哪里,数据是什么,数据要怎么用,数据传输 就会自动完成一整套的数据采集分拣和处理流程。
1、 数据接入流程
2、 监控指标
四、 运维数据提取服务
运维数据提取主要是根据业务项目组的要求,高效提取相应的数据包,数据源包括tlog、dr等。运维个性化数据提取作为业务idea自助提取的一种补充,提供了个性化、实时性更强以及游戏状态数据的提取。目前,idea自助提取平台已接入107款业务,包括:地下城与勇士、穿越火线、洛克王国、英雄联盟、御龙在天、QQ飞车、七雄争霸、QQ炫舞、逆战、qtalk、QQgame、AVA、QQ炫舞2、H2、QQ华夏、NBA2k、斗战神、QQ宠物、Q宠大乐斗、寻仙、QQ三国、QQ音速、轩辕传奇、农牧场、woz、warface、部落守卫战 等。 数据管理组已经完成接入运管中心,共计101款业务的日常数据需求统计。
1、 数据提取流程
1) 需求系统运维提取
1.1、项目相关同事在iflow需求管理系统提交数据提取需求,同时估计是否与运维做前期沟通;
1.2、数据中心同事进行需求认领,并与需求人沟通需求细节;
1.3、运维人员估计需求是否可以通过idea自助提取,并同步信息给业务侧,以便下次业务侧idea自助提取;
1.4、当idea不能满足时,运统人员登录idab运维数据提取平台做数据拉取、分析操作;
1.5、将分析结果邮件或rtx交付给业务需求提交人,流程结束。
2) idea自助提取任务
业务侧可登录自助提取平台提取数据,如涉及复杂需求可走“需求系统运维提取”流程。
3) 外网活动数据提取流程
3.1、项目相关同事在流程系统提交数据统计需求;
3.2、由数据中心安排同事进行数据提取,并反馈给需求人;
3.3、需求人联合运维和数据中心进行公式核对,并对数据进行抽查;
3.4、得到运维确认后,需求人使用数据,在对外后密切关注反馈情况。
五、 运维基础服务
运维基础服务覆盖了数据中心整个运维体系,涉及资源、运营质量、效率与成本等,具体包括平台高可用、异地容灾、监控、资源统一申请与管理等,规范业务上线、运营、下线流程,最终实现DO分离。基础运维体系图:
1、经分运管设备移交项目- 400多台运管经分设备移交至数据中心运维运营,实现DO分离、基础运维覆盖;
2、提高平台高可用性- 完成中心重点平台去单点,对多台服务器的功能关键点部署负载均衡调度。
3、提升数据容灾能力 - 对数据中心重点数据存储平台(经分统计数据、DR文件等)实现异地备份;
4、监控告警建设 - 数据中心总重点平台服务、进程监控覆盖100%,数据中心设备基础监控覆盖100%。
5、运维日常操作规范建设 - 运维常用代码接入VSS平台管理,提高代码、脚本复用,合理安排人力,提高人力资源利用最大化;
6、设备虚拟化建设 - 通过将资源利用率低、突发性高业务设备迁移至虚拟化环境,让资源利用率最大化,降低运营成本。
7、设备“铁将军”- 通过接入“铁将军”项目,实现架构平台部服务器帐号集中式管理、实名登陆,权限最小化分配,超级权限严格控制,操作全审计等;
8、开发测试环境 - 通过剥离平台开发、测试、生产环境,规范业务发布流程标准,引用SVN版本控制手段,可提升开发及服务质量。
六、 结束语
作为idata基础服务组件,为上游应用提供稳定、高质量的数据来源服务,最终为互娱游戏业务提供精细化服务打下基础,为了让大家更加了解基础服务组件的各环节及平台,后续将以系列文章逐一进行介绍,敬请期待。