实时数仓选型

news2024/9/22 19:46:00

实时数仓选型

  • 实时数仓选型第一版
  • 实时数仓选型第二版

实时数仓选型第一版

实时数仓分层:

计算框架:Flink;存储框架:消息队列(可以实时读取&可以实时写入)

ODS:Kafka

使用场景:每过来一条数据,读取到并加工处理

DIM: HBase

使用场景:事实表会根据主键获取一行维表数据(1.永久存储、2.根据主键查询)
HBase:海量数据永久存储,根据主键快速查询 √
Redis:用户表数据量大,内存数据库 x
ClickHouse:并发不行,列存 x
ES:默认给所有字段创建索引 x
Mysql本身:压力太大,实在要用就使用从库 (mysql 要主从读写分离)v

DWD:Kafka

使用场景:每过来―条数据,读取到并分组累加处理

DWS:ClickHouse

Kafka 使用场景:每过来一条数据,实时读取到并重新分组、累加处理(聚合计算)(列存计算)(再次加工数据时,更有优势)
为什么不用 kafka flink?
DWS:用户、省份、商品  GMV (商品交易总和)
到
ADS:用户 GMV
        省份 GMV
        商品 GMV
		省份、商品 GMV(重复聚合计算)

用kafak就要用flink计算,每计多算一个指标,就多一个实时任务(耗资源)

ADS:不落盘,不存储。实质上时接口模块,查询ClickHouse的SQL语句(SQL查ClickHouse)

使用场景:读取最终结果直接给大屏,进行数据展示

在这里插入图片描述

实时数仓选型第二版

ods:

kafka对应的主题topic_db topic_log

dwd:

保持数据流的形式进行下一步的聚合
存储到kafka ->主题名称对应不同的事实表

dim:

存储维度表等待数据聚合之后来进行维度关联join操作
-mysql:快  不适合海量数据的存储
-redis:更快  数据不是永久化存储的
hbase:一般  数据键值对存储   getKey()速度快一些   适合海量的数据     (最合适)
-doris:快   适合海量数据   使用成本较高   尽量不要将原始数据大量存储到doris(现在不需要,适合查询时使用)
-clickHouse: 列式存储   **列式数据聚合操作**(dim维度表里面不会进行列式数据的计算,但dwd dws 会)   速度非常快
hbase(数据存储 契合后续的数据使用 getKey读取) + redis(旁路缓存 提升速度)

dws:

读取dwd数据进行聚合->开窗聚合(10s)再进行维度关联
后续进行灵活的数据接口编写同时能够实现即席查询的功能
doris最适合(之前存储到clickHouse)

ads:

 spring boot编写数据接口读取doris数据

在这里插入图片描述

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

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

相关文章

6个好用的AI绘画网站,AI画画操作简单更好看

如今,越来越多的人在艺术领域选择使用AI绘画软件进行创作,这已经成为一种趋势。以下是几款好用的AI绘画软件,可以帮助你和你的小伙伴们的AI画画操作简单更好看。 下面先欣赏AI美图~ 爱制作AI: 独特优势:爱制作AI是爱制作AI拥有强…

网页视频录制技巧,这2个方法一定要收好!

“大家知道如何录制网页上的视频吗?我现在有一个重要的项目,需要录制一段在线视频作为参考。但是尝试了好几种方法,都没能成功。时间紧迫,我真的非常需要这个视频。大家有没有好的建议或者方法呢?谢谢了!”…

UG10.如何设置鼠标滚轮操作模型放大缩小方向?

UG10.如何设置鼠标滚轮操作模型放大缩小方向呢?看一下具体操作步骤吧。 首先打开UG10.软件,在主菜单栏选择【文件】下拉菜单,选择【实用工具】。 点击【用户默认设置】。 文章源自四五设计网-https://www.45te.com/45545.html 选中【基本环…

分享基于鸿蒙OpenHarmony的Unity团结引擎应用开发赛

该赛题旨在鼓励更多开发者基于OpenHarmony4.x版本,使用团结引擎创造出精彩的游戏与应用。本次大赛分为“创新游戏”与“创新3D 化应用”两大赛道,每赛道又分“大众组”与“高校组”,让不同背景的开发者同台竞技。无论你是游戏开发者&#xff…

LabVIEW轴承表面缺陷检测系统

LabVIEW轴承表面缺陷检测系统 为了解决轴承生产中人工检测效率低下、误检率高的问题,实现了一套基于LabVIEW的轴承表面缺陷自动检测系统。该系统利用工业相机采集轴承图像,通过图像处理技术对轴承表面的划痕缺陷和倒角缺陷进行自动识别和分析&#xff0…

Linux中inode号与日志分析

