聊一聊大数据需求的流程
大致的流程:需求对接、口径梳理、数据开发、任务发布、任务监控、任务保障

流程图
@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端口 配置时注意如下...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
深度学习水论文:mamba+图像增强
🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...
python打卡day49@浙大疏锦行
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 一、通道注意力模块复习 & CBAM实现 import torch import torch.nn as nnclass CBAM(nn.Module):def __init__…...
Python爬虫(四):PyQuery 框架
PyQuery 框架详解与对比 BeautifulSoup 第一部分:PyQuery 框架介绍 1. PyQuery 是什么? PyQuery 是一个 Python 的 HTML/XML 解析库,它采用了 jQuery 的语法风格,让开发者能够用类似前端 jQuery 的方式处理文档解析。它的核心特…...
Spring AI中使用ChatMemory实现会话记忆功能
文章目录 1、需求2、ChatMemory中消息的存储位置3、实现步骤1、引入依赖2、配置Spring AI3、配置chatmemory4、java层传递conversaionId 4、验证5、完整代码6、参考文档 1、需求 我们知道大型语言模型 (LLM) 是无状态的,这就意味着他们不会保…...
