聊一聊大数据需求的流程
大致的流程:需求对接、口径梳理、数据开发、任务发布、任务监控、任务保障
流程图
@startuml
skinparam packageStyle rectangleactor 需求方
participant 数据BP as 数据组
participant 离线数仓
participant 实时数仓需求方 -> 数据组: 提出需求
数据组 -> 数据组: 分析需求
数据组 -> 离线数仓: 确认指标\n口径&数据源确认
离线数仓 -> 实时数仓: 数据探查
实时数仓 -> 离线数仓: 接入数据开发验证
离线数仓 -> 实时数仓: 数据验收
实时数仓 -> 离线数仓: 数据上线note right: 发起口径变更
离线数仓 -> 实时数仓: 判断是否涉及实时
alt 是
实时数仓 -> 离线数仓: 拉齐离线实时口径
end
alt 否
离线数仓 -> 离线数仓: 口径变更
end离线数仓 -> 离线数仓: 离线变更
离线数仓 -> 实时数仓: 实时变更
实时数仓 -> 实时数仓: 数据验收
实时数仓 -> 实时数仓: 数据上线
@enduml
渲染过之后,长这样子了
大数据开发是一个复杂而系统性的过程,涉及多个环节和角色。以下是各个环节的详细介绍:
1. 需求对接
需求对接是大数据开发的起点,主要包括以下几个步骤:
- 需求收集:与业务部门或客户沟通,明确他们的数据需求。例如,需要哪些数据、数据的来源、数据处理后的输出形式、数据的更新频率等。
- 需求分析:分析需求的可行性,评估技术实现的难度,估算所需的时间和资源。
- 需求确认:与业务部门或客户确认需求细节,确保双方对需求有一致的理解。
示例1:零售行业的需求对接
- 需求收集:
- 业务背景:某零售连锁店希望分析会员消费数据,以便进行精准营销。
- 沟通内容:
- 数据需求:会员的购买历史、优惠券使用记录、反馈评论等。
- 数据来源:POS系统、会员管理系统、在线购物平台。
- 输出形式:个性化营销方案、促销活动推荐。
- 更新频率:每周更新一次。
- 需求分析:
- 可行性分析:数据获取和处理的复杂性,数据量的大小,对数据实时性的要求。
- 资源估算:预计需要1个月时间,涉及1名数据工程师、1名数据分析师。
- 需求确认:
- 细节确认:与营销部门详细讨论和确认每个数据字段和分析指标,确定数据的处理流程和输出方式。
- 确认文档:编写需求文档并获得相关部门签字确认。
2. 口径梳理
口径梳理是指对数据指标、维度等进行定义和规范化,以确保数据的一致性和准确性。具体步骤包括:
- 定义数据口径:明确数据指标的计算方法、维度的划分方式、数据的来源等。
- 口径文档:编写详细的口径文档,记录数据口径的定义和规则,以便后续开发和维护。
- 沟通确认:与相关部门沟通口径定义,确保所有人对口径的理解一致。
3. 数据开发
数据开发是整个过程的核心环节,涉及数据的获取、处理和存储。具体步骤包括:
- 数据采集:从各种数据源(如数据库、日志文件、API等)获取原始数据。
- 数据清洗:对原始数据进行清洗,处理缺失值、重复数据、异常值等问题。
- 数据转换:根据需求对数据进行转换和加工,如聚合、分组、计算等。
- 数据存储:将处理后的数据存储到数据仓库或数据库中,以便后续使用。
4. 任务发布
任务发布是指将开发完成的数据处理任务部署到生产环境中,通常包括以下步骤:
- 测试:在测试环境中对数据处理任务进行测试,确保其能正确运行。
- 部署:将经过测试的数据处理任务部署到生产环境中。
- 发布:正式发布数据处理任务,并通知相关部门或客户。
5. 任务监控
任务监控是保证数据处理任务正常运行的重要环节,具体包括:
- 实时监控:通过监控系统实时监控任务的运行状态,及时发现和处理异常。
- 日志分析:通过分析任务的运行日志,了解任务的执行情况,发现潜在问题。
- 告警机制:设置告警机制,当任务运行出现异常时,及时通知相关人员处理。
6. 任务保障
任务保障是确保数据处理任务稳定运行的一系列措施,包括:
- 备份和恢复:定期备份数据和任务配置,确保在发生故障时能快速恢复。
- 容错机制:设计任务的容错机制,如任务失败时自动重试、任务失败时的应急预案等。
- 性能优化:对数据处理任务进行性能优化,提高任务的执行效率,减少资源消耗。
- 定期巡检:定期对数据处理任务进行巡检,发现并解决潜在问题,确保任务的长期稳定运行。
以上是大数据开发各个环节的详细介绍,每个环节都至关重要,只有各个环节紧密配合,才能确保大数据开发工作的顺利进行和最终数据产品的高质量交付
相关文章:

