悠星网络基于阿里云分析型数据库PostgreSQL版的数据实践

说到“大数据”,当下这个词很火,各行各业涉及到数据的,目前都在提大数据,提数据仓库,数据挖掘或者机器学习,但同时另外一个热门的名词也很火,那就是“云”。越来越多的企业都在搭建属于自己的云平台,也有一些会选择使用技术比较成熟的云商业化产品服务,比如阿里云的分析型数据库产品。本文将结合我们自己企业内部正在使用的阿里云产品分析型数据库PostgreSQL(下文都将称为AnalyticDB PostgreSQL版)来浅谈一下云业务场景下的数据实践。

1.悠星网络介绍

悠星网络科技有限公司成立于2014年,是一家以网络游戏为发展起点,集技术开发、内容研发、全球发行、产业投资、及IP管理为一体的互联网公司。作为目前国内顶尖的二次元研发、发行及投资商,悠星已经在日本及欧美成功发行了《碧蓝航线》,研发了包括《诺诺来自异世界》在内的高质量二次元产品,并且投资了行业顶尖研发商 - 上海鹰角网络科技有限公司(代表作《明日方舟》),即将在明年在日韩欧美发布《明日方舟》。未来悠星将继续深入挖掘二次元市场领域,立志与全世界玩家分享最优秀的二次元产品。

2.悠星BI面临的挑战

悠星发行游戏的总注册用户超过1000万人,业务数据表超过450张,总数据量超过170亿条,总数据量超7TB。作为以精准投放,精细化运营为主要优势的海外游戏发行公司,如何使用宝贵的游戏玩家行为数据成为了投放与发行部门的重中之重。
挑战1:海量数据的存储
在如此海量的数据面前,使用传统的关系型数据库已经捉襟见肘,是选择自建数据库集群还是选择阿里云的成熟产品,已经到了必须做出权衡的时候。
挑战2:海量数据计算的时效性
在海量数据存储的解决的前提下,如何将海量数据盘活,很好的为各个业务部门服务又成为了问题。由于悠星游戏发行主要聚焦于海外,由于时区的限制,从游戏数据完成采集到业务需要查看数据的时间点,只有2-3小时的时间,如何在有限的时间内,完成数据计算以报表的形式展现给业务部门自然又是一个难点。

3.为什么我们会选择阿里云AnalyticDB PostgreSQL版

阿里云AnalyticDB PostgreSQL版基于开源项目Greenplum构建,由阿里云深度扩展,兼容ANSI SQL 2003,兼容PostgreSQL/Oracle数据库生态,支持行存储和列存储模式。既提供高性能离线数据处理,也支持高并发在线分析查询,是各行业有竞争力的PB级实时数据仓库方案。

阿里云的以下特性吸引了我们使用使用:

  1. 支持标准SQL,OLAP窗口函数,存储过程:我司的程序原本大多是针对MySQL开发的,使用AnalyticDB PostgreSQL版几乎可以无缝的迁移过去,迁移成本较低。
  2. MPP多节点全并行计算、高吞吐数据写入及更新、行存储及多种索引,PB级数据秒级响应:基于AnalyticDB PostgreSQL版的架构可以实现多节点并行计算,PB级数据秒级响应,解决了我们海量数据计算时间窗口短的痛点。
  3. 阿里云专业数据团队支持:众所周知阿里集团内大量业务也是依靠本身的大数据团队支持,有这样的专业团队为我们保驾护航,使我们的数据团队能更专注在数据处理更好的为业务部门服务上,大大提高工作效率。

4.悠星BI基于AnalyticDB PostgreSQL版的业务架构演进

1.架构V1.0:拖拉机
最初的架构由于需求紧急,只做了最简单的架构,我为什么称之为拖拉机,因为数据处理过程只有AnalyticDB 数据入库以后,Tableau从AnalyticDB把数据拖拉过来一个过程,而且由于数据量庞大,拉取全表数据时间较长,Tableau的计算能力也有限,整个报表刷新时间非常长,基本上在小时级别。

2.架构V2.0:厢式货车
由于数据量的不断增加,1.0的拖拉机已经完全无法满足我们复杂的报表需求,于是我们增加了Azkaban,利用Azkaban调度ETL脚本每天定时预处理从游戏中获取的数据,但是Tableau还是全量拉取表中数据,对于数据刷新时间的提高并不大。所以我称他为厢式货车,装了满满的数据,但是速度并不快。

3.架构V3.0:和谐号
当友商也开始使用我们的系统以后,数据量开始爆炸性增长,厢式货车再也拉不动货了。于是我们又进入了现有的架构V3.0:和谐号。我们在研究后发现先前并没有太多的使用AnalyticDB PostgreSQL版的计算性能,于是我们决定整理所有的报表需求,利用AnalyticDB的强大计算性能,预先将结果集从源库中计算完,并新建落地库落地,Tableau只需拉取结果集就可以完成数据刷新。这样我们的查询的速度得到了大大的提高,就像和谐号一样,只带着我们需要的数据快速的赶来。

5.AnalyticDB PostgreSQL版给我们带来的变化

阿里云的AnalyticDB团队在我们使用期间高效的保障了我们的BI系统,借助于AnalyticDB的强大性能,在现有的海量数据面前我们的数据团队也无所畏惧,可以轻松的存储并计算出我们需要的数据。
未来,悠星网络会放眼于大数据分析与与深度学习等技术领域,同样需要强大的数据库支持,希望我们与阿里云能共同成长,共同进步。

