深入理解奥运会大数据架构方案

news2024/9/20 18:40:33

背景

某网作为某电视台在互联网上的大型门户入口,某一年成为某奥运会中国大陆地区的特权转播商,独家全程直播了某奥运会全部的赛事,积累了庞大稳定的用户群,这些用户在使用各类服务过程中产生了大量数据,对这些海量数据进行分析与挖掘,将会对节目的传播及商业模式变现起到重要的作用。

该奥运期间需要对增量数据在当日概览和赛事回顾两个层面上进行分析。

其中,当日概览模块需要秒级刷新直播在线人数、网站的综合浏览量、 页面停留时间、视频的播放次数和平均播放时间等千万级数据量的实时信息,而传统的分布式架构采用重新计算的方式分析实时数据在不扩充以往集群规模的情况下,无法在几秒内分析出重要的信息。

赛事回顾模块需要展现自定义时间段内的历史最高在线人数、逐日播放走势、直播最高在线人数和点播视频排行等海量数据的统计信息,由于该奥运期间产生的数据通常不需要被经常索引、更新,因此要求采用不可变方式存储所有的历史数据,以保证历史数据的准确性。

设计思路

当日概览模块采用流处理方式实现实时计算,在几秒内分析出重要的信息。

赛事回顾模块采用批处理方式实现复杂数据分析,采用不可变方式存储所有的历史数据,以保证历史数据的准确性。

架构图

这张图是一个大数据技术栈的架构图,它展示了不同的大数据组件及其之间的关系。下面是这张图的解析:

数据采集层
  • 实时数据采集
    • Flume:用于收集、聚合和传输大量日志数据。

  • 批量数据采集
    • ETL:提取转换加载。

数据存储层
  • HDFS:Hadoop分布式文件系统,用于存储大数据。

  • HBase:基于Hadoop的非关系型分布式数据库。

  • MemSQL:内存优化的分布式关系数据库,支持实时分析。

数据计算层
  • 批处理计算
    • Hive:建立在Hadoop之上的数据仓库,提供SQL查询功能。

    • Impala:用于Hadoop的开源即席查询引擎。

  • 流处理计算
    • Spark Streaming:开源的分布式计算系统,提供批处理和流处理的计算模型。

这个架构图表明,数据从不同的终端(PC端、APP端、电视端)被采集,通过实时或批量的方式进入数据采集层,然后存储在数据存储层的不同系统中。数据计算层负责处理这些数据,无论是批处理还是流处理。数据管理层提供必要的服务来协调这些计算任务。最后,数据通过ETL流程被处理,并供最终用户在不同的终端消费。

技术栈

  1. Zookeeper 是一个分布式协调服务,存储和同步分布式系统的配置信息,提供分布式锁和同步机制。

  2. Sqoop 是一个传输数据的工具。可以将大量数据从关系数据库导入到Hadoop的HDFS中。

  3. Flume 是一个用于收集、聚合和移动大量日志数据的分布式系统。

  4. Nginx 是一个高性能的HTTP和反向代理服务器。

  5. MemSQL 是一个内存中的分布式数据库,它将内存存储和SQL查询结合起来,提供实时分析处理能力。

  6. HBase 是建立在Hadoop之上的一个分布式、可扩展、支持海量数据存储的NoSQL数据库。

  7. HDFS (Hadoop Distributed File System)是Hadoop的核心组件之一,是一个分布式文件系统,专为存储大数据而设计。

  8. Spark Streaming 是基于Apache Spark的实时数据流处理框架。它扩展了Spark的RDD(弹性分布式数据集)模型,以处理实时数据流。

  9. Impala 是一个开源的大数据查询引擎,由Cloudera开发。Impala设计用于在存储于Hadoop文件系统中的大数据上进行快速、低延迟的查询。

  10. Hive 是一个基于Hadoop的数据仓库工具,用于处理大量的数据。Hive定义了一种类SQL查询语言,称为HQL(Hive Query Language),它将SQL语句转换成MapReduce任务执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1366227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CTF-PWN-沙箱逃脱-【seccomp和prtcl-2】

文章目录 沙箱逃脱prtcl题HITCON CTF 2017 Quals Impeccable Artifactflag文件对应prctl函数检查源码思路exp 沙箱逃脱prtcl题 HITCON CTF 2017 Quals Impeccable Artifact flag文件 此时的flag文件在本文件夹建一个即可 此时的我设置的flag为 对应prctl函数 第一条是禁止…

20240107查看Android11下移远的4G模块EC20在Firefly的AIO-3399J开发板跑通时的相关服务

20240107查看Android11下移远的4G模块EC20在Firefly的AIO-3399J开发板跑通时的相关服务 2024/1/7 11:24 缘起:友善之臂的SDK:rk3399-android-11-r20211216.tar.xz可以跑通EC20,但是Toybrick的不行! 同样是Andrid11,因此…

Vue3-37-路由-组件内的路由守卫 onBeforeRouteLeave 和 onBeforeRouteUpdate

简介 组件内的路由守卫,实际上就是两个 API 方法。 他们与普通的守卫不同的是 : 他们是写在组件内的,在组件中监听路由的变化,不是全局的,比较灵活。 以下是两个 API 的功能说明:onBeforeRouteLeave() : 守…

centos7下升级openssh9.4p1及openssl1.1.1v版本

背景:客户服务器扫描出一些漏洞,发现和版本有关,漏洞最高的版本是9.3p2,所以我们安装一个openssh9.4p1版本及openssl1.1.1v版本 虽然我们进行了镜像备份,为了安全先安装telnet以防止升级失败无法通过ssh连接服务器 一…

LINE网页版使用方法(内含LINE网页版特点总结)

