`
icebluenet
  • 浏览: 2568 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

搭建网络游戏企业数据平台(三)

 
阅读更多

本章主要说下搭建网络游戏企业数据平台所存在的技术难点。总的来说,网络游戏的数据相较于银行/电信的数据,主要难点在于采集困难,变数大的问题。

数据采集难点

数据分散

网络游戏存在一个特定,存在大量的区组,各个区组可能部署在不同的机房;同时,现代网游都是分布式架构,即使同一个区组,也许数据也分布在不同的服务器中;更有一些特殊的内测服之类,也许架构和其他区组还不太一样。这种情况下,需要针对不同的数据采用不同的策略进行数据采集,采集系统及其复杂。

数据源模式复杂

由于网游开发不可能按照数据采集需求进行,所以采集程序必须适应游戏服务器数据访问模式。有些数据也许在数据库中,有些数据采用文本存放,有些数据可能就在内存中放着;同时,在访问游戏服务器过程中,有些可以直连,有些需要用代理,有些又是SSH+SOCKET5模式。一个好的采集程序能够通过简单的配置满足这些不同的数据源模式。

网络受限

网络游戏服务器都是7×24小时运转,保证游戏顺畅是游戏运营公司第一要务。但是在数据采集过程中,必然需要对游戏服务器带宽资源产生一些影响,没有任何一家公司允许牺牲玩家体验来满足数据采集的需求。同时,由于游戏数据量一般都十分巨大,在到达采集服务器时,也对采集服务器的带宽有很大的压力。对于那些采集服务器架在电信机房,可是游戏数据源在网通机房的情况更是存在一些麻烦。因此,如何想尽办法降低网络传递消耗也是一个重点问题。

资源受限

和上面谈到一样,在采集数据过程中,必然会对游戏服务器的CPU/IO等资源产生一些影响,为了不影响游戏玩家体验,必须要把采集过程中所产生的资源消耗降到最低。对于某些游戏服务器,数据库设计过程中不尽合理,必须要想办法避免表死锁问题。因此,必须合理规划数据采集时段/采集模式/采集语句,避免影响游戏服务器正常运转。

数据稳定性差

在处理数据的过程中,多次碰到这样的情景:游戏服务器故障,数据回档,今天的数据丢了;网络传输过程中,莫名其妙的原因采集回来的数据和游戏服务器不一致。因此,对某些数据采集策略必须是实时采集,某些可以是T+1;同时,对任意采集回的数据必须进行多重校验确保数据准确。

数据存储难点

数据量大

网络游戏数据由数十万玩家甚至数百万玩家产生,且不间断的产出数据。因此网络游戏数据平台每日所面对都是数十或者数百G的数据量。由于数据中心的特性,数据需要进行长期的存储。假如每日处理50G的数据,每个月就需要存储1.5TB;每年就是18TB数据,这对于任何一个数据处理平台都不是一件简单的事情。

采集过程复杂

采集程序所返回的数据是多种多样,一般情况下会按照不同的区组分别存储。数据存储时需要考虑不同的数据模式,并且能够很好对各种数据模式的后续归一化处理提供支持。

需求复杂

在上一章,提到数据平台存在查询/统计/分析/挖掘/审计/预警六大职能,每个职能对数据需求是不一致的。例如查询可能需要精确定位到明细数据,但是对查询效率要求不高;统计也许只需要数据某些范围的合计数,但是作为报表的数据源,查询效率必须很高。一个好的数据平台能够采取合理的存储层次满足各式各样的数据需求。

数据处理难点

数据量大

如上所述,网游数据处理面向都是TB级的数据,如果保证数据处理效率是重点需要考虑的问题。一般的程序也许面对的是CPU/内存的压力;而在大数据处理过程中,面临最大压力在IO/网络。如何在有限的硬件资源下,将硬件资源利用率最大化;满足海量数据处理需求是数据平台在设计过程中必须面对的问题。当然,如果公司肯投入当我没说,有钱总归是好办事的。

存在大量复杂计算

网络游戏一些数据指标都是极其难算的,比如月流失率,要算上个月登录的,这个月没登录的帐号数。在sql上,简单的not in就可以了;但是当你面对的是数十万帐号,几千万或者上亿的登录记录,not in跑起来估计很难,至少我在我们服务器上直接跑没跑成功过。还有某些更变态的指标,需要在几十亿的数据中逐条比对。因此在数据平台设计过程中,根据指标特定,预留一定的空间满足这些复杂计算的需求。

总而言之,搭建一个能够处理网游数据的数据平台在技术上不是一件很容易的事情,需要在设计之初预留一定的处理冗余,并且在实施过程中不断的进行调整,满

<!--EndFragment-->
分享到:
评论

相关推荐

    基于思科的校园网搭建及网络协议分析 计算机网络课程设计

    6. **UDP协议**:无连接的协议,提供低延迟的数据传输,适用于实时应用如视频会议和在线游戏。 7. **FTP协议**:文件传输协议,用于在网络上进行文件的上传和下载。 【设计思路和步骤】 1. **拓扑图**:根据校园...

    基于ssm网络游戏公司官方平台.zip

    【SSM网络游戏公司官方平台】是一个综合性的项目,采用了Spring、SpringMVC和MyBatis三个框架的集成,也就是我们常说的SSM架构。这个项目主要用于实现网络游戏公司的官方网站功能,结合了Java后端技术和微信小程序的...

    网络游戏公司官方平台 SSM毕业设计 源码+数据库+论文(JAVA+SpringBoot+Vue.JS).zip

    本篇文章将详细探讨一个网络游戏公司官方平台的开发设计,重点分析其技术架构、功能特点以及如何通过SSM(Spring、SpringMVC、MyBatis)框架组合来实现该平台的开发。 首先,我们来了解一下SSM框架。SSM框架是指...

    XX网络游戏出版申报服务平台项目建议书.pdf

    XX网络游戏出版申报服务平台项目建议书主要探讨了在当前数字化时代背景下,如何构建一个高效、安全、可靠的网络平台,以服务于网络游戏出版的申报流程。以下是基于报告内容的关键知识点: 1. **项目概述**: - ...

    springboot+ssm前端电商营销平台类网络游戏交易平台源码+论文+视频.zip

    “类网络游戏交易平台”可能指的是允许用户交易虚拟物品或服务的在线平台,这些平台可能与游戏内的物品、账号或者游戏时间等有关,用户可以在该平台进行买卖。 “源码”意味着提供的是直接用于开发的基础代码,...

    使用外部的抽奖游戏网站的开奖接口进行开奖,网站使用php搭建,游戏使用java运行.zip

    Java则是一种高级的、面向对象的编程语言,广泛应用于企业级应用开发和游戏开发。Java语言的特性包括跨平台的执行能力、丰富的类库支持以及强大的社区和生态系统。因此,使用Java来运行抽奖游戏能够确保游戏逻辑的...

    j2me 21点游戏网络版

    深入研究这些代码,我们可以了解到如何将J2ME的图形、网络和游戏逻辑结合在一起,以及如何设计一个可扩展的网络游戏架构。 总结,"j2me 21点游戏网络版"项目不仅是一个实际的游戏应用,更是一个学习J2ME网络编程和...

    【h5小游戏管理平台 v0.0.1】方便商家活动操作运作的H5小游戏管理后台系统

    6. 安装与部署:【h5小游戏管理平台 v0.0.1】的安装过程简单明了,提供详细的文档指导,包括服务器配置、数据库连接、环境搭建等步骤,即使是对技术不太熟悉的商家也能顺利完成。 在【压缩包子文件的文件名称列表】...

    ssm029网络游戏公司官方平台设计与实现+jsp.rar

    在讨论ssm029网络游戏公司官方平台设计与实现+jsp项目时,我们首先需要注意的是该项目是一个基于Java技术栈的网络游戏公司官方平台。Java作为后端开发语言,在此项目中可能与SpringBoot框架结合使用,这是一个用于...

    数据中台建设四步方法论:采、存、通、用.pdf

    数据中台的目标是构建企业的核心竞争力,结合网络协同和数据智能,实现企业运营的智能化和高效化。通常,拥有三条或以上产品线的企业更适合搭建数据中台,初创公司由于业务规模较小,初期可能并不需要。然而,随着...

    基于ssm+jsp网络游戏公司官方平台源码数据库.zip

    这个基于SSM+jsp的网络游戏公司官方平台源码数据库项目很可能是针对大学生或研究生的毕业设计任务。学生可能需要实现用户注册、登录、游戏信息展示、论坛讨论等功能,涉及数据库设计、前端交互以及后端业务逻辑的...

    基于ssm+vue+web的网络游戏交易平台信息管理系统.zip

    这是一个基于SSM(Spring、SpringMVC、MyBatis)框架和Vue.js前端技术的网络游戏交易平台信息管理系统。SSM是Java领域中常见的企业级应用开发框架,它将Spring的依赖注入、SpringMVC的控制器层以及MyBatis的持久层...

    java基于ssm+vue网络游戏交易平台信息管理系统源码 带毕业论文

    在当今数字时代,网络游戏交易平台作为游戏玩家进行虚拟物品交易的重要场所,对于确保交易安全、维护市场秩序具有不可替代的作用。而一个基于java和ssm框架结合vue前端技术的信息管理系统,可以极大地提升网络游戏...

    游戏交易平台信息管理系统 毕业设计论文之欧阳科创编.docx

    游戏交易平台信息管理系统的开发旨在创建一个能够帮助网络游戏交易平台高效、准确地收集、整合、处理和记录与游戏交易平台相关的各种信息的系统。由于传统的人工管理方式已经难以应对日益增长的信息量,因此开发一款...

    springboot-netty.zip

    2. **Netty的高效性**:Netty是一个高性能、异步事件驱动的网络应用框架,它提供了对TCP、UDP协议的支持,适合处理大量并发连接,是网络游戏、聊天室等实时通讯场景的理想选择。 3. **整合步骤**:将Netty集成到...

    2024年中国企业出海品牌营销策略分析-月狐数据.pdf

    随着跨境电商进入私域运营、品牌搭建阶段,以及游戏出海模式的成熟,品牌营销和私域运营成为企业持续发展的关键。数字营销市场的快速增长,尤其是达人营销的快速崛起,使得数字营销的市场份额迅速上升。 在品牌营销...

    IOS网络开发高级教程

    此外,还涵盖了使用Bonjour协议进行临时网络的搭建,也就是Ad-Hoc网络,这对于无需固定网络基础设施的场景特别有用。 iOS网络开发高级教程不仅提供理论知识,还结合了实战案例,帮助开发者更好地理解并应用所学知识...

Global site tag (gtag.js) - Google Analytics