- 博客(90)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 最强最全面的数仓建设规范指南
目录一、数据模型架构原则1. 数仓分层原则2. 主题域划分原则3. 数据模型设计原则二、数仓公共开发规范1. 层次调用规范2. 数据类型规范3. 数据冗余规范4. NULL字段处理规范5. 指标口径规范6. 数据表处理规范7. 表的生命周期管理三、数仓各层开发规范1. ODS层设计规范2. 公共维度层设计规范3. DWD明细层设计规范4. DWS公共汇总层设计规范四、数仓命名规范1. 词根设计规范2. 表命名规范3. 指标命
2021-11-11 12:05:33
4232
18
原创 大数据之数据治理体系全面指南
数据治理是企业数据建设必不可少的一个环节。好的数据治理体系可以盘活整条数据链路,最大化保障企业数据的采集存储计算和使用过程的可控和可追溯。如何构建企业数据治理体系?企业数据治理过程需要注意哪些问题?总体而言,不能一口一个胖子,路要一步一步地走。下面我将结合企业级数据治理经验,详细介绍从0到1搭建数据治理体系全流程,帮你梳理数据治理的主要内容以及过程中会遇到的哪些坑。
2024-06-22 19:39:04
822
原创 Hive知识体系保姆级教程
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。其本质是将SQL转换为MapReduce/Spark的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce/Spark的任务的工具,甚至更进一步可以说hive就是一个MapReduce/Spark Sql的客户端为什么要使用hive?
2024-06-09 17:48:44
1123
原创 数仓建设中最常用模型--Kimball维度建模详解
数仓建模首推书籍《数据仓库工具箱:维度建模权威指南》,。先来介绍下此书,此书是基于作者 60 多年的实际业务环境而总结的经验及教训,为读者提供正式的维度设计和开发技术。面向数仓和BI设计人员,书中涉及到的内容非常广泛,围绕一系列的商业场景或案例研究进行组织。强烈建议买一本实体书研究,反复通读全书至少三遍以上,你的技术将会有质的飞跃。数仓工具箱。
2023-07-09 19:08:34
659
原创 如何保障数仓数据质量?
有赞数据报表中心为商家提供了丰富的数据指标,包括30+页面,100+数据报表以及400+不同类型的数据指标,它们帮助商家更合理、科学地运营店铺,同时也直接提供分析决策方法供商家使用。并且,每天在跑的底层任务和涉及的数据表已经达到千级别。面对如此庞大的数据体系,作为测试如何制定质量保障策略呢?这篇文章将从:1.有赞数据链路 、2.数据层测试、 3.应用层测试、 4.后续规划这四个方面展开。首先介绍有赞的数据总体架构图:自顶向下可以大致划分为应用服务层、数据网关层、应用存储层、数据仓库,并且作业开发、元数据管理
2022-06-07 16:42:09
2295
9
原创 Hive参数与性能企业级调优
Hive作为大数据平台举足轻重的框架,以其稳定性和简单易用性也成为当前构建企业级数据仓库时使用最多的框架之一。但是如果我们只局限于会使用Hive,而不考虑性能问题,就难搭建出一个完美的数仓,所以Hive性能调优是我们大数据从业者必须掌握的技能。本文将给大家讲解Hive性能调优的一些方法及技巧。为什么都说性能优化这项工作是比较难的,因为一项技术的优化,必然是一项综合性的工作,它是多门技术的结合。我们如果只局限于一种技术,那么肯定做不好优化的。下面将从多个完全不同的角度来介绍Hive优化的多样性,我们先来一起感
2022-06-06 11:50:44
740
1
原创 详解HBase读写性能优化
一、HBase 读优化1. HBase客户端优化和大多数系统一样,客户端作为业务读写的入口,姿势使用不正确通常会导致本业务读延迟较高实际上存在一些使用姿势的推荐用法,这里一般需要关注四个问题:1) scan缓存是否设置合理?优化原理:在解释这个问题之前,首先需要解释什么是scan缓存,通常来讲一次scan会返回大量数据,因此客户端发起一次scan请求,实际并不会一次就将所有数据加载到本地,而是分成多次RPC请求进行加载,这样设计一方面是因为大量数据请求可能会导致网络带宽严重消耗进而影响其他业
2022-05-10 18:49:18
1327
原创 Spark SQL底层执行流程详解
本文目录一、Apache Spark二、Spark SQL发展历程三、Spark SQL底层执行原理四、Catalyst 的两大优化完整版传送门:Spark知识体系保姆级总结,五万字好文!一、Apache SparkApache Spark是用于大规模数据处理的统一分析引擎,基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量硬件之上,形成集群。Spark源码从1.x的40w行发展到现在的超过100w行,有1400多位
2022-04-21 14:32:01
6873
7
原创 数仓建设 | ODS、DWD、DWM等理论实战(好文收藏)
本文目录:一、数据流向二、应用示例三、何为数仓DW四、为何要分层五、数据分层六、数据集市七、问题总结导读数仓在建设过程中,对数据的组织管理上,不仅要根据业务进行纵向的主题域划分,还需要横向的数仓分层规范。本文作者围绕企业数仓分层展开分析,希望对你有帮助。因文章太长,本文不是完结版,文末可获取完整PDF版从事数仓相关工作的人员都知道数仓模型设计的首要工作之一就是进行模型分层,可见模型分层在模型设计过程中的重要性,确实优秀的分层设计是一个数仓项目能否建设成功的核心要素,让数
2022-04-13 14:32:28
4991
9
原创 Spark内存管理详解
本文目录: Spark Shuffle进化史 堆内和堆外内存规划 内存空间分配 存储内存管理 执行内存管理 上百本优质大数据书籍,附必读清单(大数据宝藏)前言Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优。本文旨在梳理出 Spark 内存管理的脉络,抛砖引玉,引出读者对这个话题的深入探讨。本文中阐述的原理基..
2022-04-12 15:51:52
583
1
原创 最新大厂数据湖面试题,知识点总结
本文是一篇数据湖的面试题,同时也是数据湖知识点的讲解目录:一、什么是数据湖二、数据湖的发展三、数据湖有哪些优势四、数据湖应该具备哪些能力五、数据湖的实现遇到了哪些问题六、数据湖与数据仓库的区别七、为什么要做数据湖?区别在于?八、数据湖挑战九、湖仓一体十、目前有哪些开源数据湖组件十一、三大数据湖组件对比一、什么是数据湖本文首发于公众号【五分钟学大数据】,点击获取:数仓建设保姆级教程数据湖是一种不断演进中、可扩展的大数据存储、处理、分析的基础设施;以数据为导向,实现任意
2022-03-31 21:11:54
988
2
原创 长文详解HiveSQL执行计划
本文目录:一、前言二、SQL的执行计划 explain 的用法 explain 的使用场景 案例一:join 语句会过滤 null 的值吗? 案例二:group by 分组语句会进行排序吗? 案例三:哪条sql执行效率高呢? 案例四:定位产生数据倾斜的代码段 explain dependency的用法 案例一:识别看似等价的代码 案例二:识别SQL读取数据范围的差别 explain authorization 的用法 本文首发于公众号【五分钟学大数据
2022-03-22 10:14:19
1703
3
原创 万字详解数据仓库、数据湖、数据中台和湖仓一体
本文目录:一、前言二、概念解析 数据仓库 数据湖 数据中台 三、具体区别 数据仓库 VS 数据湖 数据仓库 VS 数据中台 总结 四、湖仓一体 目前数据存储方案 Data Lakehouse(湖仓一体) 一、前言数字化转型浪潮卷起各种新老概念满天飞,数据湖、数据仓库、数据中台轮番在朋友圈刷屏,有人说“数据中台算个啥,数据湖才是趋势”,有人说“再见了数据湖、数据仓库,数据中台已成气候”……企业还没推开数字化大门,先被各
2022-02-22 09:32:49
6966
12
原创 2022年最强大数据面试宝典(全文50000字)
此套面试题来自于各大厂的真实面试题及常问的知识点,如果能理解吃透这些问题,你的大数据能力将会大大提升,进入大厂指日可待复习大数据面试题,看这一套就够了!本文目录:一、Hadoop二、Hive三、Spark四、Kafka五、HBase六、Flink七、数仓业务方面八、算法本文PDF版文档预览如下点击获取本文PDF版:2022年最强大数据面试宝典PDF版HadoopHadoop中常问的就三块,第一:分布式存储(HDFS);第二:分布式计算框架(MapRedu.
2022-02-16 14:17:59
7168
12
原创 详解数据中台的底层架构逻辑
数据中台到底是什么,几年过去了,也一直众说纷纭。笔者认为数据中台不应该是一个单纯的系统或者是一个软件工具,而应该是一套架构、一套数据流转模式。数据中台需要采集数据作为原材料进行数据加工、数据建模,然后分门别类地储存,再根据实际的业 务场景,打造各类数据服务(含数据应用平台)从而实现对业务的赋能加速。但以上流程的实现,需要有对应的系统与产品作为支撑,那么基础的数据中台到底应该由哪些系统或者产品组成?这里我们可以先来看一下几个企业的数据中台架构。可以看出,虽然每个企业由于自身业务
2022-01-11 09:30:35
358
原创 Hive SQL优化思路
Hive的优化主要分为:配置优化、SQL语句优化、任务优化等方案。其中在开发过程中主要涉及到的可能是SQL优化这块。优化的核心思想是: 减少数据量(例如分区、列剪裁) 避免数据倾斜(例如加参数、Key打散) 避免全表扫描(例如on添加加上分区等) 减少job数(例如相同的on条件的join放在一起作为一个任务) HQL语句优化1. 使用分区剪裁、列剪裁在分区剪裁中,当使用外关联时,如果将副表的过滤条件写在Where后面,那么就会先全表关联,之后再过滤。
2021-12-28 09:12:34
976
2
原创 最强最全面的大数据SQL经典面试题(由31位小伙伴共同协作完成)
本套SQL题的答案是由许多小伙伴共同贡献的,1+1的力量是远远大于2的,有不少题目都采用了非常巧妙的解法,也有不少题目有多种解法。本套大数据SQL题不仅题目丰富多样,答案更是精彩绝伦!注:以下参考答案都经过简单数据场景进行测试通过,但并未测试其他复杂情况。本文档的SQL主要使用Hive SQL。因内容较多,带目录的PDF查看是比较方便的:最强最全面的大数据SQL经典面试题完整PDF版一、行列转换描述:表中记录了各年份各部门的平均绩效考核成绩。表名:t1表结构:a--年份..
2021-12-23 15:56:41
2678
8
原创 数仓建设保姆级教程,离线和实时一网打尽(理论+实战)
本文大纲:因内容较多,带目录的PDF查看是比较方便的,点击下方链接获取完整PDF版:数仓建设保姆级教程PDF文档一、数仓基本概念1. 数据仓库架构我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,“架构”是什么?这个问题从来就没有一个准确的答案。这里我们引用一段话:在软件行业,一种被普遍接受的架构定义是指系统的一个或多个结构。结构中包括软件的构建(构建是指软件的设计与实现),构建的外部可以看到属性以及它们之间的相互关系。这里参考此定义,把数据仓库架构理解成构成数据仓库的组
2021-12-14 10:46:30
2947
8
转载 万字详解 Spark 数据倾斜及解决方案
本文目录:一、调优概述二、数据倾斜发生时的现象三、数据倾斜发生的原理四、如何定位导致数据倾斜的代码五、某个task执行特别慢的情况六、某个task莫名其妙内存溢出的情况七、查看导致数据倾斜的key的数据分布情况八、数据倾斜的解决方案: 解决方案一:使用 Hive ETL 预处理数据 解决方案二:过滤少数导致倾斜的key 解决方案三:提高shuffle操作的并行度 解决方案四:两阶段聚合(局部聚合+全局聚合) 解决方案五:将reduce join
2021-12-06 10:58:06
1491
原创 最强最全面的Hive SQL开发指南,超四万字全面解析
本文整体分为两部分,第一部分是简写,如果能看懂会用,就直接从此部分查,方便快捷,如果不是很理解此SQL的用法,则查看第二部分,是详细说明,当然第二部分语句也会更全一些!本文非常适合PDF版本查看,效果非常好,本文PDF链接:最全面Hive SQL开发指南PDF版http://mp.weixin.qq.com/s?__biz=Mzg2MzU2MDYzOA==&mid=100007677&idx=1&sn=613890e9387eefd94fb83982c3ca55b0&am.
2021-11-30 14:32:05
1654
9
原创 大数据中必须要掌握的 Flink SQL 详细剖析
目录1. Flink SQL 常用算子2. Flink SQL 实战案例Flink SQL 是 Flink 实时计算为简化计算模型,降低用户使用实时计算门槛而设计的一套符合标准 SQL 语义的开发语言。 自 2015 年开始,阿里巴巴开始调研开源流计算引擎,最终决定基于 Flink 打造新一代计算引擎,针对 Flink 存在的不足进行优化和改进,并且在 2019 年初将最终代码开源,也就是我们熟知的 Blink。Blink 在原来的 Flink 基础上最显著的一个贡献就是 Flink SQL 的
2021-11-05 13:56:10
4608
8
原创 Flink 的运行架构详细剖析
1. Flink 程序结构Flink 程序的基本构建块是流和转换(请注意,Flink 的 DataSet API 中使用的 DataSet 也是内部流 )。从概念上讲,流是(可能永无止境的)数据记录流,而转换是将一个或多个流作为一个或多个流的操作。输入,并产生一个或多个输出流。Flink 应用程序结构就是如上图所示:Source: 数据源,Flink 在流处理和批处理上的 source 大概有 4 类:基于本地集合的 source、基于文件的 source、基于网络套接字的 source、自
2021-11-04 14:00:14
879
原创 四万字32图,Kafka知识体系保姆级教程宝典
目录一、消息队列1. 消息队列的介绍2. 消息队列的应用场景3. 消息队列的两种模式4. 常用的消息队列介绍5. Pulsar6. Kafka与Pulsar对比7. 其他消息队列与Kafka对比二、Kafka基础1. kafka的基本介绍2. kafka的好处3. 分布式的发布与订阅系统4. kafka的主要应用场景三、Kafka架构及组件1. kafka架构2. Kafka 主要组件四、Kafka集群操作1. 创建topic2.
2021-10-27 14:12:34
1971
8
原创 Hadoop MapReduce 保姆级吐血宝典,学习与面试必读此文!
Hadoop 涉及的知识点如下图所示,本文将逐一讲解:本文档参考了关于 Hadoop 的官网及其他众多资料整理而成,为了整洁的排版及舒适的阅读,对于模糊不清晰的图片及黑白图片进行重新绘制成了高清彩图。目前企业应用较多的是Hadoop2.x,所以本文是以Hadoop2.x为主,对于Hadoop3.x新增的内容会进行说明!二、MapReduce1. MapReduce 介绍MapReduce思想在生活中处处可见。或多或少都曾接触过这种思想。MapReduce的思想核心是“分而治之”,适用
2021-10-25 11:10:26
1161
10
原创 五万字 | 耗时一个月,整理出这份Hadoop吐血宝典
本文目录:一、HDFS二、MapReduce三、Yarn四、Hadoop3.x 新特性五、Hadoop 大厂面试真题解析Hadoop 涉及的知识点如下图所示,本文将逐一讲解:本文档参考了关于 Hadoop 的官网及其他众多资料整理而成,为了整洁的排版及舒适的阅读,对于模糊不清晰的图片及黑白图片进行重新绘制成了高清彩图。目前企业应用较多的是Hadoop2.x,所以本文是以Hadoop2.x为主,对于Hadoop3.x新增的内容会进行说明!一、HDFS1. HDFS概述H
2021-10-22 09:42:41
1174
10
原创 写给初学者,一文搞懂大数据学习、岗位、面试及简历
最近有公众号读者私聊我时发现有不少应届生和初学者,他们在大数据怎么学,以及大数据怎么面试,简历怎么写等方面有很大的困扰,今天我们就来谈谈关于大数据的一些事。写在前面:每个人的学习方法可能不一样,只有找到适合自己的才是最好的,以下这些只是我在学习大数据时的一些总结及经验,有不全面的地方还请各位大佬多包涵,互相学习,共同进步,非常感谢!我之前在知乎回答过类似的问题,有人问大数据工程师的日常工作内容是干嘛?,我当时看到之后就随意回答了下,先说了下大数据日常干嘛,然后又说了下怎么准备大数据的面试,怎么学
2021-10-14 10:50:58
3618
8
原创 美团数据平台及数仓建设实践,超十万字总结
美团技术团队的博客质量非常高,里面有许多关于大数据的文章,具有很大的参考价值。美团技术博客地址:https://tech.meituan.com但是博客功能简陋,没有基本的搜索功能,这对于我们查找相关文章非常不易。所以我把美团技术团队博客上关于大数据的文章,并且质量非常高的文章给整理了下来,按照离线数仓,实时数仓,数据平台,数据治理,数据分析等分类。组成了一本高质量的《美团数据平台及数仓建设实践》超全文档!整理的文档结构非常清晰,排版非常简洁,非常有利于我们查找及阅读。文档总共2
2021-10-13 16:02:46
3519
12
原创 字节跳动大数据开发面试题-附答案
此面试题来自牛客网友分享的字节跳动应届一面,面试时长一小时。网友情况:985 本硕。参考答案由本公众号提供。如有错误,欢迎指正!以下为面试过程中提问,岗位为大数据开发: 自我介绍+项目介绍 为什么用 kafka、sparkstreaming、hbase?有什么替代方案吗? 聊聊你觉得大数据的整个体系? 你看过 hdfs 源码?nn 的高可用说一下 zookeeper 简单介绍一下,为什么要用 zk?zk 的架构?zab? hbase 的...
2021-09-29 14:27:04
3800
5
原创 数据仓库之数据质量建设(深度好文)
数仓建设真正的难点不在于数仓设计,而在于后续业务发展起来,业务线变的庞大之后的数据治理,而数据治理的范围非常广,包含数据本⾝的管理、数据安全、数据质量、数据成本等。在这么多治理内容中,大家想下最重要的治理是什么?当然是数据质量治理,因为数据质量是数据分析结论有效性和准确性的基础,也是这一切的前提。所以如何保障数据质量,确保数据可用性是数据仓库建设中不容忽视的环节。本文首发于公众号【五分钟学大数据】,完整的数据治理及数仓建设文章公众号上都有数据质量涉及的范围也很广,贯穿数仓的整个生命周期,从数
2021-09-24 11:24:38
4953
32
原创 Flink保姆级教程,超全五万字,学习与面试收藏这一篇就够了
本文目录:一、Flink简介二、Flink 部署及启动三、Flink 运行架构四、Flink 算子大全五、流处理中的 Time 与 Window六、Flink 状态管理七、Flink 容错八、Flink SQL九、Flink CEP十、Flink CDC十一、基于 Flink 构建全场景实时数仓十二、Flink 大厂面试题Flink 涉及的知识点如下图所示,本文将逐一讲解:本文档参考了Flink 的官网及其他众多资料整理而成,为了整洁的排版及舒适的阅读,对于模糊不.
2021-09-16 17:41:43
58319
30
原创 推荐上百本优质大数据书籍,附必读清单(大数据宝藏)
历时多年整理,每看到一本好书都会收藏下来,到现在一看竟然有100多本了这些书籍确实是大数据的宝藏,从大数据入门到实战,深入原理,大数据架构等全部都有从 hadoop,hive,spark,flink,kafka,hbase,kudu,clickhouse,数仓建模,大数据算法,机器学习,数据科学,jvm虚拟机,数学思维,5G时代等等全都有以下为书籍截图:书籍太多,所以先推荐几本必读书籍(我读过的认为比较好的,其他也有很好的只是我还没读,所以没写)Hadoop+Spark大
2021-09-09 13:58:57
6005
5
原创 数仓中指标-标签,维度-度量,自然键-代理键等各名词深度解析
作为一个数据人,是不是经常被各种名词围绕,是不是对其中很多概念认知模糊。有些词虽然只有一字之差,但是它们意思完全不同,今天我们就来了解下数仓建设及数据分析时常见的一些概念含义及它们之间的关系。本文首发于公众号【五分钟学大数据】本文结构如下图所示:一、数仓中常见概念解析1. 实体实体是指依附的主体,就是我们分析的一个对象,比如我们分析商品的销售情况,如华为手机近半年的销售量是多少,那华为手机就是一个实体;我们分析用户的活跃度,用户就是一个实体。当然实体也可以现实中不存在的,比如虚拟
2021-09-09 10:40:46
2479
5
原创 五万字 | Spark吐血整理,学习与面试收藏这篇就够了!
Spark超全总结文档目录如下:Spark涉及的知识点如下图所示,本文将逐一讲解:本文档参考了关于 Spark 的众多资料整理而成,为了整洁的排版及舒适的阅读,对于模糊不清晰的图片及黑白图片进行重新绘制成了高清彩图。本文超长,获取本文完整PDF文档,带目录超全总结,请扫码关注公众号【五分钟学大数据】,后台发送:spark pdf,即可下载带目录的完整版spark文档:正文开始:一、Spark 基础1. 激动人心的 Spark 发展史大数据、人.
2021-08-26 18:40:32
4211
19
原创 五万字 | Hive知识体系保姆级教程
文档目录如下:Hive涉及的知识点如下图所示,本文将逐一讲解:本文较长,获取本文完整PDF文档,请扫码关注公众号【五分钟学大数据】,后台发送:hive pdf,即可下载带目录的完整版Hive文档:正文开始:一. Hive概览1.1 hive的简介Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。其本质是将SQL转换为MapReduce/Spark的任务进行运算,底层由HDFS来提供.
2021-08-23 10:45:42
3561
23
原创 面试常问-Spark的两种核心Shuffle详解
在 MapReduce 框架中, Shuffle 阶段是连接 Map 与 Reduce 之间的桥梁, Map 阶段通过 Shuffle 过程将数据输出到 Reduce 阶段中。由于 Shuffle 涉及磁盘的读写和网络 I/O,因此 Shuffle 性能的高低直接影响整个程序的性能。 Spark 也有 Map 阶段和 Reduce 阶段,因此也会出现 Shuffle 。Spark ShuffleSpark Shuffle 分为两种:一种是基于 Hash 的 Shuffle;另一种是基于 Sort 的
2021-08-16 14:12:25
721
1
原创 实操 | Hive 数据倾斜问题定位排查及解决
Hive 数据倾斜怎么发现,怎么定位,怎么解决多数介绍数据倾斜的文章都是以大篇幅的理论为主,并没有给出具体的数据倾斜案例。当工作中遇到了倾斜问题,这些理论很难直接应用,导致我们面对倾斜时还是不知所措。本文首发在公众号【五分钟学大数据】今天我们不扯大篇理论,直接以例子来实践,排查是否出现了数据倾斜,具体是哪段代码导致的倾斜,怎么解决这段代码的倾斜。当执行过程中任务卡在 99%,大概率是出现了数据倾斜,但是通常我们的 SQL 很大,需要判断出是哪段代码导致的倾斜,才能利于我们解决倾斜。通过下
2021-08-06 17:04:36
1402
9
原创 Hive SQL语句的正确执行顺序
关于 sql 语句的执行顺序网上有很多资料,但是大多都没进行验证,并且很多都有点小错误,尤其是对于 select 和 group by 执行的先后顺序,有说 select 先执行,有说 group by 先执行,到底它俩谁先执行呢?今天我们通过 explain 来验证下 sql 的执行顺序。在验证之前,先说结论,Hive 中 sql 语句的执行顺序如下:from .. where .. join .. on .. select .. group by .. select .. having ..
2021-08-02 09:53:17
1107
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人