hadoop离线数仓
以实战为线索,逐步深入hadoop数据仓库开发各个环节,掌握hadoop离线数仓性能优化思路,打造完整的hadoop离线数仓工作流,提升工程化编码能力和思维能力
优惠券已抵扣
余额抵扣
还需支付
¥29.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
尬聊码农
梦想是一个天真的词,实现梦想是个残酷的词。
展开
-
尬聊数据仓库规范
数仓案例目标在学习数据仓库的基本理论知识和所需的工具后,通过案例将整个数据仓库的开发流程串联起来,掌握数据仓库从模型设计、物理实现、加载数据、自动同步以及分析指标和的过程,了解报表展示。业务系统业务场景 业务场景我们使用数仓的经典的销售订单源系统,业务逻辑很简单,有两个基本信息表产品表和客户表,产品表记录产品名称、编号和分类,客户表记录客户编号,客户名称以及其他基本信息,一个业务表订单...原创 2020-05-13 16:08:20 · 512 阅读 · 0 评论 -
尬聊HDFS的运行原理,如何实现HDFS的高可用
HDFS的运行原理,如何实现HDFS的高可用##一.HDFS的运行机制HDFS集群中的节点分为两种角色,一种角色负责管理整个集群的元数据,是名称节点(name node);另一种角色负责存储文件数据块和管理文件数据块,是数据节点(datanode)。1.1 NameNode1.1.1名称节点负责响应客户端的请求,负责管理整个文件系统的元数据。1.1.2HDFS的内部工作机制对客户端是透明...原创 2020-05-13 16:03:29 · 173 阅读 · 0 评论 -
图文解说MapReduce的全流程
文解版:1.首先我们有一个待处理的文本ss.txt,大小为200m,假设要对这个文本中的内容进行单词统计。2.在我们客户端提交之前,获取到待处理文本相关信息,根据block块的大小划分出具体的切片信息(默认集群中的块大小是128m,所以这里将我们的待处理文本ss.txt划分为两个切片分别为0-128m和128-200m)。3.客户端将切片信息和jar包提交到yarn集群ResourceMa...原创 2020-05-13 15:58:52 · 228 阅读 · 0 评论 -
尴聊hadoop中NameNode、DataNode、Secondary、NameNode、JobTracker TaskTracker核心组件
问题导读:1.job的本质是什么?2.任务的本质是什么?3.文件系统的Namespace由谁来管理,Namespace的作用是什么?4.Namespace 镜像文件(Namespace image)和操作日志文件(edit log)文件的作用是什么?5.Namenode记录着每个文件中各个块所在的数据节点的位置信息,但是他并不持久化存储这些信息,为什么?6.客户端读写某个数据时,是否通...原创 2020-05-13 15:56:50 · 241 阅读 · 0 评论 -
尬聊数据仓库
一.ETL(其实也就是对源数据的清洗)1.ETL定义: 将业务系统的数据经过抽取、清洗转换之后加载到数据仓库。2.ETL作用: 企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。3.ETL设计步骤: 数据抽取、数据的清洗转换、数据的加载。①数据抽取:从各个不同的数据源抽取到ODS,期间将脏数据和不完整数据过滤掉。②数据清洗和转换:清洗(不完整,错误,重...原创 2020-05-13 15:54:08 · 215 阅读 · 0 评论 -
Hadoop常用的端口配置
常用的端口配置HDFS端口参数描述默认配置文件例子值fs.default.namenamenode RPC交互端口8020core-site.xmlhdfs://master:8020/dfs.http.addressNameNode web管理端口50070hdfs-site.xml0.0.0.0:50070dfs.datanode.ad...原创 2020-05-13 15:38:14 · 301 阅读 · 0 评论 -
图文解说之hadoop的shuffle过程
1)maptask收集我们的map()方法输出的kv对,放到内存缓冲区中2)从内存缓冲区不断溢出本地磁盘文件,可能会溢出多个文件3)多个溢出文件会被合并成大的溢出文件4)在溢出过程中,及合并的过程中,都要调用partitioner进行分区和针对key进行排序5)reducetask根据自己的分区号,去各个maptask机器上取相应的结果分区数据6)reducetask会取到同一个分区的来...原创 2020-05-13 15:34:23 · 171 阅读 · 0 评论 -
图文解说YARN之提交流程
图解版:文解版:client 调用 job.waitForCompletion 方法,向整个集群提交 MapReduce 作业。client 向 RM 申请一个作业 id。RM 给 client 返回该 job 资源的提交路径和作业 id。client 提交 jar 包、切片信息和配置文件到指定的资源提交路径。client 提交完资源后,向 RM 申请运行 MrAppMaster...原创 2020-05-13 15:33:10 · 278 阅读 · 0 评论 -
图文解说HDFS的写流程
图解版文解版:(1)客户端先向namenode申请写入一个文件hdfs dfs -put /etc/profile /a/b/c/a.txt 首先要确认目录是否存在(2)Namenode会查看自己维护的目录树,确认目录是否存在,若存在,通知客户端可以进行上传(3)客户端和namenode说我要上传第一个块,询问namendoe,第一个块存3份,存在哪儿(4)Namenode查看自己...原创 2020-05-13 15:29:42 · 175 阅读 · 0 评论 -
图文解说HDFS之读流程
图解版:文字版:(1)客户端跟namenode通信查询元数据,找到块文件所在的datanode服务器(2)挑选一台datanode(就近原则,然后随机)服务器,请求socket流(3)Datanode开始发送数据给客户端(从磁盘里面读取数据写入流,以packet为单位的)(4)客户端已packet为单位去接收数据,先在本地缓存,然后写入目标文件注:读数据时,会进行数据的校验,如果块损...原创 2020-05-13 15:29:19 · 280 阅读 · 0 评论 -
Hadoop配置文件参数详解大全
etc/hadoop/core-site.xml参数属性值解释fs.defaultFSNameNode URIhdfs://host:port/io.file.buffer.size131072SequenceFiles文件中.读写缓存size设定范例: <configuration> <property> ...原创 2020-05-13 15:28:33 · 331 阅读 · 0 评论 -
Linux软件安装的思维导图
原创 2020-05-13 15:27:56 · 660 阅读 · 0 评论 -
MySQL入门到实战(附上代码)
一、索引B+ Tree 原理MySQL 索引索引优化索引的优点索引的使用条件二、查询性能优化使用 Explain 进行分析优化数据访问重构查询方式三、存储引擎InnoDBMyISAM比较四、数据类型整型浮点数字符串时间和日期五、切分水平切分垂直切分Sharding 策略Sharding 存在的问题六、复制主从复制...原创 2019-07-12 22:34:36 · 1006 阅读 · 0 评论 -
正则表达式使用教程大全
一、概述二、匹配单个字符三、匹配一组字符四、使用元字符五、重复匹配六、位置匹配七、使用子表达式八、回溯引用九、前后查找十、嵌入条件参考资料一、概述正则表达式用于文本内容的查找和替换。正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。正则表达式在线工具二、匹配单个字符. 可以用来匹配任何的单个字符,但是在绝大多数实现里面,不能匹配换行符;...原创 2019-07-12 22:39:13 · 135 阅读 · 0 评论 -
centos7.2安装azkaban
centos7.2安装azkaban一、安装相关依赖yum -y install wgetyum -y install cmakeyum -y install readline-devel zlib-devel openssl-devyum install -y gccyum install -y gcc-c++yum install -y bison.x86_64yum -y i...原创 2019-10-18 14:57:12 · 211 阅读 · 0 评论 -
oozie的任务调度
Oozie是一个管理Hadoop作业、可伸缩、可扩展、可靠的工作流调度系统,它内部定义了三种作业:1. 工作流作业:由一系列动作构成的有向无环图(DAGs)2. 协调器作业:按时间频率周期性触发Oozie工作流的作业3.Bundle作业:管理协调器作业 一、首先示例提...原创 2019-10-21 09:34:40 · 272 阅读 · 0 评论 -
zeppelin配置hive教程
Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an “AS IS” BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or i...原创 2019-10-21 16:00:50 · 439 阅读 · 0 评论 -
centos7.2安装zeppelin教程
cdh版Zeppelin安装tar -zxvf zeppelin-0.8.0-bin-all.tgzcd zeppelin-0.8.0-bin-all/conf/cp zeppelin-env.sh.template zeppelin-env.shcp zeppelin-site.xml.template zeppelin-site.xmlvi zeppelin-env.shexpo...原创 2019-10-21 16:30:20 · 507 阅读 · 0 评论 -
sqoop使用教程大全
问题导读1.sqoop是否支持复杂语句2.sqoop如果存在就更新,不存在就插入,这是什么模式? 这些内容是从sqoop的官网整理出来的,是1.4.3版本的Document,如果有错误,希望大家指...原创 2019-10-21 17:16:42 · 268 阅读 · 0 评论 -
hive求成绩分析
现在有一个面试题 ...原创 2020-05-13 14:12:31 · 817 阅读 · 0 评论 -
hive求出场率和环比
1、有如下数据:(建表语句+sql查询)id names1 aa,bb,cc,dd,ee2 aa,bb,ff,ww,qq3 aa,cc,rr,yy4 aa,bb,dd,oo,pp求英雄的出场排名top3的出场次数及出场率create table if not exists t_names(id int,names array)...原创 2019-10-31 22:26:28 · 1055 阅读 · 0 评论 -
Hive高级优化8种优化方式
Hive高级优化8种优化方式问题导读:1.怎样一直启用Fetch任务?2.怎样开启JVM重用?3.怎样合理设置reduce个数?1. FetchTask不执行mapreduce,提高速度设置的三种方式:方法一:[Shell] 纯文本查看 复制代码set hive.fetch.task.conversion=more;方法二:[Shell] 纯文本查看 复制代码bin/hi...原创 2020-05-13 15:37:47 · 349 阅读 · 0 评论 -
Hive5大类常用函数总结
Hive函数1.内置运算符1.1关系运算符运算符类型说明A = B所有原始类型如果A与B相等,返回TRUE,否则返回FALSEA == B无失败,因为无效的语法。 SQL使用”=”,不使用”==”。A <> B所有原始类型如果A不等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。A <...原创 2020-05-13 15:37:10 · 224 阅读 · 0 评论 -
用hive实现股票的波峰和波谷
首先按照股票的代码分类,以时间排序 create table t2 as select code,time,price,row_number() over(partition by code order by time) rn from t1; 最后通过case when then else end 求出波峰和波谷 select a.code,a.time,a.price...原创 2019-07-16 15:29:47 · 1079 阅读 · 0 评论 -
hive+hbase学习手册
hive学习手册一、hive入门手册1.什么是数据仓库1.1数据仓库概念对历史数据变化的统计,从而支撑企业的决策。比如:某个商品最近一个月的销量,预判下个月应该销售多少,从而补充多少货源。1.2传统数据仓库面临的挑战(1)无法满足快速增长的海量数据存储需求(2)无法有效处理不同类型的数据(3)计算和处理能力不足1.3 Hive介绍Hbase支持快速的交互式的大数据应用...原创 2020-05-13 14:09:01 · 897 阅读 · 0 评论 -
hive的窗口函数(附上代码)
hive的窗口函数本文主要介绍hive中的窗口函数.hive中的窗口函数和sql中的窗口函数相类似,都是用来做一些数据分析类的工作,一般用于olap分析(在线分析处理)。概念我们都知道在sql中有一类函数叫做聚合函数,例如sum()、avg()、max()等等,这类函数可以将多行数据按照规则聚集为一行,一般来讲聚集后的行数是要少于聚集前的行数的.但是有时我们想要既显示聚集前的数据,又要显示聚...原创 2020-05-13 15:35:38 · 228 阅读 · 0 评论