给王心凌打Call的,原来是神奇的智能湖仓

图文原创:谭婧(王凌老粉)
“爷青回”
“我们只是老了,并没有死。”

谭老师作为老粉,热烈庆祝“甜心教主”王凌成为现象级翻红顶流。

只要地球不爆炸,她的数据就一个都不能丢,还得用好了。
那为王凌从头开发一套大数据与智能系统吧?
答案,没必要。
不能把精力花在和IT基础设施你死我活地缠斗中。
就好比,当你的目的是去开会,那就不能去搭建会议室。



所以,这边建议电视台:
把所有数据放到公有云上,使用无服务器架构(Serverless),将项目命名为 :
“王凌老粉打Call数据项目”
每一家云厂商都能拿出足够的资料来证明自己的产品才是最好的,我们不在此处争论。
方案技术选型上,一步到位,挑选一朵最大的,全球部署的公有云,方便凌文化出海。
用亚马逊公有云,全方位无死角给凌打Call。

首先,王凌的视频,音频,电视剧,演唱会等大批量历史数据,不存放在本地IDC上。
现在疫情,供应链紧张,硬件采购周期太长,电视台的审批流程也太长,不能等。

直接将凌的所有数据妥善存储在Amazon S3 数据湖中。

不同种类的数据都能存,量大量少都能存,而且不会丢,永远在数据湖里,安全,放心。
技术上,这些文件存进S3数据湖自动成为数据API,方便调用,标准一致,取用方便。
怪不得,有人称S3为事实上的云计算对象存储标准。
没有数据指导的业务,怎么可能做好?
领导着急看数,数据分析人员更着急,这个情况不允许发生,立刻配备云数据仓库Amazon Redshift。

联合查询的功能不能少:
比如,某电视台数据分析专家想查手机APP平台和大屏电视机顶盒观看平台的用户之间的联系。
Redshift联合查询可以直接从手机App平台(已入湖),大屏电视机顶盒平台(基于数据库),获取数据的联系。
晚上九点,晚饭后,某一批用户在电视上反复观看王凌现场舞蹈(产生的行为数据存在数据库中,包括当时产生的很多标签)。
然后,我们直接查询一批用户在手机App中的观看过和这些行为数据中的标签相关的视频(这些数据存在数据湖里),比如标签里有“甜心教主” “电视剧”。
这两类数据存放在不同的地方,一个在数据库,一个在数据湖。如果之前没看过相关视频(“王凌男孩跳舞热榜”),就向手机App端推送。


实时智能分析必不可少:
先将历史数据和新鲜(实时)两种数据同时接入云数据仓库Redshift。
Amazon Redshift ML 使数据分析师和数据库开发人员可以在Redshift 数据仓库中使用熟悉的 SQL 命令轻松创建、训练和应用机器学习模型。

实时看板必不可少:
某电视台,没有设置王凌线上投票,实在令人遗憾,氛围感差些些。
建议电视台开展线上投票,并公开实时看板,让全国粉丝了解投票热度整体进展,即时知道投票效果。

所有产生的实时打榜数据,接入流式数据管道Amazon Kinesis,数据像水流一样一直灌进来。
并不是所有人时时刻刻在打榜,水流有大有小,而无服务器架构的Kinesis可以基于水流的大小即时弹性扩缩,无需关心流量高峰低谷,安心接入。
Redshift创建流式物化视图对接Kinesis,结合数据仓库内历史数据生成实时看板。

那些不能从电视台数据仓库里直接取数的外部团队,比如,抖音和快手,办法是电视台借助Amazon Redshift Data Sharing的功能,将数据安全共享。

查询并发高峰的时刻,Redshift并发扩展能力也能轻松应对。

总而言之,数据仓库性能越高越好,价格越便宜越好。

这就要靠云厂商的技术手段了,压力给到亚马逊云科技这边。
“王凌老粉打Call数据项目”项目,危险行为识别必不可少:
用日志分析服务Amazon OpenSearch,做链路追踪,监视黑产恶意刷榜,确保公平。

“王凌老粉打Call数据项目”项目,数据库选型如下:
1. 如果王凌开直播,刷礼物的交易数据,先放入极致弹性的Amazon DynamoDB中,再将历史数据同步到Redshift数据仓库。
2. 手机APP用户浏览王凌视频的行为,记录等,也得存入非关系型数据库DynamoDB中。

本方案,为突发状况,准备了预案。
突发情况一:
突然,某天,要查询一遍过去十年的王凌数据,可能几十PB。
方法一:这种使用频率极低,又要分析海量数据,成本还要低的查询,就用Amazon Athena。
方法二,搭建一个Hadoop系统。但是,为了干这件事情,耗费的人力物力非常可怕,从头干起大约两个月。

在Athena里,查询按次按量计费,一定要查询的话,这笔费用可以出。
突发情况二:
“王凌男孩跳舞热榜”现象,让人始料不及。跟风创作,大量上传热舞视频。
实时处理这些视频并提取特征,为下一阶段分析提供数据,得用什么技术呢?
答案是,流式数据分析技术,Amazon Kinesis Analytics。

另外,历史数据怎么处理呢?
答案是,使用托管大数据平台Amazon EMR处理大规模历史数据,为凌的每一个历史视频都打上标签。同时EMR Serverless以极简的开发来处理数据,同时实现最低的成本。

最后强调一句,亚马逊云科技Serverless无服务器架构,很黑科技。

