自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Small_Ran的博客

随笔记录自己的编程之路

  • 博客(16)
  • 问答 (3)
  • 收藏
  • 关注

原创 第二部分数仓建模- OneData 体系之需求调研及规划(一)

大数据之路:阿里巴巴大数据实践》OneModel即建立企业统一的数据公共层,从设计、开发、部署和使用上保障了数据口径规范和统一,实现数据资产全链路管理,提供标准数据输出。OneID即建立业务实体要素资产化为核心,实现全域链接、标签萃取、立体画像,其数据服务理念根植于心,强调业务模式。OneService即数据被整合和计算好之后,需要提供给产品和应用进行数据消费,为了更好的性能和体验,需要构建数据服务层,通过统一的接口服务化方式对外提供数据服务。

2023-02-16 15:13:00 1173

原创 第一部分数据仓库-概述

数据仓库(英文名称为:Data Warehouse ),可简写为 DW;数据仓库是一个面向主题、集成性、稳定性、反映历史变化的数据集合;主要用于组织积累的历史数据,以及使用分析方法( OLAP 、数据分析)进行分析整理,进而辅助决策,为管理者、企业系统提供数据支持,构建商业智能。

2023-02-16 15:12:38 258

原创 第二部分数仓建模- OneData 体系之模型设计(三)

上一篇主要阐述了 OneData 建模体系中的规范定义部分,而本篇主要阐述的是分层模型设计部分。当了解到每一个业务过程与维度的关联,就可以基本明确需要设计事实表与维度表;再通过明确统计指标的深入分析,就可以下沉某些相同计算逻辑。这是数仓的基本架构雏形已明确,而接下来则是设计各个表如何设计。例如:什么样的表放在ODS层以或者DWD层、及这样设计的依据是什么;后续内容将展开说明。

2023-02-16 15:12:26 527

原创 第一部分数据仓库-建模

上一篇聊到数据仓库的基本概念以及经典的建模方法的对比(范式建模 VS 维度建模),那么本篇主要阐述关于数据仓库建模的基本概念。

2023-02-16 15:12:19 198

原创 第二部分数仓建模- OneData 体系之规范定义(二)

上一篇主要阐述了OneData建模体系的大概流程,以及三个重要板块中的需求调研及规划部分;而本篇主要阐述规范定义模块的内容。在我们知道数仓涵盖的业务流程以及需求点,然后再进行数据域的划分;这时数仓大致的架构与方向基本明确,而接下来要说的则是具体细节。例如:需要建哪些维度表、每张维度表的粒度是什么、公共计算逻辑是哪些等等;后续内容将会展开说明。规范定义指以维度建模作为理论基础,构建总线矩阵,划分和定义数据域、业务过程、维度、度量 /原子指标、修饰类型、修饰词、时间周期、派生指标等;

2023-02-16 15:11:38 702

原创 第三部分数仓建模- OneData 体系之维度表设计(一)

上一篇主要阐述了 OneData 建模体系中的模型设计,而本篇主要阐述是怎么创建维度表。当了解到数仓每层的设计目的时,对于每层模型设计有了进一步的掌握;在此之前所提及到的维度模型设计概念比较模糊,而接下来则是深入阐述维度模型设计。例如:什么是缓慢维变化,以及规范化与反规范化的区别;后续内容将展开说明。维度表可以理解为是对数据抽象的一个实体,它是维度建模的基础和灵魂。维度表是围绕业务过程所处环境进行设计的,它主要包含一个主键和各种维度字段(维度属性);

2023-02-16 15:10:52 496

原创 第三部分数仓建模- OneData 体系之事实表设计(二)

上一篇主要阐述了维度表的设计,而本篇主要阐述怎么创建事实表。维度表是围绕业务过程所处环境设计,那么事实表则是围绕业务过程设计;而接下来将深入阐述事实表模型设计。例如:事实表有几种类型、什么是可加、半可加和不可加;后续内容将展开说明。事实表是指对实体发生行为事实时所产生的数据组合成的模型。事实表是不断动态增长,数据量一般比维度表要大;例如商品交易表、系统日志表等等属于事实表。事实表的组成包括与该业务过程相关的维度引用(维度表的外键),以及该业务过程的度量(可累加的数字字段,例如:金额)。

2023-02-16 15:10:09 389

原创 Spark 内存管理

