一文通关数据仓库

数据仓库(Data Warehouse,简称数仓、DW),是一个用于存储、分析、报告的数据系统。数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support)。

数据仓库本身并不“生产”任何数据,其数据来源于不同外部系统;同时数据仓库自身也不需要“消费”任何的数据,其结果开放给各个外部应用使用,这也是为什么叫“仓库”,而不叫“工厂”的原因。

在这里插入图片描述

数仓分层的思想和标准

数据仓库的特点是本身不生产数据,也不最终消费数据。所以数仓分层是由于数据流入流出数仓的过程以及数仓的特点决定的。数据分层每个企业根据自己的业务需求可以分成不同的层次,但是最基础的分层思想,理论上数据分为三个层,操作型数据层(ODS)、数据仓库层(DW)和数据应用层(DM)。

1、ODS层-操作数据存储

ODS全称是Operational Data Store,即操作数据存储;ODS层是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的ETL之后,装入本层;一般来说ODS层的数据和源系统的数据是同构的,主要目的是简化后续数据加工处理的工作。从数据粒度上来说ODS层的数据粒度是最细的。ODS层的表通常包括两类,一个用于存储当前需要加载的数据,一个用于存储处理完后的历史数据。历史数据一般保存3-6个月后需要清除,以节省空间。但不同的项目要区别对待,如果源系统的数据量不大,可以保留更长的时间,甚至全量保存;数据在装入本层前需要做以下工作:去噪、去重、提脏、业务提取、单位统一、砍字段、业务判别。

2、DW层-数据仓库层

DW全称是Data Warehouse,即数据仓库,是数据仓库的主体。DW层将ODS层中获得的数据按照主题建立各种数据模型。在这里,我们需要了解四个概念:维度(dimension)、事实(Fact)、指标(Index)和粒度( Granularity)。但是我们需要知道DW的数据应该是由ODS(各业务系统数据)的数据经过清洗、合并后得到的,其主要分为事实表(FACT)和维度表(DIM)。在DW层,同一个属性,只能被一张表唯一定义,即维度一致性。且DW所有的数据理论上均应该可以直接使用,而不用考虑其数据来源、数据统计口径、数据是否正确。

数据仓库层从上到下,又可以分为3个层:数据细节层DWD、数据中间层DWM、数据服务层DWS。

1)DWD层-数据明细层

DWD层的关键工作包括以下内容:业务相关表关联、数据清洗、数据口径统一。DWD层最关键的工作是将ODS层数据按照业务主题进行重组,存储一致的、准确的、干净的数据,但是需要保留和明细数据意愿的数据维度。

a.数据清洗:ODS层数据装入DWD仓层时,需要进行数据清洗,比如:清除无效数据(删除业务系统中明显偏离正常水平的数据)、清除重复数据(业务系统数据表的主键、用户ID等信息只保留一份即可)、空值处理(后续数据应用中,null值处理难度大,一般会将null值调整为0);

b.数据口径统一:DWD层数据需要进行数据规整,当某一字段在各个业务系统的口径不统一时,我们需要和业务团队进行充分沟通,对以哪一个业务系统口径为标准达成统一,再形成DWD层的数据字典;

2)DWM层-数据中间层

该层会在DWD层的数据基础上,对数据做轻度的聚合操作,生成一系列的中间表,提升公共指标的复用性,减少重复加工处理数据。简单来说,就是对通用的维度进行聚合操作,算出相应的统计指标,方便复用。

3)DWS层-数据服务层

该层数据表会相对比较少,大多都是宽表(一张表会涵盖比较多的业务内容,表中的字段较多)。按照主题划分,如订单、用户等,生成字段比较多的宽表,用于提供后续的业务查询,OLAP分析,数据分发等。

事实表 (Fact Table)

事实表是指存储有事实记录的表,比如系统日志、销售记录等。事实表的记录在不断地增长,比如电商的商品订单表,就是类似的情况,所以事实表的体积通常是远大于其他表。

维度表(Dimension Table)

维度表或维表,有时也称查找表(Lookup Table),是与事实表相对应的一种表;它保存了维度的属性值,可以跟事实表做关联,相当于将事实表上经常重复出现的属性抽取、规范出来用一张表进行管理。维度表主要是包含两个部分:

●高基数维度数据:一般是用户资料表、商品资料表类似的资料表,数据量可能是千万级或者上亿级别

●低基数维度数据:一般是配置表,比如枚举字段对应的中文含义,或者日期维表等;数据量可能就是个位数或者几千几万。

常见的维度表有:日期表(存储与日期对应的周、月、季度等的属性)、地点表(包含国家、省/州、城市等属性)等。

3、DM层-数据应用层

DM全称为Date Market,即数据集市或宽表。DM层为面向最终应用的主题层,一般依据前端报表/业务包需求进行设计,所以DM层表不需要考虑复用,每一张DM表仅为一张报表所服务;我们需要对DWS层的基础指标进行加工,比如:①基础指标关联维度表;②多个基础指标计算得到衍生指标,并且将报表中需要应用的多个指标都梳理至同一张数据表内,生成字段比较多的宽表,用于提供后续的业务查询,其主要作用是提升报表查询性能。

