当前位置: 首页 > news >正文

数据治理入门

处理模式

模式名称常见场景常见框架
批处理夜间几个小时,无人值守hive spark datax
流处理7*24H一直运行,无人值守maxwell, flink, flume, kafka
即席处理人机交互接口访问 web页面

数据治理的意义

  1. 数据质量低:数据错误,不准确或不一致,导致决策依据不可靠
  2. 数据孤岛:各部门和系统之间的数据无法有效整合,形成数据孤岛,降低数据的利用价值和沟通效率(数据负责人走了之后无人可以看懂)。
  3. 数据安全风险:缺乏有效的数据保护措施
  4. 规范性问题:在数据使用、存储和传输过程中,可能无法满足规范性要求,增加数据的理解难度,降低利用率
  5. 计算存储的冗余

数据治理的方案

1.数据中台

提供一个大而全的平台,将数据建模、数据开发、数据运营、指标可视化…都放到一个平台中。优点是好用,缺点是开发周期长,租用费用贵。

2.数据治理考评

通过设定各种治理项指标,对指标进行考核评分排名,结果导向倒逼开发人员不断改进数据治理的各项问题。优点:成本低,直击问题本身。缺点:缺少工具。
主要指标:

  1. 规范
    • 有技术owner
    • 有业务owner
    • 表名合规
    • 表有备注
  2. 存储
    • 生命周期合理
    • 是否空表
    • 存在相似表
  3. 计算
    • 长期五产出
    • 长期无访问
    • 计算中有错误
    • 简单加工:sql语句中没有任何join、group by、union函数的复杂计算
    • 计算中存在数据倾斜
  4. 质量
    • 表产出时时效监控
    • 表产出数据量监控
  5. 安全
    • 未明确安全等级
    • 目录文件数据访问权限超过建议值

架构

数据来源:

  1. hive元数据:字段名、表名、备注
  2. hdfs元数据:访问权限、访问写入时间、数据量大小
  3. dolphinscheduler调度器:sql定义,运行时间
  4. spark的运行日志,分析数据倾斜
  5. 手工录入信息:owner, 安全级别,生命周期

在这里插入图片描述

Web服务

Spring boot

web框架前世今生

  1. 各类老框架:php \ perl \ asp \ c#(.net 必须跑在window系统)
  2. ssh框架 = struts(1,2) + spring + hibernate
  3. ssm框架 = springmvc + spring + mybatis(ibatis)
  4. springboot = ssm的基础上包装的便于使用的框架
    • 特点
      • 节省大量配置,约定大于配置
      • 内置web服务容器,打包部署服务非常方便
      • 非常方便整合各种第三方框架,starter机制对接
    • 和java学习时的不同点
      • main函数只是启动程序服务器,业务逻辑在其他函数中
      • 程序逻辑是MVC三层架构的

为什么要分层?

  1. 提高代码的复用,减少重复代码的反复编写
  2. 结构清晰,方便定位问题的出错位置

三层结构
使用规范:

  • 尽量逐层调用
  • 控制层:每个类一般代表一种业务请求,每个方法代表某个特定的业务请求
  • 服务层:每个类代表一种业务操作
  • 数据层:每个类代表一张表,每个方法代表对该表的一跳SQL语句

SpringBoot项目特点

  1. 本质上还是一个maven的java项目
  2. 预加入了一些依赖
  3. 多了一个配置文件application.properties
  4. 多了一个启动程序Application, 主方法,直接运行即可

参数

在这里插入图片描述

  1. 路径查找使用@RequestMapping(“/”), 用来标记类或方法
  2. 定义参数的方法:
    • @RequestParam("name")来定义参数,使用@RequestParam("name")来获取参数。一般用于查询,赋予多个条件
    • @RequestMapping("/info/{id}"), 使用@PathVariable("id")放在函数列表中来获取参数。用于依靠一个唯一值参数进行查询
  3. 请求方式request method
    • get查询: 实际上的读操作,@GetMapping
    • post写入,非幂等性写入,实际上的写操作,@PostMapping
    • put写入,幂等性写入,基本上不用
    • delete删除,偶尔会用
  4. 请求体参数:发送时使用postman工具将数据写出Json格式放入到请求体中,使用@RequestBody来获取post发送过来的数据。
  5. 如果需要把键值对参数封装到一个bean对象中,可以在参数列表中什么注解都不加,spring boot会帮你自动封装数据信息到bean对象中。
  6. 状态码
    • 1xx:访问中
    • 2xx:访问成功
    • 3xx:重定向,跳转
    • 4xx:
      • 400: bad request 参数个数或类型不匹配
      • 403:禁止访问,权限问题或IP被禁
      • 404:not found 路径资源不匹配
      • 405:method not allowed 请求方式不匹配
    • 5xx:
      • 500: 服务器内部错误,查看java console异常
    • xxx: 自定义状态码