聊一聊大数据需求的流程
大致的流程:需求对接、口径梳理、数据开发、任务发布、任务监控、任务保障 流程图 startuml skinparam packageStyle rectangleactor 需求方 participant 数据BP as 数据组 participant 离线数仓 participant 实时数仓需求方 -> 数据组: 提出需求 数据组 -> …...

老黄一举揭秘三代GPU!打破摩尔定律,打造AI帝国,量产Blackwell解决ChatGPT全球耗电难题
近日,老黄手持Blackwell向全世界展示的那一刻,全场观众沸腾了。 这是迄今为止世界上最大的芯片! 用老黄的话来说,它是「全世界迄今为止制造出来的最复杂、性能最高的计算机。」GPT-4o深夜发布!Plus免费可用!…...

HTML静态网页成品作业(HTML+CSS)—— 家乡南宁介绍网页(2个页面)
🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有2个页面。 二、作品演示 三、代…...

把qml程序制作成安装包(Windows)
先检查一下有没有安装Qt Installer FrameWork 需要用到Qt自带的打包工具: Qt Installer FrameWork,虽然有点拉胯,但是也能用用。一般放在Qt目录下的Tools文件夹下,如果没有看到,就去在线下载器去下载一下。 步骤1 随…...
内网中redis无法连接访问问题
这个错误信息说明 Redis 正在以受保护模式运行,这意味着它仅从本地回环接口(localhost 或 127.0.0.1)接受连接。如果你希望从外部计算机连接到 Redis,你需要采取一些措施来允许外部连接。 这里有一些解决方案: 禁用受…...
Unix环境高级编程第二版:深入探索与实战解析
Unix环境高级编程第二版:深入探索与实战解析 在信息化时代,Unix环境高级编程无疑是程序员们攀登技术高峰的必经之路。本文将针对《Unix环境高级编程第二版》一书,从四个方面、五个方面、六个方面和七个方面进行深入探讨,带您领略…...

SSL/TLS和HTTPS
HTTPS就是用了TLS包装的Socket进行通信的HTTP 混合加密 被称为混合加密。具体过程如下: 使用非对称加密协商对称密钥: 在通信的开始阶段,通常由客户端和服务器使用非对称加密算法(如RSA)来协商一个对称密钥。通常情…...

苹果将推出“Apple Intelligence”AI系统,专注于隐私和广泛应用|TodayAI
据彭博社报道,苹果公司将在下周的 WWDC 2024 开发者大会上揭晓其全新的 AI 系统——“Apple Intelligence”,该系统将适用于 iPhone、iPad 和 Mac 设备。这一新系统将结合苹果自身技术和 OpenAI 的工具,为用户提供一系列新的 AI 功能…...

配置Kubernetes资源管理Secret与ConfigMap
前言 Kubernetes 中的 Secret(提供加密模式)和 ConfigMap(提供配置)是关键的资源,用于安全地存储和管理敏感信息和配置数据。它们在应用程序开发和部署过程中扮演着重要的角色。本文将介绍如何有效地配置和管理这些资…...