本篇主要阐述 Spark 内存管理,主要在于通过理解基本原理,这样有助于更好地开发 Spark 应用程序和进行性能调优。Spark 集群会启动 Driver(默认内存:1G) 和 Executor(默认内存:512M) 两种 JVM 进程,前者为主控进程,负责创建 Spark 上下文,提交 Spark 作业(Job),并将作业转化为计算任务(Task),在各个 Executor 进程间协调任务的调度,后者负责在工作节点上执行具体的计算任务,并将结果返回给 Driver,同时为需要持久化的 RDD 提供存储功

2022-07-02 11:26:29 260 1

原创 Spark Shuffle 过程

本篇主要阐述Spark Shuffle过程,在执行 Job 任务时,无论是 MapReduce 或者 Spark Shuffle 过程都是比较消耗性能;因为该环节包含了大量的磁盘 IO、序列化、网络数据传输等操作。因此,在这一过程中进行调参优化,就有可能让 Job 执行效率上更好。在 Spark 1.2 以前,默认的 Shuffle 计算引擎是 HashShuffleManager。该 ShuffleManager 会产生大量的中间磁盘文件,进而由大量的磁盘 IO 操作影响了性能。...

2022-07-02 11:19:55 3596

原创 Spark 划分 Stage

本篇主要阐述 DAGSchedule 划分 Stage 的过程,其主要目的是为了了解 Stage 划分的原理;同时对源码分析更能清楚过程,当某个任务出现运行时间较长时;如果可以清楚其 Stage 划分的过程,就可以大概清楚是什么算子导致运行时间较长,从而可以进行优化提高 Spark 任务运行的效率。...

2022-07-02 11:15:35 1376

原创 SparkContext 初始化过程源码说明

本篇主要的目的是阐述 SparkContext 初始化过程中,重要环节源码的逻辑流程的梳理。SparkContext 实例化的过程是一个比较复杂的过程,主要包括SparkEnv、spark-history、心跳检测、状态追踪、广播、资源与任务调度、底层通信等等组件的初始化。本篇文章的主要目的在于:了解 Spark 提交任务底层是怎样将 Task 任务提交至 Executor 中;了解 SparkContext 初始化过程中几个重要的环节。......

2022-07-02 11:09:38 434

原创 Spark 任务提交流程涉及源码说明

本篇主要阐述 Spark on Yarn 任务提交源码分析说的流程,目的在于了解任务提交的大概流程;其主要是想通过对 Spark 任务提交流程与涉及到的源码了解;在遇到问题的时候可以快速定位到是由什么环节导致的,从而可以快速排查问题并予以解决。......

2022-07-02 11:02:14 877

原创 Spark 参数说明

本篇的主要阐述了Spark 各个参数的使用场景,以及使用的说明与参考;其实主要就是对 Spark 运行过程中各个使用资源的地方,通过调节各种参数来优化资源使用的效率,从而提升Spark作业的执行性能。首先通过大致的 Spark 任务提交流程了解,然后再介绍说明 Spark 各个参数的使用方式,这样更有利于熟悉了解。.........

2022-07-02 10:52:25 2674

原创 Spark 任务提交流程说明

本篇主要阐述 Spark 任务提交的流程,其主要目的在于通过了解 Spark 任务提交可以清楚大概的流程,并知道每一步是做什么;当遇到问题可以快速的知道是什么环节或者哪一步骤出现了问题,及时定位到问题并解决。目前Spark官方支持五中集群管理模式,分别是 Standalone、Yarn、Mesoes、Kubernetes、Amazon EC2 等。本篇文章主要阐述笔者平时经常使用的 Standalone 与 Yarn 集群管理模式。..................

2022-07-02 10:30:26 5265 2

原创 Spark简述

SparkApache Spark 是一个开源框架,专为大规模数据处理而设计的快速通用的计算引擎。Spark 源自加州大学伯克利分校的 AMPLab,现在已被捐献给了 Apache 软件基金会。Spark 继承了 MapReduce 的线性扩展性和容错性,同时对它做了一些重量级扩展。Spark 摒弃了 MapReduce 先 Map 再 Reduce 这样的执行方式,Spark 引擎可以执行更...............

2020-03-19 10:32:21 3033 2

原创 阿里云centos服务器Tomcat启动问题

在完成服务器上Tomcat的配置的时候,启动了Tomcat: 这里显示启动成功;然后又将防火墙关掉,并在阿里云上开放了8080端口。在进行外网访问的时候,页面一直在进行加载,最后就显示连接超时。然后再去查看了一下Tomcat的日志文件,看到了如下问题:然后想到随机数生成器。解决方法:将jre/lib/security/java.security中的securera...

2018-10-03 11:12:20 398

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除