初听还是小学生,再听已是社会人,支持凌,致我们逝去的青春。
“王凌老粉打Call数据项目”方案的技术选型部分就介绍完了。
刚刚提到很多亚马逊云科技产品服务,大家感兴趣的话也可以扫码进入官网阅读,一起学习成长,欢迎交流讨论~

来源:公众号亲爱的数据
给王心凌打Call的,原来是神奇的智能湖仓的更多相关文章
- TypeScript: Angular 2 的秘密武器(译)
		
本文整理自Dan Wahlin在ng-conf上的talk.原视频地址: https://www.youtube.com/watch?v=e3djIqAGqZo 开场白 开场白主要分为三部分: 感谢了 ...
 - TypeScript
		
TypeScript: Angular 2 的秘密武器(译) 本文整理自Dan Wahlin在ng-conf上的talk.原视频地址: https://www.youtube.com/watch? ...
 - Caliburn实现MVVM模式的编程
		
引言:什么是Caliburn ? 一个夜晚,一处教堂,人们忏悔结束后抬头看到一把宝剑插在一块石头上.石上字述“英格兰人,凡能从石头上拔出剑者,为王者!”,Caliburn就是英格兰人心中的石中剑,这把 ...
 - OTT
		
http://baike.baidu.com/view/1315414.htm OTT 编辑 OTT 是“Over The Top”的缩写,是通信行业非常流行的一个词汇,这个词汇来源于篮球等体育运 ...
 - 魔镜魔镜,今天有雨吗?——GitHub 热点速览 v.21.25
		
作者:HelloGitHub-小鱼干 上周智能驾驶项目的作者曾经做过一个透明小电视机,同透明电视机类似 MagicMirror 也是一个神奇的智能项目,使用它进行模块定制开发,你将拥有一块非常酷炫的智 ...
 - 理想汽车 x JuiceFS:从 Hadoop 到云原生的演进与思考
		
理想汽车在 Hadoop 时代的技术架构 首先简单回顾下大数据技术的发展,基于我个人的理解,将大数据的发展分了4个时期: 第一个时期: 2006 年到 2008 年.2008 年左右,Hadoop 成 ...
 - BZOJ 1006 【HNOI2008】 神奇的国度
		
题目链接:神奇的国度 一篇论文题--神奇的弦图,神奇的MCS-- 感觉我没有什么需要多说的,这里简单介绍一下MCS: 我们给每个点记录一个权值,从后往前依次确定完美消除序列中的点,每次选择权值最大的一 ...
 - 前端精选文摘:BFC 神奇背后的原理
		
BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用处(如清浮动,防止 margin 重叠等).虽然我知道如何利用 BFC 解决这些问题, ...
 - MVC系列——MVC源码学习:打造自己的MVC框架(四:了解神奇的视图引擎)
		
前言:通过之前的三篇介绍,我们基本上完成了从请求发出到路由匹配.再到控制器的激活,再到Action的执行这些个过程.今天还是趁热打铁,将我们的View也来完善下,也让整个系列相对完整,博主不希望烂尾. ...
 
随机推荐
- python---复杂度、斐波那切数列、汉诺塔
			
时间复杂度  用来估计算法运行时间的一个式子.  一般来说, 时间复杂度高的算法比复杂度低的算法慢. 常见的时间复杂度:  O(1) < O(logn) < O(n) < O( ...
 - Java-NIO之Channel(通道)
			
1:Channel是什么 通道表示与实体的开放连接,例如硬件设备.文件.网络套接字或能够执行一个或多个不同 I/O 操作(例如读取或写入)的程序组件. 1.1:Channel与Stream的对比 St ...
 - SpringMVC小小注意点——/*和/的区别
			
/*会去匹配所有的数据,包括jsp /只匹配请求,不匹配jsp页面
 - 数据库基础知识详解四:存储过程、视图、游标、SQL语句优化以及索引
			
写在文章前:本系列文章用于博主自己归纳复习一些基础知识,同时也分享给可能需要的人,因为水平有限,肯定存在诸多不足以及技术性错误,请大佬们及时指正. 11.存储过程  存储过程是事先经过编译并存储在数 ...
 - 面试突击39:synchronized底层是如何实现的?
			
想了解 synchronized 是如何运行的?就要先搞清楚 synchronized 是如何实现? synchronized 同步锁是通过 JVM 内置的 Monitor 监视器实现的,而监视器又是 ...
 - Google kickstart 2022 Round A题解
			
Speed Typing 题意概述 给出两个字符串I和P,问能否通过删除P中若干个字符得到I?如果能的话,需要删除字符的个数是多少? 数据规模 \[1≤|I|,|P|≤10^5 \] 双指针 设置两个 ...
 - 今天学弟问我pip如何永久换源?
			
pip如何永久换源 临时使用 我们在使用Python开发的时候,经常要下载第三方模块,最常用的方式就是直接pip install 模块名,但是默认是使用国外的源,从pypi仓库中查找目标模块,不管是网 ...
 - redis中的字典结构是怎样的?
			
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. 基础概念 redis支持的5种数据类型中,有hash类型,hash类型的 ...
 - c++:-1
			
C++第一部分介绍基础:c++:-0,本节介绍C++中函数使用. 函数 函数调用 调用函数需要先声明函数原型 嵌套调用: 参数传递 在函数被调用时才分配形参的存储单元 实参可以是常量.变量或表达式 实 ...
 - CSS预编译器
			
零.CSS预编译器 CSS预处理器是指对生成CSS前的某一语法的处理.CSS预处理器用一种专门的编程语言,进行Web页面样式设计,然后再编译成正常的CSS文件,供项目使用 CSS预处理器为CSS增加一 ...