随笔分类 -  大数据

摘要:Spark中文件格式、压缩和序列化 1.1 文件格式 1.1.1 行存储: **特点:**适合OLTP,写密集的场景(或是要求所有列的查询); **text:**spark直接读入并按行切分;需要保持一行的size在合理的范围;支持有限的schema; **csv:**常用于日志收集,写性能比读性能 阅读全文
posted @ 2021-09-07 23:53 平凡的神灯 阅读(2596) 评论(1) 推荐(0)
摘要:Spark中 join的原理 一、SparkSQL中join的原理 1.1 SparkSQL的5种join策略 概述:spark将参与join的两张表抽象为流式遍历表(streamIter)和查找表(buildIter),通常streamIter为大表,buildIter为小表;通过遍历stream 阅读全文
posted @ 2021-09-07 23:47 平凡的神灯 阅读(3290) 评论(1) 推荐(1)
摘要:数据倾斜 前言:数据倾斜通常在shuffle时发生,因此解决数据倾斜的思路有三个: 1,把小表广播避免shuffle; 2,把大key加随机前缀打散; 3,把大key过滤出来单独处理; 而触发shuffle的算子可以分为三种: **分组(group):**通用方法是:给大key加随机前缀,然后分两阶 阅读全文
posted @ 2021-09-07 23:38 平凡的神灯 阅读(784) 评论(0) 推荐(0)
摘要:Spark 实战 一、Spark分桶写出到HDFS **Spark没有分桶sink:**Spark并没有像Flink那样提供分桶sink,所以就需要自定义OutputFormat类; **自定义output类:**MultipleTextOutputFormat // 并行写出,每个分区同时写数据到 阅读全文
posted @ 2021-09-07 23:23 平凡的神灯 阅读(1363) 评论(0) 推荐(0)
摘要:Spark调优 一、代码规范 调优顺序:spark任务的调优顺序依次是代码规范、资源参数(并行度)、数据倾斜、shuffle调优、业务层面; 1.1 避免创建重复RDD 对于新手,或者一些较为复杂的spark任务,可能会忘记之前对于某一份数据已经创建过一个RDD,而重复创建,造成不必要的计算; 1. 阅读全文
posted @ 2021-09-07 23:12 平凡的神灯 阅读(7205) 评论(0) 推荐(2)
摘要:YARN原理 [TOC] 一、YARN是什么 概述: yarn是一个资源调度平台,负责为运算的程序提供运算所需的资源,相当于一个分布式的操作系统,而MapReduce就相当于运行在操作系统上的一个应用程序。 来由: yarn是hadoop2.0加入的一个框架,用来取代hadoop1.0中的 JobT 阅读全文
posted @ 2020-04-08 21:23 平凡的神灯 阅读(1480) 评论(0) 推荐(0)
摘要:MapReduce原理及源码解读 [TOC] 一、分片 灵魂拷问:为什么要分片? 分而治之: MapReduce(MR)的核心思想就是分而治之;何时分,如何分就要从原理和源码来入手。做为码农大家都知道,不管一个程序多么复杂,在写代码和学习代码之前最重要的就是搞懂输入和输出,而MR的输入其实就是一个目 阅读全文
posted @ 2020-04-01 18:26 平凡的神灯 阅读(3628) 评论(1) 推荐(2)
摘要:MapReduce基础 [TOC] 一、关于MapReduce 1.1 为什么要MapReduce 单机资源有限: 由于单台计算机的资源有限,计算能力不足以处理海量数据;所以需要多台计算机组成分布式集群来处理海量数据。 分布式计算较复杂: 在分布式计算中,计算任务的分发,各个主机之间的协作;程序的启 阅读全文
posted @ 2020-03-14 17:05 平凡的神灯 阅读(1041) 评论(2) 推荐(0)
摘要:HDFS HA [TOC] 一、HA(High Availability)的使用原因 1.1 在使用 HA之前 单点故障(SPOF)。 整个集群只有一个NameNode,如果这台部署NameNode的主机挂了,那么整个HDFS集群将会停止工作。虽然有SecondaryNameNode,但是Secon 阅读全文
posted @ 2020-03-05 16:19 平凡的神灯 阅读(458) 评论(0) 推荐(0)
摘要:1,文件结构 · bin:脚本和命令目录。 · etc:配置文件目录。 · sbin:命令目录,主要包含HDFS和YARN中各类服务的启动和关闭,依赖于bin中的脚本。 · share:各个模块编译后的jar包,和示例代码。 · libexec:各个服务的shell配置文件目录,比如配置日志输出目录 阅读全文
posted @ 2020-03-02 23:21 平凡的神灯 阅读(482) 评论(0) 推荐(0)
摘要:Hadoop初学思维导图 1,Hadoop ··· Hadoop: Hadoop的核心由HDFS和MapReduce组成。HDFS是分布式文件系统,是Hadoop生态圈的分布式数据存储基石;MapReduce是计算组件,会被Spark取代。 ··· Hadoop生态圈: Hadoop生态圈是一系列用 阅读全文
posted @ 2020-02-28 23:38 平凡的神灯 阅读(214) 评论(0) 推荐(0)
摘要:前期准备 (1)JAVA_HOME:因为Hadoop的配置文件中依赖 $JAVA_HOME。修改/etc/profile文件。 (2)hostname:修改主机名,方便管理。/etc/sysconfig/network。 (3)ip hostname:方便管理,hadoop默认是使用hostname 阅读全文
posted @ 2020-02-27 23:14 平凡的神灯 阅读(400) 评论(0) 推荐(0)
摘要:1,ZooKeeper概述 ··· 作用: · ZooKeeper是为分布式应用程序提供的一个分布式开源协调框架,是Hadoop和Hbase的重要组件; · 主要用于解决分布式集群中应用系统的一致性问题; · 提供了类似于Unix的节点树方式来存储数据; · 可用于维护和监控存储数据的状态变化,从而 阅读全文
posted @ 2020-02-26 22:45 平凡的神灯 阅读(187) 评论(0) 推荐(0)
摘要:1,HDFS体系结构 ··· HDFS是采用master/slaves即主从结构模型来管理数据的。这种模型主要由四部分组成,分别是Client、NameNode、DataNode、SecondaryNameNode。一个HDFS集群包括一个 NameNode(HA除外)和若干个 DataNode以及 阅读全文
posted @ 2020-02-25 22:00 平凡的神灯 阅读(904) 评论(0) 推荐(0)