实时数据开发

笔者并没有专业的实时数仓的开发经验,只是从别人经验和网上资料综合整理而来,仅供参考。

实时数据开发步骤:1、需求分析;2、确定Source、Sink、Dim;3、任务创建;4、任务开发和修改;5、参数与资源配置;6、任务发布;7、任务运维


1、需求分析

根据业务需求评估复杂结果,有一些例子:

场景需求特点实现方案
直播引导成交蓄水引导成交(15d)双流JOIN+维表JOIN
业务实时中间层口径定义+降低成本指标达标+去args
营销活动实时行业1.回刷多;2.累计曲线:指标累计增长流批一体+高性能UDF
直播指标配置平台管理指标+统一运维维度打标+高表转化
实时OLAP分析业务迭代快,固定报表使用频率较低基于Hologres实时数仓开发

2、确定中间件

中间件包含Source(源)、Sink(目标端)、Dim维表这三个。另外明确中间件,还需要尽量避免跨机房读写,包含source实时流、Sink端数据库/实时流、dim表中间件以及Flink集群所在位置
2.1 Source端
主流source端分类

中间件特性用途
TimeTunnel消息队列,处理数据量大;默认存储三天,shard人工调整实时公共层,复用性(ETL复杂逻辑收口)
MetaQ存储默认1.5天,shard分片数自动调整承接服务端变更消息
Holo Binlog基于实时数仓holo作为明细表的选型-

2.2 Sink端选型

中间件特性用途
TimeTunnel (TT)默认存储三天,shard人工调整实时公共层,复用性(ETL复杂逻辑收口)
Lindom面向列族的NoSQL数据库,海量数据KV高效查询支持点查+特定场景范围查询大屏场景如商家、或者主播视角
Holo Binlog支持海量数据实时写入、实时更新、实时分析,支持PB级数据多维分析(OLAP)与即席分析(Ad Hoc)实时公共层;复用性(ETL复杂逻辑收口);方便排查问题;对接B报表系统;生态:Holo主要服务于小二,无缝对接问大部分场景
Adb支持高吞吐的数据实时增删改、低延时的实时分析和复杂ETL用途同Holo,生态:ADB服务于外部企业,需要更高的稳定因而成本也会更高一些
IGraph在线图存储系统;数据存在主key,查询围绕key展开;查询rt有高要求;数据一致性、持久性要求不高、更新生效时间要求不高算法实时特征

2.3 Dim表选型

维表存储选择根据量级/更新频率 建议选型
ODPS量级<5000w/T+1更新
Lindom量级>1000w/实时更新
Hologres如果量级>1000w,使用bhclient方式优化

3、任务创建

保证任务的可读性、可维护性和可扩展性,有助于提高开发效率和代码质量。

4、任务开发

高质量的实时任务开发可大幅提高任务的性能、稳定性与准确性,从而使得任务能够更好地服务于实际业务需求。

5、参数与资源配置

参数与资源配置在实时开发中至关重。

6、任务发布

分为:数据验证、数据回归、发布管控

7、实时运维

日常运维:单任务报警设置、基线保障
大促保障:①促前:容量评估->资源上报-大促资源快上->业务单压->全链路验收(压测/预案);②促中:大促值班保障;③促后:大促资源快下。

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

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

相关文章

【go从入门到精通】作用域,包详解

作者简介&#xff1a; 高科&#xff0c;先后在 IBM PlatformComputing从事网格计算&#xff0c;淘米网&#xff0c;网易从事游戏服务器开发&#xff0c;拥有丰富的C&#xff0c;go等语言开发经验&#xff0c;mysql&#xff0c;mongo&#xff0c;redis等数据库&#xff0c;设计模…

性能分析-数据库(安装、索引、sql、执行过程)与磁盘知识(读、写、同时读写、内存速度测试)

数据库 数据库&#xff0c;其实是数据库管理系统dbms。 数据库管理系统&#xff0c; 常见&#xff1a; 关系型数据库&#xff1a; mysql、pg、 库的表&#xff0c;表与表之间有关联关系&#xff1b; 表二维表统一标准的SQL&#xff08;不局限于CRUD&#xff09;非关系型数据…

【Python】关于函数

1.调用时 当有重名的时候&#xff0c;使用最后声明的同名函数 解决函数命名冲突问题&#xff1a; ~ 模块名.函数名 ----> 使用函数的完全限定名 ~ 别名 ----> 在导入函数的时候&#xff0c;使用as关键字对其别名 2.参数 (1)函数的参数的说明&#xff1a; ~ /…

阿里云9元服务器租用收费价格表_免费云服务器领取

2024年最新阿里云服务器租用费用优惠价格表&#xff0c;轻量2核2G3M带宽轻量服务器一年61元&#xff0c;折合5元1个月&#xff0c;新老用户同享99元一年服务器&#xff0c;2核4G5M服务器ECS优惠价199元一年&#xff0c;2核4G4M轻量服务器165元一年&#xff0c;2核4G服务器30元3…

第P2周:CIFAR10彩色图片识别

第P2周&#xff1a;CIFAR10彩色图片识别 &#x1f368; 本文为&#x1f517;365 天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K 同学啊 &#x1f4cc;第P2周&#xff1a;彩色图片识别&#x1f4cc; 难度&#xff1a;小白入门⭐ 语言&#xff1a;Python…

QSFP-DD 和 QSFP+ / QSFP28 / QSFP56 / OSFP / CFP8 / COBO 之间的区别