如果想要在电脑上使用LINE,但是又觉得下载客户端很累赘的话,LINE网页版是你最好的选择。但是LINE网页版相对于其他平台来说使用方式比较少。所以今天就来讲讲,我们有什么方式可以在电脑中使用LINE。 LINE网页版使用方法 1.需要使用Chrome浏览…

详细探讨mfc140.dll丢失的解决方法,并比较各种方法的优劣

mfc140.dll是Microsoft Foundation Class (MFC) 库中一个重要的DLL文件,它包含了多个执行程序使用的函数和资源。这个库通常用于开发Windows操作系统上的应用程序。但有时会发生mfc140.dll缺失或损坏的错误,导致一些依赖它的应用程序无法运行。今天的这篇…

Nginx 搭建可道云网盘

目录 1.安装php-fpm 2. 建站点根目录与配置 2.1 建站点根目录 2.2 配置 3. 搭建成功 1.安装php-fpm nginx 需要使用php 需要安装php-fpm yum install php-fpm php-mbstring php-mysqlnd php-gd -y 修改 www.conf 文件的配置29行和41行,将用户会让用户组改成n…

赋能直播平台:美颜SDK与动态贴纸技术详解

当下,美颜SDK与动态贴纸技术成为直播平台吸引用户、提升用户体验的关键利器。本文将深入探讨这两项技术在直播领域的应用,从技术原理到用户体验,为读者呈现一幅美颜与创意表情相结合的绚丽画面。 一、美颜SDK的技术原理与应用 美颜SDK作为直…

SSM框架学习笔记03 | AOP 事务

文章目录 一、AOP1.AOP简介2.AOP入门案例分析3.AOP工作流程4.AOP切入点表达式6.AOP通知获取数据 二、事务1. 事务简介2. 事务角色3. 事务相关配置4. 事务传播行为 一、AOP 1.AOP简介 AOP(Aspect Oriented Programming)面向切面编程,一种编程范式,指导开…

什么是SCADA?一文读懂SCADA系统

随着信息技术的高速发展,国产组态软件也迅速更新迭代,使得许多行业的过程控制都可以轻松使用SCADA系统的来管理和操作。SCADA系统对于工业组织至关重要,因为它们有助于提升生产效率,分析数据以做出更明智的决策,并传达…

【大数据】安装 Zookeeper 单机版

安装 Zookeeper 单机版 下面安装 Zookeeper,由于它是 Apache 的一个顶级项目,所以域名是 zookeeper.apache.org,所有 Apache 的顶级项目的官网都是以项目名 .apache.org 来命名的。 点击 Download 即可下载,这里我们选择的版本是 …

用RASP五步轻松保护云端无服务器架构

近年来无服务器架构发展势头正猛,预计未来十年将增长近25%。据称,2022年无服务器架构市场的规模超过了90亿美元,年复合增长率预计将增加。到2032年,市场规模可能超过900亿美元。 这表明,在组织日益采用DevOps的影响下&…

Cocos Creator 3.8 开发2D水面波纹Shader

使用cocos Creator 3.8做了一个游戏开中常用的2D的波浪水面,把技术点给记录一下,并提供完整的Shader代码。先上效果: 添加图片注释,不超过 140 字(可选) 2D 波浪的基本技术原理 2D 水面波纹的主要原理就是给定一个正选波的边界&…

大前端nestjs入门教程系列(四):如何nestjs整合mysql数据库

经过前面的几篇文章,想必大家已经对nestjs有了基础的了解,那么这篇文章就带大家玩玩数据库,学会了这篇,就离大前端又进了一步 Nest与数据库无关,使你可以轻松地与任何 SQL 或 NoSQL 数据库集成。 根据你的喜好&#xf…

【AI视野·今日CV 计算机视觉论文速览 第282期】Wed, 3 Jan 2024

AI视野今日CS.CV 计算机视觉论文速览 Wed, 3 Jan 2024 Totally 70 papers 👉上期速览✈更多精彩请移步主页 Daily Computer Vision Papers Street Gaussians for Modeling Dynamic Urban Scenes Authors Yunzhi Yan, Haotong Lin, Chenxu Zhou, Weijie Wang, Haiya…

java数据结构与算法刷题-----LeetCode303. 区域和检索 - 数组不可变

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 很多人觉得动态规划很难,但它就是固定套路而已。其实动态规划只…

数仓建设学习路线(二)模型建设(1)

OLTP VS OLAP OLTP 概念 全称OnLine Transaction Processing,中文名联机事务处理系统,主要是执行基本日常的事务处理,比如数据库记录的增删查改,例如mysql、oracle。 OLAP 概念 全称OnLine Analytical Processing,中文名联机…

为什么C语言没有被C++所取代呢?

今日话题,为什么C语言没有被C所取代呢?C的复杂编译器实现和嵌入式平台的限制,使C语言保持了其地位。嵌入式系统多数仅支持C,即使支持C,也会限制某些功能,尤其是异常处理和RTTI。此外,C引入的功能…

k8s的集群调度

scheduler:负责调度资源。把pod调度到node节点。通过算法调度。分为预算策略和优先策略 List-watch 在k8s集群当中通过List-watch的机制进行每个组件的协作。保持数据同步。可以实现每个组件之间的解耦。 通过kubectl来配置文件统一向集群内部的apiserver来发送命…

Unity中在URP下开启深度图

文章目录 前言一、在Unity中打开URP下的深度图二、在Shader中开启深度图1、使用不透明渲染队列才可以使用深度图2、半透明渲染队列深度图就会关闭 三、在Shader中,获取深度图四、URP深度图 和 BRP深度图的区别 前言 URP下的深度图、深度图记录的就是物体离摄像机的…