容器与组件

Spring 容器启动时:

  1. 以单例饿汉方式的方式创建所有组件,启动服务器时就创建,常见的组件为@RestController, @Service, @Mapper, @Component
  2. 会扫描所有的@Autowired,会自动装配所有组件的引用

相关文章:

数据治理入门

处理模式 模式名称常见场景常见框架批处理夜间几个小时,无人值守hive spark datax流处理7*24H一直运行,无人值守maxwell, flink, flume, kafka即席处理人机交互接口访问 web页面 数据治理的意义 数据质量低:数据错误,不准确或不…...

uniapp 微信小程序登录 新手专用 引入即可

预览 第一步导入插件 在引入的页面的登录按钮下拷贝一下代码 <template><view class"content"><button type"primary" click"login">微信登录</button></view><TC-WXlogin :wxloginwxlogin /> </templ…...

PMCW体制雷达系列文章(4) – PMCW雷达之抗干扰

说明 本文作为PMCW体制雷达系列文章之一&#xff0c;主要聊聊FMCW&PMCW两种体制雷达的干扰问题。事实上不管是通信领域还是雷达领域&#xff0c;对于一切以电磁波作为媒介的信息传递活动&#xff0c;干扰是无处不在的。近年来&#xff0c;随着雷达装车率的提高&#xff0c;…...

Gin框架源码解析

概要 目录 Gin路由详解 Gin框架路由之Radix Tree 一、路由树节点 二、请求方法树 三、路由注册以及匹配 中间件含义 Gin框架中的中间件 主要讲述Gin框架路由和中间件的详细解释。本文章将从Radix树&#xff08;基数树或者压缩前缀树&#xff09;、请求处理、路由方法树…...

MacOS设置JAVA_HOME环境变量

首先先查看一下&#xff0c;系统当前使用的java是谁&#xff0c;可以使用/usr/libexec/java_home命令 % /usr/libexec/java_home /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home检查一下这个路径下的文件&#xff0c;发现这是一个jre的目录。加上-V参数看…...

闭眼检测实现

引言 这段代码是一个实时眼睛状态监测程序&#xff0c;可以用于监测摄像头捕获的人脸图像中的眼睛状态&#xff0c;判断眼睛是否闭合。具体应用实现作用说明如下&#xff1a; 1. 实时监测眼睛状态 通过摄像头捕获的实时视频流&#xff0c;检测人脸关键点并计算眼睛的 EAR&a…...

系列六、Java垃圾回收器主要有哪些?

一、Java垃圾回收器主要有哪些? UseSerialGC、UseParallelGC、UseConcMarkSweepGC、UseParallelNewGC、UseParallelOldGC、UseG1GC...

【7】Spring Boot 3 集成组件:缓存组件 spring cache + spring data redis

目录 【7】Spring Boot 3 集成组件&#xff1a;缓存组件 spring cache spring data redis什么是缓存抽象声明式注解JSR-107对应SpEL上下文数据 引入依赖cache 支持的缓存类型缓存类型配置NONESIMPLEREDIS自定义配置 CAFFEINE Hazelcast...总结 个人主页: 【⭐️个人主页】 需要…...

说说Java中的不可重入锁

什么是锁&#xff1f; 简单来讲在Java中&#xff0c;锁是一种用于并发控制的机制&#xff0c;用于保护共享资源&#xff0c;防止多个线程同时访问或修改数据导致的数据不一致性和线程安全问题。在Java虚拟机&#xff08;JVM&#xff09;中&#xff0c;每个对象都有一个相关联的…...