&#x1f31f;QSFP-DD 作为400G 光模块的最小外形尺寸&#xff0c;提供业界最高的带宽密度&#xff0c;同时利用对低速 QSFP 可插拔模块和电缆的向后兼容性&#xff0c;使其在光纤制造商中很受欢迎。作为400G高速应用中最新的热门光收发器&#xff0c;QSFP-DD经常被拿来与QSFP5…

目标检测YOLO实战应用案例100讲-基于多特征融合的SSD目标检测(续)

目录 3 基于多感受野融合的目标检测算法 3.1基于多特征图的网络结构 3.2感受野与空洞卷积

单例模式(Singleton Pattern)在JAVA中的应用

在软件开发中&#xff0c;设计模式是解决特定问题的一种模板或者指南。它们是在多年的软件开发实践中总结出的有效方法。JAVA设计模式广泛应用于各种编程场景中&#xff0c;以提高代码的可读性、可维护性和扩展性。本文将介绍单例模式&#xff0c;这是一种常用的创建型设计模式…

计算机视觉——DiffYOLO 改进YOLO与扩散模型的抗噪声目标检测

概述 物体检测技术在图像处理和计算机视觉中发挥着重要作用。其中&#xff0c;YOLO 系列等型号因其高性能和高效率而备受关注。然而&#xff0c;在现实生活中&#xff0c;并非所有数据都是高质量的。在低质量数据集中&#xff0c;更难准确检测物体。为了解决这个问题&#xff…

【报错】AttributeError: ‘NoneType‘ object has no attribute ‘pyplot_show‘(已解决)

【报错】AttributeError: ‘NoneType’ object has no attribute ‘pyplot_show’ 问题描述&#xff1a;python可视化出现下面报错 我的原始代码&#xff1a; import matplotlib.pyplot as pltplt.figure() plt.plot(x, y, bo-) plt.axis(equal) plt.xlabel(X) plt.ylabe…

基于LNMP部署wordpress

目录 一.环境准备 二.配置源并安装 三.配置Nginx 四.配置数据库 五.上传源码并替换 六.打开浏览器&#xff0c;输入虚拟机ip访问安装部署 七.扩展增加主题 一.环境准备 centos7虚拟机 关闭防火墙和seliunx stop firewalld #关闭防火墙 setenforce 0 …

软件设计师-基础知识科目-标准化与软件知识产权基本知识11

十一、标准化与软件知识产权基本知识&#xff1a; 知识产权&#xff1a; 主要包括&#xff1a;著作权及邻接权、专利权、工业品外观设计权、商标权、地理标志权、继承电路布图设计权。邻接权是指与著作权相邻近的权利&#xff0c;是指作品传播者&#xff0c;对其传播作品过程…

Unity TextMeshProUGUI 获取文本尺寸·大小

一般使用ContentSizeFitter组件自动变更大小 API 渲染前 Vector2 GetPreferredValues(string text)Vector2 GetPreferredValues(string text, float width, float height)Vector2 GetPreferredValues(float width, float height) 渲染后 Vector2 GetRenderedValues()Vector…

【安全】挖矿木马自助清理手册

一、什么是挖矿木马 挖矿木马会占用CPU进行超频运算&#xff0c;从而占用主机大量的CPU资源&#xff0c;严重影响服务器上的其他应用的正常运行。黑客为了得到更多的算力资源&#xff0c;一般都会对全网进行无差别扫描&#xff0c;同时利用SSH爆破和漏洞利用等手段攻击主机。 …

JavaEE初阶——多线程(二)

T04BF &#x1f44b;专栏: 算法|JAVA|MySQL|C语言 &#x1faf5; 小比特 大梦想 此篇文章延续上一篇文章,与大家分享Thread常见的方法以及线程的状态相关知识 其他内容我们下一篇再见! 如果有错误或不足请您指出!!! 目录 3.Thread类及常见方法3.1Thread常见的构造方法3.2Thread…

Ubuntu下载内核源代码

使用apt-get获取源代码&#xff0c;下载tar文件 $ apt-get install linux-source可以把tar文件复制到想要的目录&#xff0c;然后进行解压。 $ cp /usr/src/linux-source-5.15.0.tar.bz2 your_path $ cd your_path $ tar xjf linux-source-5.15.0.tar.bz2也可以去tar文件的目…

STM32H743VIT6使用STM32CubeMX通过I2S驱动WM8978(2)

接前一篇文章&#xff1a;STM32H743VIT6使用STM32CubeMX通过I2S驱动WM8978&#xff08;1&#xff09; 本文参考以下文章及视频&#xff1a; STM32CbueIDE Audio播放音频 WM8978 I2S_stm32 cube配置i2s录音和播放-CSDN博客 STM32第二十二课&#xff08;I2S&#xff0c;HAL&am…

CLIP大模型图文检索——原理解读及代码实现

一. 核心思想 通过自然语言处理获得的监督信号可用于训练迁移效果出色的视觉模型。本论文的作者团队构建了一个庞大的图像文本配对数据集&#xff0c;其中包含400 million个图片文本的配对。利用最大规模的ViT-large模型&#xff0c;他们提出了CLIP&#xff08;Contrastive La…

两个链表的交集(力扣349)

题目如下&#xff1a; 给定两个数组 nums1 和 nums2 &#xff0c;返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1&#xff1a; 输入&#xff1a;nums1 [1,2,2,1], nums2 [2,2] 输出&#xff1a;[2]示例 2&#xff1a;…

go 利用channel实现定时任务

package mainimport ("fmt""net/http""time" )func main() {// 创建一个定时器&#xff0c;每隔1秒钟执行一次ticker : time.NewTicker(1 * time.Second)done : make(chan bool)//设置3s超时&#xff0c;避免请求时间过长client : http.Client{T…