【数据库】通过一个实例来认识数据流图DFD

 导读:通过一个实例(数据中台)说明数据流图DFD的作用、介绍了常见的数据流图元素及其标准符号以及如何画数据流图。数据流图主要被分析师、系统设计师、流程优化专家、系统管理员以及与系统开发和维护相关的人员查看和使用。对于刚考完2024年5月的软考考生来说并不陌生,架构师、提供分析师、软件设计师考察内容有涉及这部分内容。

目录

 1、实例数据中台数据流图(DFD)

1.1 数据中台概述

1.2 数据中台核心功能

1.3 数据中台示例-数据流图

2、认识数据流图(DFD)

2.1 数据流图作用

2.2 常见的数据流图元素及其标准符号

2.3 画好数据流图的步骤


1、实例数据中台数据流图(DFD

1.1 数据中台概述

数据中台是一个综合的数据管理和分析平台,其核心目的是帮助企业更好地管理和利用数据。

1.2 数据中台核心功能

  • 数据采集与集成:将来自不同系统和平台的数据源整合到中央数据平台中,包括结构化数据、半结构化数据和非结构化数据等。
  • 数据加工:对数据进行清洗、转换、计算、分析等处理,使数据更加规范化、精细化、可视化,提高数据的价值和应用效果。
  • 数据存储:提供可靠的数据存储和管理能力,确保数据的安全性、可靠性和可用性,同时提供数据备份和恢复功能。
  • 数据应用:为企业的业务和决策提供数据支持,包括数据分析、数据挖掘、数据可视化等应用。

1.3 数据中台示例-数据流图

以上是从数据中台的整体数据流向来画的数据流图,其中主要的模块包含

  • 数据源中的各种数据库
  • 同步功能模块
  • 实时计算模块
  • 批量计算模块
  • 数据服务
  • 离线同步数据模块

1、数据同步中的实时同步是同步开发人员配置好实时同步作业,其中实时同步作业采用flinkCDC来处理数据,而数据源则采用监听oracle数据库的re dolog和mysql的binlog作为数据源。

2、数据同步中的实时同步是同步人员配置好离线同步作业,其中离线同步作业采用Data X来处理数据,而数据源则轮询查询数据库和API的方式获取数据。

3、实时作业是实时开发人员通过写flink流处理作业之后,实时读取kafka数据计算完成之后,如果是中间数据则存储回kafka,如果是最终结果则写回到WinQflow实时数据仓库。在流处理作业有时会读取WinQflow实时数据仓库放入内存作为流式计算使用。同时有些实时数据会实时存储到数据湖中,持久化存储到文件系统或者S3中。

4、离线作业是离线开发人员通过写SPL离线开发作业之后,经过powerjob调度之后之后,批量从WinQSPL数据仓库中读取数据,经过作业计算之后之后,写回到WinQSPL数据仓库中。同时有些离线数据会实时存储到数据湖中,持久化存储到文件系统或者S3中。

5、服务开发人员开发数据服务API之后,报表使用API访问数据,当报表和其它应用需要展示数据则会请求 服务API,服务API则调用各数据仓库的OLAP分析引擎,完成分析后将计算结果返回给报表展示。


2、认识数据流图

数据流图(Data Flow Diagram,简称DFD)是一种用于描述信息系统过程的图形工具。它通过图形化的方式展示了数据在信息系统中的流动和处理过程,帮助我们理解和描述系统中的数据流向和交互方式。

2.1 数据流图作用

1、数据流图的主要目的是说明数据的流动路径和转换过程,以及参与数据流动的实体、进程和存储点,从而提供对系统运作和数据处理过程的视觉化概览。

2、通过数据流图,这些人员可以更好地理解和分析系统中的数据流程,从而能够更好地进行设计、优化、故障排查和系统集成等工作。

  • 需求分析和系统设计:数据流向图可以帮助分析人员理解需求,识别数据的来源、流向和处理过程,从而进行系统的设计和规划。
  • 流程优化和改进:通过绘制数据流向图,可以查看和分析数据在系统中的流动路径,找到可能存在的瓶颈、冗余和低效的环节,以便优化和改进业务流程。
  • 故障排查和问题定位:当系统出现故障或问题时,数据流向图可以帮助定位问题所在,追踪数据在系统中的流动和处理过程,从而更快地找到问题的根源。
  • 系统集成和接口设计:对于需要与其他系统进行集成或交互的系统,数据流向图可以清晰地呈现数据的输入和输出,有助于设计和定义系统间的接口和数据传递方式。
  • 系统文档和沟通工具:数据流向图可以作为系统的文档和视觉工具,以便于沟通和交流系统的数据处理过程,帮助各方理解系统的工作原理和数据流动情况。

  • 作为系统文档:数据流图可以作为系统的一部分文档,记录和描述系统中的关键数据流程和组件。
  • 作为沟通工具:数据流图可以用来与不同角色的团队成员、利益相关者或客户交流和共享信息,帮助大家理解系统的运作和设计。
  • 作为培训工具:数据流图可以用于培训新成员或用户,帮助他们了解系统的基本流程和数据传递。
  • 作为审计工具:数据流图可以用于审计系统的安全性和合规性,识别潜在的数据泄漏或违规行为。

2.2 常见的数据流图元素及其标准符号

  • 实体/角色(Entity/Agent):代表系统的外部实体,如用户、部门等。标志为一个简单的方框,可在内部加上实体的名称。
  • 数据流(Data Flow):代表数据在不同实体和进程之间流动的路径。标志为一根带箭头的线,箭头指向数据的流向。
  • 进程/转换(Process/Transformation):代表对数据的处理或转换过程。标志为一个圆角矩形,内部可以注明进程的名称。
  • 数据库(Data Store):代表数据在系统中的持久存储,如数据库、文件等。标志为一个长方形,两条竖线表示存储的位置。

2.3 画好数据流图的步骤

  • 确定系统范围:明确数据流图所描述的系统或过程的边界。确定主要的实体/角色、数据流、进程/转换、数据存储、外部实体等。
  • 识别实体/角色:确定系统中的实体或角色,它们是与系统进行交互的外部对象。这些实体可以是人员、组织或其他系统。
  • 识别数据流:确定系统中的数据流,它们代表在实体、过程和存储之间流动的信息。标识每个数据流的名称和描述。
  • 确定进程/转换:定义系统中的进程或转换,表示数据流的处理过程。标识每个进程的名称和描述,确定进程之间的关系。
  • 识别数据存储:确定系统中的数据存储,表示数据流被存储或提供给处理过程的位置。标识每个数据存储的名称和描述。
  • 确定外部实体和数据库:识别与系统交互的外部实体和系统的数据库。在数据流图中标识它们,以显示数据流的起点和终点。
  • 画图:使用适当的符号和图形来表示实体、数据流、进程、数据存储和外部实体。连接它们以显示数据流的流向和处理过程。
  • 评审和改进:与相关人员一起评审数据流图,确保其准确反映了系统或过程的需求和流程。根据反馈进行修改和改进。

注:相关核心内容整理来源网上资料整合

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

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

相关文章

设计模式 18 迭代器模式 Iterator Pattern

设计模式 18 迭代器模式 Iterator Pattern 1.定义 迭代器模式 (Iterator Pattern) 是一种行为型设计模式,它提供了一种访问集合元素的标准方法,而无需暴露集合的内部表示。 提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该…

B树与B+树区别

B树和B树是常见的数据库索引结构,都具有相较于二叉树层级较少,查找效率高的特点,它们之间有以下几个主要区别: 1.节点存储数据的方式不同 B树的叶子结点和非叶子节点都会存储数据,指针和数据共同保存在同一节点中B树…

vue 引入 emoji 表情包

vue 引入 emoji 表情包 一、安装二、组件内使用 一、安装 npm install --save emoji-mart-vue二、组件内使用 import { Picker } from "emoji-mart-vue"; //引入组件<picker :include"[people,Smileys]" :showSearch"false" :showPreview&q…

YAML详情

一、kubernetes支持对象 Kubernetes支持YAML和JSON格式管理资源对象 JSON格式&#xff1a;主要用于api接口之间消息的传递YAML格式&#xff1a;用于配置和管理&#xff0c;YAML是一种简洁的非标记性语言&#xff0c;内容格式人性化&#xff0c;较易读 二、YAML语法格式注意点 …

微信小程序开发 tabbar组件常见问题

一、 tabbar不显示问题 问题 刚开始我在app.json中配置了下面的代码&#xff0c;但tabbar并没有显示。代码如下&#xff1a; "tabBar": {"custom": true,"color": "#7A7E83","selectedColor": "#3cc51f","…

C++ | Leetcode C++题解之第113题路径总和II

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<vector<int>> ret;unordered_map<TreeNode*, TreeNode*> parent;void getPath(TreeNode* node) {vector<int> tmp;while (node ! nullptr) {tmp.emplace_back(node->val);node …

单点登录与JWT

JWT:JSON Web Token JWT的作用是用户授权&#xff08;Authorization&#xff09;,而不是用户的身份认证&#xff08;Authentication&#xff09; 授权&#xff08;Authorization&#xff09;vs认证&#xff08;Authentication&#xff09; 用户认证指的是使用用户名、密码来…

pytest:指定测试用例执行顺序

在自动化测试中&#xff0c;测试用例的执行顺序有时对测试结果具有重要影响。本文将介绍如何在pytest框架中使用pytest-ordering插件以及Collection hooks来控制测试用例的执行顺序。 方式1&#xff1a; 使用pytest-ordering插件控制执行顺序 1.1 安装pytest-ordering插件 首…

XShell-连接-Centos 7

XShell 连接Centos 7 一.准备 安装XShell XShell下载地址&#xff1a; 在虚拟机上安装Centos 7&#xff0c;具体操作自行学习 二.Centos 7的准备 1.网络适配器修改为NAT 2.获取IP 输入命令&#xff1a; ip addr我的Centos 7对外IP为192.168.174.129 三.XShell连接Cento…

设计模式:适配器模式(Adapter)

设计模式&#xff1a;适配器模式&#xff08;Adapter&#xff09; 设计模式&#xff1a;适配器模式&#xff08;Adapter&#xff09;模式动机模式定义模式结构时序图模式实现在单线程环境下的测试在多线程环境下的测试模式分析优缺点适用场景应用场景应用实例适配器模式和代理模…

新书推荐:7.1 do while语句

本节必须掌握的知识点&#xff1a; 示例二十二 代码分析 汇编解析 ■do while语句其语法形式&#xff1a; do{ 语句块; }while(表达式) ■语法解析&#xff1a; ●执行do循环体内的语句块&#xff1b; ●判断while语句里的表达式&#xff0c;表达式为真继续下次循环&#…

上位机图像处理和嵌入式模块部署(f103 mcu运行freertos)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 mcu一般有两个用途,一个是控制,一个是非控制。控制类的应用一般要求实时性比较高,什么时候做什么,都是有严格的时间要求的。而非控制类的应用,则要求实现尽可能多的功能,比如…

PanTools v1.0.25 多网盘批量管理工具 批量管理、分享、转存、重命名、复制...

一款针对多个热门网盘的文件管理、批量分享、批量转存、批量复制、批量重命名、批量链接检测、跨账号移动文件、多账号文件搜索等&#xff0c;支持不同网盘的不同账号的资源文件操作。适用于网站站长、资源爱好者等&#xff0c;对于管理名下具有多个网盘多个账号具有实用的效果…

2024.05.26 第 399 场周赛

Leetcode 第 399 场周赛 优质数对的总数 I Leetcode 优质数对的总数 I 给你两个整数数组 nums1 和 nums2&#xff0c;长度分别为 n 和 m。同时给你一个正整数 k。 如果 nums1[i] 可以被 nums2[j] * k 整除&#xff0c;则称数对 (i, j) 为 优质数对&#xff08;0 < i < n…

React自定义Componment和State深层次理解-07

本节主要从底层原理上分析下React开发相关的内容和注意事项&#xff0c;本节会围绕使用展开&#xff0c;而非源码讲解。 Componment详解 什么是组件 在 MVVM架构出现之前&#xff0c;组件主要分为两种。 狭义上的组件&#xff0c;又称为 UI 组件&#xff0c;比如 Tabs 组件、…

PC端应用订阅SDK接入攻略

本文档介绍了联想应用联运sdk接入操作指南&#xff0c;您可在了解文档内容后&#xff0c;自行接入应用联运sdk。 1. 接入前准备 1. 请先与联想商务达成合作意向。 2. 联系联想运营&#xff0c;提供应用和公司信息&#xff0c;并获取商户id、app id、key&#xff08;公私钥、…

Linux定时计划

定时计划 一、计划任务种类 突发性&#xff1a;临时决定只执行一次的任务 at&#xff1a;处理执行一次任务就结束定时性&#xff1a;每隔一定时间需要重复执行此命令 crontab&#xff1a;指定任务&#xff0c;按照设定的周期一直循环执行二、作用 定时任务可以用于自动备份…

如何将Windows PC变成Wi-Fi热点?这里提供详细步骤

序言 Windows 10和Windows 11都有内置功能,可以将你的笔记本电脑(或台式机)变成无线热点,允许其他设备连接到它并共享你的互联网连接。以下是操作指南。 由于Windows中隐藏的虚拟Wi-Fi适配器功能,你甚至可以在连接到另一个Wi-Fi网络或无线路由器时创建Wi-Fi热点,通过另…

Navicat 连接 OceanBase 快速入门 | 社区版

Navicat Premium&#xff08;16.1.9或更高版本&#xff09;正式支持 OceanBase全线数据库产品。OceanBase为现代数据架构打造的开源分布式数据库。兼容 MySQL 的单机分布式一体化国产开源数据库&#xff0c;具有原生分布式架构&#xff0c;支持金融级高可用、透明水平扩展、分布…

分布式音乐播放器适配了Stage模型

OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;应用开发自API 8及其更早版本一直使用的是FA模型进行开发。FA模型是Feature Ability的缩写&#xff0c;它和PA&#xff08;Particle Ability&#xff09;两种类型是过往长期推广的术语&#xff0c;深入人心…