C++学习 --vector

目录 1&#xff0c; 什么是vector 2&#xff0c; 创建vector 2-1&#xff0c; 标准数据类型 2-2&#xff0c; 自定义数据类型 2-3&#xff0c; 其他创建方式 3&#xff0c; 操作vector 3-1&#xff0c; 赋值 3-2&#xff0c; 添加元素 3-2-1&#xff0c; 添加元素(assi…...

Android图片涂鸦,Kotlin(1)

Android图片涂鸦&#xff0c;Kotlin&#xff08;1&#xff09; import android.content.Context import android.graphics.Canvas import android.graphics.Color import android.graphics.Paint import android.graphics.Path import android.graphics.PointF import android.…...

upload-labs(1-17关攻略详解)

upload-labs pass-1 上传一个php文件&#xff0c;发现不行 但是这回显是个前端显示&#xff0c;直接禁用js然后上传 f12禁用 再次上传&#xff0c;成功 右键打开该图像 即为位置&#xff0c;使用蚁剑连接 连接成功 pass-2 源码 $is_upload false; $msg null; if (isse…...

《 机器人基础 》期末试卷(A)

一、填空题&#xff08;30分&#xff0c;每空2分&#xff09; 1. 按照相机的工作方式&#xff0c;机器人常用相机分为1&#xff09;__ 单目摄像头 2&#xff09;__ 双目摄像头 _ 3&#xff09;_深度摄像头_ 三类。 2. 度量地图强调…...

Azure Machine Learning - Azure AI 搜索中的矢量搜索

矢量搜索是一种信息检索方法&#xff0c;它使用内容的数字表示形式来执行搜索方案。 由于内容是数字而不是纯文本&#xff0c;因此搜索引擎会匹配与查询最相似的矢量&#xff0c;而不需要匹配确切的字词。本文简要介绍了 Azure AI 搜索中的矢量支持。 其中还解释了与其他 Azure…...

3 redis实现一个消息中间件

使用list实现一个队列&#xff0c;可以从左侧入队&#xff0c;也可以从右侧入对 即可以从左侧读取&#xff0c;也可以从右侧读取 1、Lindex Lindex 命令用于通过索引获取列表中的元素 也可以使用负数下标&#xff0c;以 -1 表示列表的最后一个元素&#xff0c; -2 表示列表的…...

js添加dom到指定div之后,并给添加的dom类名,然后设置其样式,以及el-popover层级z-index过高问题解决。

遇到一个需求,Vue项目做一个表格,要求表头与表格内容分开,如下效果所示,表头与表格有个高度间隔边距(箭头所示),因为默认我们的el-table的表头与内容是一起的: 思路:通过querySelector获取el-table__header-wrapper元素,通过createElement创建一个div,通过 newElem…...

C语言结构体

#include <stdio.h> #include <string.h> #include <stdlib.h>//struct Student_s { // int num; // char name[20]; // char gender; // int age; // float Chinese; // float Math; // float English; // char addr[30]; //}; //最后的分号一定要写&#x…...

【Python大数据笔记_day10_Hive调优及Hadoop进阶】

hive调优 hive官方配置url: Configuration Properties - Apache Hive - Apache Software Foundation hive命令和参数配置 hive参数配置的意义: 开发Hive应用/调优时&#xff0c;不可避免地需要设定Hive的参数。设定Hive的参数可以调优HQL代码的执行效率&#xff0c;或帮助定位问…...

React经典初级错误

文章 前言错误场景问题分析解决方案后言 前言 ✨✨ 他们是天生勇敢的开发者&#xff0c;我们创造bug&#xff0c;传播bug&#xff0c;毫不留情地消灭bug&#xff0c;在这个过程中我们创造了很多bug以供娱乐。 前端bug这里是博主总结的一些前端的bug以及解决方案&#xff0c;感兴…...

C# System.Array.CopyTo() 和 System.Array.Clone() 有什么区别

System.Array.CopyTo() 和 System.Array.Clone() 是用于数组复制的两种不同方法&#xff0c;它们在实现和用途上有一些区别。 System.Array.CopyTo() 方法&#xff1a; CopyTo() 方法用于将数组的元素复制到另一个数组。它是 Array 类的实例方法&#xff0c;可以用于复制一个…...

