数据仓库
文章平均质量分 76
和风与影
大数据程序员
展开
-
【数仓】DAMA数据管理知识体系指南
数据管理原创 2022-11-21 22:16:45 · 1967 阅读 · 0 评论 -
【数仓】数据质量监控
数据质量监控原创 2022-08-03 16:02:33 · 2391 阅读 · 0 评论 -
【数仓】数据质量
面试被问到数据质量,没答出来。原创 2022-06-18 20:18:59 · 386 阅读 · 0 评论 -
【数仓】大数据开发全流程 - 实习总结
工作了快一个月了,今天简单说一下大数据开发的整个流程。假设就以自己这个公众号为例,这样不会抽象,比较直观。1.数据源前端会对用户行为进行埋点,并上报后端服务器。埋点会记录一些信息,比如:用户 id:标记一个用户,后面可以根据这个算一段时间的 UV(独立访客),也就是 selecct count(distinct uid) from table_name where date >= t1 and date <= t2,比如我的公众号阅读人数就是 UV,次数是 PV。渠道来源、用原创 2022-05-24 21:10:13 · 3135 阅读 · 3 评论 -
【数仓】存储和成本管理
今天学习第 14 章存储和成本管理。1.数据压缩分布式文件系统中数据一般会存储 3 份。一般会采用压缩。但压缩会使读性能损失。对于日志数据,超过时间期限后使用频率很低,可以考虑压缩。2.数据重分布大数据经常采用列示存储,由于每个表数据不同,插入数据的顺序不一样,导致压缩效果有很大差异,因此通过修改表的数据重分布,避免产生热点,会节省空间。主要修改 distribute by 和 sort by 字段的方法进行数据重分布。3.存储治理项优化定规则,对存储进行优化。比如:空表未管理表最近原创 2022-04-29 09:38:18 · 433 阅读 · 0 评论 -
【数仓】计算管理
这章主要是计算管理相关的内容。简单来说就是提高计算的效率,包括数据倾斜的处理。关注公众号回复 802 获取 pdf。1.系统优化1.1 重新排序 JoinJoin 的性能关系到整个 SQL 的性能。重新排序 Join 是 将 Join 所有不同输入进行全排序,找到代价最小的排序。1.2 自动 MapJoin自动评估是否采用 MapJoin。2.任务优化2.1 Map 倾斜由于读入文件大小不均匀,导致某些 Map Instance 读取的数据特别多,某些 Map Instance 读取的数原创 2022-04-28 22:55:03 · 724 阅读 · 0 评论 -
【面经】字节跳动大数据开发面经
马上要去字节入职了,今天分享一篇字节大数据开发的面经。入职之后看情况更新,不知道会不会很忙,忙的话更新频率可能低一点。问题的答案写在这里了。可以先自己做再看答案。字节跳动面经。1.自我介绍2.数仓是什么?可以看《大数据之路》。3.Hive 是什么?建议看官网的描述。4.讲一下 MapReduce 的过程常考题,必会。这里简单说一下,后面单独写一篇文章。5.比较 MR 和 Spark 的 Shuffle的过程?常考题,必会。这里简单说一下,后面单独写一篇文章。6.Hive 中 Gr原创 2022-04-27 09:10:25 · 4166 阅读 · 1 评论 -
【数仓】元数据概述
今天学习第 12 章元数据概述。关注公众号回复 802 获取 pdf。1.元数据概述1.1 元数据定义定义:元数据是关于数据的数据。元数据打通了源数据、数据仓库、数据应用,记录了数据从生产到消费的全过程。元数据主要记录数据仓库中模型的定义、各层级间的映射关系、监控数据仓库的数据状态即 ETL 的任务运行状态。帮助开发人员方便找到数据仓库中他们所关心的数据,提高效率。分类:技术元数据:存储技术细节分布式计算系统存储元数据分布式计算系统存储元数据数据开发平台中数据同步、计算任原创 2022-04-26 10:28:07 · 578 阅读 · 0 评论 -
【数仓】事实表设计
今天学习第 11 章事实表设计。关注公众号回复 802 获取 pds。1.事实表基础1.1 事实表特性粒度:一条记录表达的业务细节称为粒度。维度属性组合所表示的细节程度;所表示的具体业务含义。作为度量业务过程的事实,一般为整型或浮点型数值,类型:可加性事实:可以在任意维度汇总;半可加性事实:只能按照特定维度汇总,比如库存,可以按地点、商品汇总,不能按时间汇总,没意义。不可加性事实:比如比率型。与维度表相比,事实表细长,行增加快。维度属性也可以存储到事实表中,称为退化维度,也可以原创 2022-04-25 14:04:40 · 642 阅读 · 0 评论 -
【数仓】维度设计
今天学习第 10 章维度设计。欢迎关注公众号回复 802 获取 pdf。1.维度设计基础1.1 维度的基本概念维度是什么:度量-事实。环境-维度。维度就是分析事实所需要的环境。维度做什么:维度属性是查询约束条件、分组和报表标签生成的基本来源,是数据易用性的关键。一般用来查询约束、分类汇总、排序。维度的获取:报表中获取;与业务人员交流中发现;经常出现在 by 语句内。维度用主键标识其唯一性。1.2 维度的基本设计方法以淘宝的商品维度为例:选择或新建维度:保证维度的唯一性。比如商品维原创 2022-04-24 18:44:17 · 1507 阅读 · 0 评论 -
【数仓】数据整合及管理体系
今天学习第 9 章数据整合及管理体系。目标就是对数据进行有序和有结构地分类组织和存储,避免重复建设和不一致性。关注公众号回复 802 获取pdf。1.概述方法论的核心:从业务架构设计到模型设计,从数据研发到数据服务,做到数据可管理、可追溯、可规避重复建设。1.1 定位及价值统一、规范化的数据接入层(ODS)和数据中间层(DWD 和 DWS)提供标准化、共享的数据服务能力降低数据互通成本,释放计算、存储、人力等资源1.2 体系架构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存原创 2022-04-23 20:59:19 · 953 阅读 · 0 评论 -
【数仓】数据挖掘平台
1.数据挖掘中台系统11 挖掘数据中台数据中台分为三层:特征层、中间层和应用层。特征层 FDM:存储特征指标,统一进行清洗和去噪,提高机器学习特征工程环节的效率。个题中间层 IDM:存储通用性强的结果数据,面向个体,比如商品、卖家、买家。关系中间层 RDM:存储通用性强的结果数据,面向关系,比如相似性、竞争关系。应用层 ADM:存储比较个性篇应用的数据挖掘指标,比如用户偏好的类目、品牌。1.2 挖掘算法中台对具有代表性的场景,形成相应的方法论和实操模型。2.数据挖掘案例2.1 用户画原创 2022-04-23 14:17:15 · 1338 阅读 · 0 评论 -
【数仓】数据服务层
1.数据服务数据服务研究的是海量数据如何方便高效地开放出去。1.1 服务架构演进1.1.1 DWSOA实现:需求为驱动,一个需求开发一个或多个接口,编写接口文档,开放给业务方。优点:简单。缺点:粒度粗,不灵活,扩展性差,复用率低,接口数量增加快,维护成本高,开发效率低,无法快速响应。1.1.2 OpenAPI实现:将数据按统计粒度聚合,同样维度的数据形成逻辑表,采用同样的接口描述。例如把会员为中心的数据做成一张逻辑表,查询会员维度的数据都调用会员接口。优点:接口数量收敛。缺点:维度不可控原创 2022-04-23 14:15:27 · 1779 阅读 · 0 评论 -
【数仓】大数据领域建模综述-《大数据之路》读书笔记
今天继续学习《大数据之路》。从今天开始,进入了本书的第2篇-数据模型篇。第1篇数据技术篇比较偏向于底层的技术实现,文章都已经更新完毕,可以点击下方的连接获取。从第2篇开始,着重数据的建模和维度设计等知识,这是数据仓库面试的重点。今天先学习第8章大数据领域建模综述。关注公众号回复 802 获取《大数据之路》pdf。其他章节的文章请点击这里查看。1.为什么需要数据建模数据模型就是数据组织和存储方法,强调从业务、数据存取和使用角度合理存储数据。有了适合业务和基础数据存储环境的模型,会带来如下好处:性原创 2022-04-22 14:16:32 · 1125 阅读 · 0 评论 -
【组件】大数据常考题之介绍一下 Hive
这是关于大数据常用组件的第二篇文章。Hive 是大数据开发的必会技能。面试中经常被问到的问题就是 Hive 是什么,或者请介绍一下 Hive,今天的文章主要对这个问题做出讲解。同样,这个问题的答案可以在官网寻找。The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Stru原创 2022-04-20 18:39:48 · 393 阅读 · 0 评论 -
【数仓】离线和实时数据开发-《大数据之路》读书笔记
今天更新《大数据之路》第 4 章和第 5 章,离线数据开发以及实时技术。关注公众号回复 802 获取 pdf。 前面的文章讲述了日志文件和业务系统的数据如何采集到大数据平台中。原始数据只有被整合计算之后才能挖掘潜在信息,从而实现大数据的价值。1.离线数据开发1.1 统一计算平台 数据研发岗的工作大致可以概况为:了解需求→模型设计→ETL 开发→测试→发布上线→日常运维→任务下线。阿里采用的统一计算平台是自研的 MaxCompute,体系分为四部分:客户端:提供 RESTful API,命原创 2022-04-20 15:09:14 · 1750 阅读 · 0 评论 -
【数仓】Hadoop、Hive 和 Spark 中数据倾斜的处理
数据倾斜几乎是大数据开发的必考题。今天通过一篇文章来学习数据倾斜及其处理方法。1.什么是数据倾斜 对于分布式系统,大量的数据集中到一台或几台服务器上,称为数据倾斜。数据倾斜现象有两种,一是数据频率倾斜,某一区域的数据量远远大于其他区域;二是数据大小倾斜,部分记录的大小远远大于平均值。 开发中的常见情况是出现了热点 key(重复的 key 大量出现)。默认情况下,Map 阶段同一个 key 的数据发给同一个 Reduce 处理,导致某一个 Reduce 程序消耗的资源和运行时间远大于其他 Red原创 2022-04-19 21:40:58 · 586 阅读 · 0 评论 -
【数仓】拉链表
拉链表是大数据开发面试重点,今天专门写一篇文章进行讨论。1.什么是拉链表用于记录每条信息的生命周期,有开始日期和结束日期字段。至今有效的用极大值表示。| uid | name | phone_number | start_date| end_date || ---- | ---- | ------------ | ---------- | ---------- || 1 | 张三 | 188****7777 | 2020-01-01 | 2020-02-10 || 1 |原创 2022-04-19 18:00:13 · 1050 阅读 · 0 评论 -
【数仓】数据同步-数据仓库的数据来源之二
数据仓库的数据最主要的来源有两个,一是前面讲过的日志采集,将前端埋点产生的 log 文件解析之后存入数据仓库。而今天要讲解是另外一部分数据——数据库数据同步。这一部分主要是将数据库中的业务数据同步到数据仓库。当然这只是数据同步的一个方面,数仓中计算好的数据也会同步进入数据服务或数据应用两个方面。本文参考《大数据之路》,对书中的要点进行记录。可以关注公众号回复 802 获取 pdf。1.数据同步基础 数据同步的原业务系统的数据类型多种多样,主要分为关系型数据库的结构化数据和非关系型数据库的非结构化数原创 2022-04-18 15:28:51 · 2319 阅读 · 0 评论 -
《大数据之路》读书笔记
强烈推荐大数据开发工程师读一读阿里的《大数据之路》这本书。读完这本数之后会对整个大数据体系有一个更深入的理解。目前读书笔记还在更新中。关注公众号回复 802 可获取 pdf。下面给出书籍的目录和读书笔记。原创 2022-04-17 14:32:08 · 1610 阅读 · 0 评论 -
【数仓】日志采集-数据仓库的数据来源之一
日志数据是互联网大数据的一个重要来源。在数据开发岗位的面试过程中,这一部分被问到的频率不高,但也绝非不会被问到,有点面试官会询问日志记录了哪些字段,如何埋点,所以仍然需要对日志采集有一个大概的了解。一下内容主要依据阿里的《大数据之路》。1.浏览器的页面日志采集 浏览器的页面型产品/服务的日志采集可以分为两大类:页面浏览(展现)日志采集。最基础的日志,是**页面浏览量(Page View,PV)和访客数(Unique Visitors,UV)**的统计基础。页面交互日志采集。记录用户的操作。原创 2022-04-17 11:19:28 · 1320 阅读 · 0 评论 -
【数仓】大数据体系总述
建模系列文章主要讲解大数据的数仓建模的整体流程,目标是通过对建模系列文章的学习能够对大数据的整个体系有一个清楚的认识。博主也是在面试的过程中了解到了阿里的《大数据之路》这本书。建模系列文章就按照《大数据之路》的脉络来学习大数据的体系和数据模型。 今天首先学习数据体系。大数据的架构是不断变化的,从开始兴起一直发展到现在,数据体系架构经过了多次演进,如今数据体系主要可以分为下面四层:数据采集数据计算数据服务数据应用 下图展现了大数据系统体系架构图(图片来自《大数据之路》):1.数据采原创 2022-04-16 18:13:22 · 1141 阅读 · 0 评论