原创内容
No.689
杂谈 | 从爆火的黑猴子到SteamCharts背后的统计计算
最近几天,玩不玩游戏的应该都被《黑神话·悟空》刷屏了~
图片由海艺AI绘制
最近几天,玩不玩游戏的应该都被《黑神话·悟空》刷屏了。正式发售不到1小时,即登顶Steam最热玩游戏榜首,首日销售额高达15亿元,同时在线玩家数峰值两千四百万,创造出巨大的奇迹。
周末两天通关了(问就是风灵月影宗速通),作为一个数据分析师,突然对“同时在线玩家数峰值两千四百万”这个数据是怎么来的产生了好奇,内行人应该都知道,这种量级的数据做实时计算还是非常考验数仓的计算性能的。
找到两千四百万这个数字的来源其实很容易,steam官方的网站,steam charts就有这个数据:
(网址:https://steamcharts.com/)
当我们把鼠标悬停在某一个数字上时,会有对应的高亮效果,也就是说,这里的实现的前端视觉效果是类似BI工具的。
并且每个游戏都可以点进去打开详细的数据,可以说是非常经典的BI视觉效果。
通过一些页面上的细节(逻辑就不说了,看图里框出来的几个东西就懂了),基本可以确定,这个报表是一个小时级更新的报表。基本可以认为这个报表背后大概率是有一个小时级运行的ETL任务,每小时执行一次,取整点时间的在线玩家数作为某游戏这一小时的玩家数并做了落库存储,然后这个报表去读取统计好的小时级数据进行前段的视觉展示和交互。
总的来说,这个报表还是有点意思的,活跃玩家的峰值基本都是在晚上10点、11点左右,看来黑猴子的核心玩家群体还是中年人啊。
你永远不能低估中年人的消费能力.jpg,这个时间点简直就是老父亲等老婆孩子都睡着了才开始上号打游戏嘛~
不过作为一个技术博主,这里显然不是聊游戏的,我是来聊技术的。总的来说,这个看板的视觉效果还是很不错的,交互也很丝滑,看到这种好看的看板,当 然要去翻一翻是什么工具做出来的:
好吧,居然是写在前端的,果然好看的报表视觉效果都得直接写死嘛~
这种统计需求场景很难不让人联想到实时统计技术。
毕竟上面的峰值玩家数大概率不是一个真峰值,而是时点数的最大值。在这么大的数据体量下,如何统计真正的峰值还是有点难度的。
在大数据技术的早期阶段,Hadoop并没有提供实时计算解决方案。随后,为了满足实时数据处理的需求,出现了多个实时计算框架,如Storm、Spark Streaming和Flink等。这些框架的出现标志着实时统计分析技术的初步形成。
随着物联网和大数据技术的不断发展,实时计算领域得到了进一步完善。Kafka和Elasticsearch(ES)的兴起使得实时数据处理技术更加成熟。这些技术的发展不仅提高了数据处理的效率,还使得企业能够更好地理解和分析实时数据,从而做出更快的决策。
然而实时统计工具的上手成本普遍来说还是比较高的,衷心希望各位大佬们能够早日搞出小白上手很快的实时统计工具。
二号姬
半路出家自学成才的文科数据人,看过了大厂的风景也做过了小厂的CDO~目前是闲职,写写稿带带学生,欢迎勾搭~
更多干货,尽情关注