原文链接
本文为云栖社区原创内容,未经允许不得转载。

转载于:https://my.oschina.net/u/1464083/blog/3085721

悠星网络基于阿里云分析型数据库PostgreSQL版的数据实践相关推荐

  1. 阿里云分析型数据库MySQL版(AnalyticDB)测试初体验

    其实是测试半遂体验. 这阵子对OLAP数据库产生了兴趣,先是简单测试了ClickHouse,性能的确不错,不过它在稳定&可靠性,整体生态&周边配套方面还有待加强,我会持续保持关注. 3 ...

  2. 阿里云分析型数据库使用教程

    产品概述 随着企业IT和互联网系统的发展,越来越多的数据被产生了.数据的量的积累带来了质的飞跃,使得数据系统从业务系统的一部分演变得愈发独立,通过对数据的分析和挖掘产生自己独特的价值. 在业务系统中, ...

  3. 阿里云分析型数据库AnalyticDB:使用Logstash插件进行高效数据写入

    前言 AnalyticDB(简称ADB,ADS,早期项目名Garuda)是阿里巴巴自主研发的海量数据实时高并发在线实时分析型数据库(Real-Time OLAP).自2012年第一次在集团发布上线以来 ...

  4. 阿里云分析性数据库的发展历史

    详细内容请点击: 阿里云分析型数据库使用教程 (分析型数据库(AnalyticDB),是阿里巴巴自主研发的海量数据实时高并发在线分析(Realtime OLAP)云计算服务,使得您可以在毫秒级针对千亿 ...

  5. 阿里下一代云分析型数据库AnalyticDB入选Forrester云化数仓象限

    前言 近期, 全球权威IT咨询机构Forrester发布"The Forrester Wave: CloudData Warehouse Q4 2018"研究报告,阿里巴巴分析型数 ...

  6. 阿里巴巴下一代云分析型数据库AnalyticDB入选Forrester Wave™ 云数仓评估报告 解读

    前言 近期, 全球权威IT咨询机构Forrester发布"The Forrester WaveTM: CloudData Warehouse Q4 2018"研究报告,阿里巴巴分析 ...

  7. 基于阿里云 Serverless 函数计算开发的疫情数据统计推送机器人

    一.Serverless函数计算 什么是Serverless? 在<Serverless Architectures>中对 Serverless 是这样子定义的: Serverless w ...

  8. 2022爱分析· 中国分析型数据库市场研究报告

    报告编委 爱分析 黄勇 合伙人&首席分析师 张扬 合伙人&首席分析师 洪逸群 高级分析师 任理 分析师 中国信通院云大所 魏凯 中国信通院云计算与大数据研究所副所长 序言 数字化时代, ...

  9. 阿里云RDS金融数据库(三节点版) - 案例篇

    原文链接 摘要: 标签 PostgreSQL , MySQL , 三节点版 , 金融数据库 , Raft , 分布式共享存储版 背景 土豆哪里去挖? 土豆郊区去挖. 一挖一麻袋? 一挖一麻袋. 挖掘机 ...

最新文章

  1. 动态卷积系列工作的基础:CondCov按需定制的卷积权重
  2. PostCSS理解与运用
  3. 未处理的异常:进程性能计数器已禁用
  4. 辅助类KeyNode
  5. callbackcallback()到底有什么涵义?
  6. Flutter异步编程async与await的基本使用
  7. 日本富士通正考虑将PC业务并入联想
  8. 我对“硬盘分区”的愚见
  9. 抠图软件哪个好?这些软件值得收藏
  10. 中国大学moocpython答案查询_中国大学MOOC慕课Python机器学习应用mooc题库查题答案...
  11. 【随笔】编程能力和程序员
  12. CSS中margin和padding属性的区别
  13. SDR技术原理解析 USRP收发原理
  14. 测试apk-异常管控Gps攻击者开发
  15. 最通俗易懂的OSPF五种报文+七种状态
  16. Simlink数字电路仿真教程(1)——常用电路仿真元器件介绍
  17. elasticsearch之exists查询
  18. 考研数据结构之查找(9.8)——练习题之使用散列函数H(k)= 3k mod 11并采用链地址法处理冲突并构造散列表及设计散列表的完整算法(C表示)
  19. CryENGINE 3游戏引擎新特性完全详解
  20. 天下代码一大抄,整个案例的搬是什么鬼!蚂蚁金服?你大爷

热门文章

  1. java开发微信公众号接受并回复消息[工程代码+图片全解]
  2. 计算机主机闪烁显示器黑屏,win7系统电脑显示器一闪一闪黑屏的故障原因及解决方法...
  3. java 时间戳转化datetime_c# DateTime时间格式和JAVA时间戳格式相互转换
  4. 计算机毕设(附源码)JAVA-SSM慧学IT精品课程网站
  5. PS/2 标准键盘带感叹号,笔记本自带键盘不可用
  6. 推荐一款免费无套路的谷歌影像下载器
  7. 为什么软件需求会频繁变动
  8. FastStone Editor自定义截屏
  9. 项目中2个Token的原因
  10. easypoi实现动态表头导出