一.inode号 1.inode表结构 元信息:每个文件的属性信息,比如:文件的大小,时间,类型,权限等,称为文件的元数据(meta data 元信息 ) 元数据是存放在inode(index node)表中…

【Java】Java基础 使用集合实现斗地主分牌

📝个人主页:哈__ 期待您的关注 今天使用集合TreeSet来实现一个斗地主的分牌流程。 TreeSet集合的一个特点就是 元素有序,这样就方便我们分的牌自动排序。 0.思路 1.创建玩家手牌集合 我们到时候分的牌都存储在这里,但你可能会…

AI大模型探索之路-应用篇17:GLM大模型-大数据自助查询平台架构实践

文章目录 前言一、技术架构设计二、本地知识库准备三、SQLServer服务1. 数据库准备步骤1:安装MySQL数据库步骤2:启动MySQL数据库步骤3:登录MySQL数据库步骤4:创建数据库用户glm步骤5:给数据库用户赋权限步骤6&#xff…

前端CSS基础6(CSS列表与表格的相关属性,边框的样式调整)

前端CSS基础6(CSS列表与表格的相关属性,边框的样式调整) CSS列表相关属性CSS表格相关属性回忆表格边框相关属性单元格边框相关属性回忆单元格的跨行和跨列操作单元格边框的相关属性 CSS列表相关属性 在 CSS 中,列表(L…

Hadoop3:大数据生态体系

一、技术层面 通过下面这张图,我们可以大概确定,在大数据行业里,自己的学习路线。 个人认为,Hadoop集群一旦搭建完工,基本就是个把人运维的事情 主要岗位应该是集中在数据计算层,尤其是实时计算&#xff…

Skill Check: Building Blocks for an LLM Application

Skill Check: Building Blocks for an LLM Application

docker 报错 error adding seccomp filter rule for syscall clone3

网上有一些说法,例如重新安装docker 但是我自己尝试,用 –security-opt seccompunconfined 就可以,但是需要把这个命令放到紧挨着run的位置,如果放到偏后的位置,可能不起作用。 以下命令是其他网友启动是的命令&…

nfs网络存储配置

准备:yum install rpcbind yum install nfs-server 一台服务器:192.168.220.131 一台客户端:192.168.220.220 服务器: 先启动rpcbind服务:systemctl restart rpcbind 在启动…

day83 AJAX

1什么是AJAX AJAX语法 AJAX Asynchronous JavaScript and XML 异步js和XML 实现页面某一部份更新,无需服务器转发或重定向 1 $.ajax() 语法: $.ajax( { "url" : "url&qu…

Python | Leetcode Python题解之第43题字符串相乘

题目: 题解: class Solution:def multiply(self, num1: str, num2: str) -> str:if num1 "0" or num2 "0":return "0"m, n len(num1), len(num2)ansArr [0] * (m n)for i in range(m - 1, -1, -1):x int(num1[i…

Python --- 新手小白自己动手安装Anaconda+Jupyter Notebook全记录(Windows平台)

新手小白自己动手安装AnacondaJupyter Notebook全记录 这两天在家学Pythonmathine learning,在我刚刚入手python的时候,我写了一篇新手的入手文章,是基于Vs code编译器的入手指南,里面包括如何安装python,以及如何在Vs…

HCIP-Datacom-ARST必选题库_01_ACL【7道题】

一、单选 1.下面是一台路由器的部分配置,关于该配置描述正确的是: 源地址为1.1.1.1的数据包匹配第一条ACL语句rule 0,匹配规则为允许 源地址为1.1.1.3的数据包匹配第三条ACL语句rule 2,匹配规则为拒绝 源地址为1.1.1.4的数据包匹配第四条ACL语句rule 3,匹配规则为允…

车灯专用方案12V24V36V48V转9V/12V 线性恒流H7306

电流控制:为了保持输出电流的恒定,转换器使用一种称为恒流控制的技术。恒流控制通常通过测量输出电流并与一个参考电流进行比较来实现。如果输出电流超过参考电流,控制电路将调整输出电压或电流,以降低输出电流至所需的恒定值。 …

springboot 批量下载文件, zip压缩下载

一、使用hutool 工具类 效果&#xff1a;下载速度可以 1、依赖&#xff1a;hutool <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.26</version> </dependency>2、调用方式 im…

初识《list》及手搓模拟《list》

目录 前言&#xff1a; 1. list的介绍及使用 list的介绍&#xff1a; list的使用&#xff1a; 1、list的构造​编辑 2、list iterator的使用 3、list capacity 4、list element access 5、list modifiers 2.list的模拟实现 1、关于迭代器&#xff1a; 2、迭代器类的…