数仓搭建的项目流程

项目流程分为:需求收集阶段、需求分析阶段、数仓建模阶段、数据处理阶段、项目上线阶段。

1、需求收集阶段

调研清晰领导层、业务团队的项目目标和原始需求场景,以及公司内已有的标书需求、报表原型和数据字典。

2、需求分析阶段

1)指标体系:根据报表原型及标书,统计指标列表、指标计算的业务逻辑。

2)确定指标类型及维度:针对步骤一中需要的指标进行类型区分,并梳理指标统计维度。

3)确定指标维度与底层表关系:根据指标计算逻辑找到关联的数据库对应的表、字段。

3、数仓建模阶段

  1. 整理业务数据模型

熟悉业务系统中的业务表模型,比如事实表需要关联哪些维度表等;

2)初步规划数仓架构

根据指标体系、指标维度与底层表关系、业务数据模型,初步创建数仓架构,包括但不限于:

a. 数仓需要包括几层;

b.每层数据的数据特点,数据汇总程度;

c.聚合表、事实表、维度表关联模型。

3)确定数仓架构

根据初步规划的数仓架构,初始化测试结果表,提供给报表开发工程师,验证以下3点:

a.数仓架构是否可以跑通?

b.数据是否准确?

c. 数仓架构是否具有扩展性?

  1. 数仓架构建模

数仓架构建模,包括CDM概念模型、PDM物理模型以及数据库实体表。

4、数据处理阶段

1)ETL任务设计:根据数仓架构中实体表创建ETL任务,逻辑上数仓中的每张数据表都对应一个ETL任务,数据表包括:事实表、维度表、聚合表等。

2)调度配置

项目上线阶段

数据校验、反馈问题修正、交付项目清单相关文档

数据仓库的类型

1."自上而下"建立数仓(数仓→数据集市)

将不同的数据源,都整合到一个企业级的数仓里

1)介绍

自上而下建立数据仓库(DW-DM)又称为范式建模,之所以称为范式建模,是因为这种方式构建的数据仓库,信息存储是符合第三范式。为什么需要存储信息满足第三范式?因为所有的表都是先抽取到数仓里面,在进行维度建模。如果数据不满足第三范式的话,数据维度建模数据处理差,处理成本太大。

2)优劣势

优势

●企业对数据有一个真正的企业范围级的观察;

●粒状的数据,可以满足不同分析角色的分析需求,支撑不同方式的分析过程;

●能够从整体上把握数据仓库的规模、粒度的级别和元数据管理,是一种系统的解决方法;

●易于维护,高度集成。

劣势

●部署周期较长

●投入的资源比较大

●数据化建设的效果不能立刻展现;

●结构死板,缺乏灵活性,因为整个组织的共同数据模型达到一致是很困难的。

3)适用场景

a.公司层面有大量资源投入和部门间协调推进能力,属于公司自上而下发起的数据建设;

b.对性能要求没那么高,可以接受查询性能的不足。

c.有一些更高层次的要求,要求底层数据的一致性,无数据冗余,方便维护等

2.自下而上建立数据仓库(维度建模)

1)介绍

别名:维度建模、维度数据仓库、总线体系结构、结构化数据集市、虚拟数据集市。维度建模源自数据集市,主要面向分析场景。维度建模是一种面向用户需求的、容易理解的、访问效率高的建模方法。维度建模通常以星型模式的方式构建,不过有时也会加入一些雪花模型在里面。

三大数据模型:星型模型、雪花模型、星座模型

2)优劣势

优势:

●性能好,通过对各个维的预处理,能够极大地提升数据仓库的处理能力;

●比较直观,不需要经过特别的抽象处理即可完成维度建模,通过紧紧围绕业务模型,可直观地反映出业务模型中的业务问题;

●灵活性,花费低,能够得到快速的投资回报。

劣势:

●数据孤岛现象。不能保证各个数据集市数据来源的一致性和准确性

●数据抽取负担。当数据集市数量庞大时,抽取原始数据的负担会比较大;

●变更不可传递。当多个数据集市需要做一些相关或类似的变更时,需要在多个数据集市都要做一遍,会增加工作量和出错率;

●缺乏扩展性。当需要建立一个新的数据集市是可能还要从头建起。

3)适用场景

a.追求卓越的性能,希望能够有快速的查询和计算能力;

b.希望数据建设项目快速上线,短期内不希望有大量的投入;

c.能够接受后续比较高的维护成本,以及维度建模长期发展的一些劣势:数据孤岛、数据抽取负担、变更不可传递、缺乏扩展性的缺点。

FineDataLink——小到数据库对接、API对接、行列转换、参数设置,大到任务调度、运维监控、实时数据同步、数据服务API分享,另外它可以满足数据实时同步的场景,应有尽有,功能很强大。如果您需要进行数据仓库建设,帆软FDL会是您的最优解。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值