韩顺平0基础学java——第19天
p396-406 final关键字 1.final修饰的为“常量”,需要给初始值。1可以直接定义时赋值,2在构造器中,3在代码块中。 注意静态代码块只能访问静态变量。 2.如果final修饰的关键字是静态的,那就不能在构造器中赋值,只能…...
嵌入式学习——Linux高级编程复习(目录IO、软硬连接、makefile)——day38
1. 目录IO 目录IO是指在计算机程序中对文件目录进行操作的一系列输入输出功能。这些操作允许程序创建、读取、修改和删除目录结构。在Unix/Linux系统和类似系统中,目录被视为特殊的文件,可以对其进行打开、读取、写入(修改)和关闭…...

makefile与进度条
Linux项目自动化构建工具-make/makefile make是一个命令, makefile是一个文件,保存依赖关系和依赖方法。‘ touch Makefile/makefile mybin:mytest.c//依赖关系 目标文件:依赖文件列表 文件列表的文件之间以空格分隔 gcc -o mybin mytest.…...

操作系统总结
进程和线程的区别 本质区别: 进程是资源调度以及分配的基本单位。线程是 CPU 调度的基本单位。 所属关系:一个线程属于一个进程,一个进程可以拥有多个线程。地址空间: 进程有独立的虚拟地址空间。线程没有独立的虚拟地址空间&…...

SpringCloud整合OpenFeign实现微服务间的通信
1. 前言 1.1 为什么要使用OpenFeign? 虽说RestTemplate 对HTTP封装后, 已经⽐直接使⽤HTTPClient简单⽅便很多, 但是还存在⼀些问题. 需要拼接URL, 灵活性⾼, 但是封装臃肿, URL复杂时, 容易出错. 代码可读性差, ⻛格不统⼀。 1.2 介绍一下微服务之间的通信方式 微…...

老师必备!一文教你如何高效收集志愿填报信息
高考志愿填报季,对于每一位老师来说,无疑是一场信息收集与管理的硬仗。如何在众多的志愿信息中,高效、准确地掌握每位学生的志愿意向? 高考志愿填报的重要性。不仅是学生人生的一个重要转折点,也是老师教育生涯中的一次…...

创建 MFC DLL-使用DEF文件
本文仅供学习交流,严禁用于商业用途,如本文涉及侵权请及时联系本人将于及时删除 利用“MFC动态链接库”项目模板可以创建MFC DLL。DLL文件与可执行文件非常相似,不同点在于DLL包含有导出表(Export Table)。导出表包含DLL中每个导出函数的名字…...

如何将HTTP升级成HTTPS?既简单又免费的方法!
在当今数字化时代,网络安全已成为用户和企业关注的焦点。HTTPS作为一种更加安全的网络通信协议,正逐渐取代传统的HTTP成为新的标准。对于许多网站管理员和内容创作者来说,如何免费升级到HTTPS是一个值得探讨的问题。本文将详细介绍一些免费的…...
数据仓库之核心模型与扩展模型分离
在数据仓库的设计和实施过程中,核心模型与扩展模型分离是一种常见的策略,旨在提高数据仓库的灵活性、可维护性和扩展性。这种分离策略的主要优势和实施方法如下: 核心模型(Core Model) 核心模型是数据仓库中稳定、共…...

大龄职场人的春招机遇:技术岗位主导,高薪与挑战并存
随着6月毕业季的临近,大批年轻人即将涌入人才市场,为职场注入新鲜血液。然而,这也意味着一些职场人可能面临被“优化”的风险。近几年,职场环境呈现出明显的年轻化趋势,企业更倾向于招聘具有创新活力的青年人才&#x…...

家宽动态公网IP,使用docker+ddns 实现动态域名解析
官方地址:https://github.com/jeessy2/ddns-go 安装docker docker pull jeessy/ddns-godocker run -d --name ddns-go --restartalways --nethost -v /opt/ddns-go:/root jeessy/ddns-go然后访问ip端口 配置时注意如下...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

12.找到字符串中所有字母异位词
🧠 题目解析 题目描述: 给定两个字符串 s 和 p,找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义: 若两个字符串包含的字符种类和出现次数完全相同,顺序无所谓,则互为…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...