电-热-气综合能源系统协同优化Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f447; 关注我领取海量matlab电子书和数学建模资料&#x1f34a;个人信条&#xff1a;格物致知,完整Matl…...

【架构实战】读写分离中间件对比(ShardingSphere/MyCat)

一、为什么需要读写分离 在大多数互联网应用中&#xff0c;读操作远多于写操作&#xff1a; 读请求&#xff1a;70-80% 写请求&#xff1a;20-30%单机数据库的问题&#xff1a; 主库&#xff1a;处理所有写请求 部分读请求↓ 连接池耗尽 → 响应变慢 → 用户投诉解决方案&a…...

Qwen3-TTS使用避坑指南:新手常犯的5个错误及解决方法

Qwen3-TTS使用避坑指南&#xff1a;新手常犯的5个错误及解决方法 语音合成技术正在改变我们与数字世界的交互方式&#xff0c;而Qwen3-TTS-12Hz-1.7B-CustomVoice作为一款支持多语言的先进语音合成模型&#xff0c;为用户提供了丰富的语音风格选择。但在实际使用过程中&#x…...

【100%通过率】华为OD机试真题2026双机位C卷 C++ 实现【红黑图】

目录 题目 思路 Code 题目 众所周知红黑树时一种平衡树,它最突出的特性就是不能有两个相连的红色节点。那我们定义一个红黑图,也就是一张无向图中,每个节点可能是红黑两种颜色,但我们保证没有两个相邻的红色节点。 现在给一张未染色的无向图,只能染红黑两种颜色,问总共…...

EVA-02模型Ubuntu服务器部署全流程详解

EVA-02模型Ubuntu服务器部署全流程详解 最近有不少朋友在问&#xff0c;怎么把EVA-02这个强大的多模态模型部署到自己的Ubuntu服务器上。确实&#xff0c;相比于在本地电脑上跑&#xff0c;放到服务器上能获得更稳定的性能和更长的运行时间&#xff0c;特别适合用来做API服务或…...

别只盯着树莓派!聊聊GEC6818这块国产ARM板在嵌入式学习中的独特优势与避坑指南

国产ARM开发板GEC6818实战指南&#xff1a;从硬件解析到智能家居项目落地 在嵌入式开发领域&#xff0c;树莓派几乎成了入门者的默认选择&#xff0c;但这款英国产的单板计算机真的适合所有学习场景吗&#xff1f;当我第一次接触到GEC6818这块国产ARM开发板时&#xff0c;它的8…...

利用卷积神经网络原理优化万象熔炉·丹青幻境的图像生成效果

利用卷积神经网络原理优化万象熔炉丹青幻境的图像生成效果 最近在玩一个叫“万象熔炉丹青幻境”的AI图像生成工具&#xff0c;效果挺惊艳的&#xff0c;但有时候总觉得生成的图片差点意思——要么细节不够清晰&#xff0c;要么风格不是我想要的。这让我想起了以前做计算机视觉…...

物联网毕业设计本科生开题指导

【单片机毕业设计项目分享系列】 &#x1f525; 这里是DD学长&#xff0c;单片机毕业设计及享100例系列的第一篇&#xff0c;目的是分享高质量的毕设作品给大家。 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的单片机项目缺少创新和亮点…...

万象熔炉 | Anything XL详细步骤:错误提示‘low VRAM’的5种应对策略

万象熔炉 | Anything XL详细步骤&#xff1a;错误提示‘low VRAM’的5种应对策略 1. 工具简介与显存挑战 万象熔炉 | Anything XL是一款基于Stable Diffusion XL Pipeline开发的本地图像生成工具&#xff0c;它最大的特点是支持直接加载safetensors单文件权重&#xff0c;无需…...

Jenkins使用手册

前提是Jenkins已经部署好在服务器上了&#xff0c;这个手册适用于Jenkins建一个新项目档案点击New Item创建一个新的项目档案点击ok后进入以下配置页面建议勾选第一个选项 Discard builds其他选项的含义这就是让 Jenkins 知道“去哪里拿代码”的核心关卡。去git还是svn厂库去拉…...