06 2018 档案
摘要:5.RDD的持久化 5.1 概述 Spark一个很重要的能力就是支持对RDD的持久化(或者说缓存),并且在多个操作可以访问这些持久化数据,从从而无需再重新计算. 对于RDD的持久化,Spark还有个很重要的能力就是容错的: 如果RDD的某个分区丢失了,它会自动的根据它的源RDD重新计算 5.2 存储
阅读全文
摘要:RDD的操作 1.1 概述 RDD整体包含两大类操作 transformation 从现有中创建一个新的数据集 action 在对数据集做一定程度的计算后将结果返回 对于所有的transformation,都是Lazy的,也就是说它不会立即执行,只是单纯的记住怎么样从原来的数据集进行转换的逻辑而已,
阅读全文
摘要:1.RDD的创建 1.1 从一个本地的Scala集合创建 1.2 从一个外部的存储系统中创建 这里外部系统,指的是任何Hadoop(InputFormat)支持的存储系统.比如本地文本文件,HDFS,HBase,S3等等 1.2.1 textFile 1.2.2 wholeTextFiles who
阅读全文
摘要:1.什么是RDD Resilient Distributed Dataset(RDD),弹性的分布式数据集. 分布式数据集,是指数据集会以patition块的方式,存储在多个节点上. 弹性,体现在Spark计算过程中将数据的抽象封装,依此带来的各种重试机制,内存和磁盘切换,高自由的分片函数等 Had
阅读全文
摘要:1.基础环境准备 Spark 2.3.1 编译需要 Maven 3.3.9 和 Java 8+ (从官网我们得知Java7已经在Spark2.2.0开始就已经不支持了),这里已提前准备,跳过. 另 Maven需要将内存使用调高(防止编译过程内存超标报错) Spark编译时最好把Git装上.(方便后面
阅读全文
摘要:1.HiveSQL优化 1.1 中心思想 这里以Hive On MapReduce 为例,Hive On Spark等思路也是一致的. HiveSQL会最终转化为MapReduce进行执行,那么优化的前提是至少对MapReduce有基本的了解 其次是必须了解HiveSQL会转化成怎么样的MapRed
阅读全文
摘要:前一篇介绍了线上应用故障排查之一:高CPU占用,这篇主要分析高内存占用故障的排查。 搞Java开发的,经常会碰到下面两种异常: 1、java.lang.OutOfMemoryError: PermGen space 2、java.lang.OutOfMemoryError: Java heap sp
阅读全文
摘要:以我们最近出现的一个实际故障为例,介绍怎么定位和解决这类问题。 根据top命令,发现PID为28555的Java进程占用CPU高达200%,出现故障。 通过ps aux | grep PID命令,可以进一步确定是tomcat进程出现了问题。但是,怎么定位到具体线程或者代码呢? 首先显示线程列表: p
阅读全文
摘要:YARN作为资源调度管理组件,对YARN的的优化主要呈现在CPU和内存两方面 1.内存篇 在YARN集群中,平衡内存,CPU和磁盘的资源是比较重要的.一般来说,每两个Container使用一块磁盘和一个CPU核可以是使资源得到比较充分的利用 对YARN而言的内存可用资源,是指在排除操作系统或其它应用
阅读全文
摘要:Yarn的资源调度策略 理想情况下,我们对Yarn的资源申请应该立即得到满足,但实际情况下整个集群的资源总量是有限的,这时就依赖资源调度器对资源进行调度了. 但在实际过程中,资源的调度策略本身就是一个难题,很难有一个完美的调度策略可以适用与所有的情况,为此Yarn提供了三种调度器让我们自行选择适用
阅读全文
摘要:1.简述 Yarn是Hadoop2.X的核心组件之一.负责集群的资源管理.(不局限于Hadoop,Spark等等相当多的组件都可以利用Yarn来进行资源管理与调度) Yarn本身由两大组件构成:ResourceManager(RM)和NodeManager(NM).在Yarn中,整个资源管理依靠这两
阅读全文
摘要:1.准备 https://downloads.gradle.org/distributions/gradle-4.1-all.zip #unzip /home/hadoop/software/azkaban-3.47.0.zip -d /home/hadoop/source/ 2.编译 首先设置gr
阅读全文
摘要:Hadoop运维人员,负责为Hadoop提供一个高效和可靠的作业执行环境,很多时候,需要从全局出发,通过调整一些关键参数以提供系统的性能和吞吐量. 总体上看,Hadoop运维需要从硬件选择,操作系统参数调优,JVM参数调优,Hadoop参数调优四个方面着手进行调优 1.硬件选择 在硬件环境中,应着重
阅读全文
摘要:1.5台机器执行 ssh-keygen[root@sht-sgmhadoopnn-01 ~]# ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rs
阅读全文
摘要:1.读取执行的上级目录 basepath=$(cd `dirname $0`;cd ..; pwd) 2.Sudo切换用户并执行MySQL语句 echo '密码'|sudo -u mysqladmin -S /usr/local/mysql/bin/mysql -uMySQL用户名 -pMySQL密
阅读全文
摘要:1.脚本文件 Shell脚本一般以.sh为后缀名.但注意在Linux中.sh不是作为文件类型识别的依据,仅仅只是用来向看到的人标记这是一个Shell脚本而已. Shell脚本一般有一个头声明 #!/bin/bash 告诉Linux应该用什么来执行脚本,如果没有,Linux默认将使用bash来执行脚本
阅读全文
摘要:1.概述 Sqoop的导入导出,是Sqoop的核心功能.导入导出,是针对Hadoop而言.所以 Sqoop导入 : RDBMS数据导入到Hadoop Sqoop导出: Hadoop数据导出到RDBMS中 Sqoop导入时,会 2.导入 2.1 导入到HDFS delete-target-dir 谨慎
阅读全文
摘要:1.什么是Sqoop Sqoop是sql-to-hadoop 的部分单词字母汇总.它是作为Hadoop(广义,包括但不限于HDFS)与结构化存储(RDBMS),相互的导入导出桥梁. Sqoop是Apache的顶级项目,所以其有独立官网 http://sqoop.apache.org/ Sqoop有两
阅读全文
摘要:1.函数分类 UDF 单进单出函数 UDAF 多进单出函数(比如Count,Sum...多个记录输出一个结果) UDTF 单进多出函数(比如explode,一个记录输出多行结果) 2.操作符 A = B(等价A == B) 值相等 A <==> B Equals(两个同时为Null为真,只有一个Nu
阅读全文
摘要:1. 2.表 2.1 常用命令 查看描述信息 # desc formatted xxx 建立表 CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name -- (Note: TEMPORARY available
阅读全文
摘要:1.Create Database CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] --数据库描述 [LOCATION hdfs_path] --数据库SourceData存储路径 [
阅读全文
摘要:1. ORC是什么 ORC,全称 Optimized Row Columnar.是Hadoop生态圈的列式存储概念,最早由Hive提出.\ 在Hive的ORC,首先依然是根据行组分割整个表,但是在每个行组中,按列存储.ORC文件是自描述的,它的元数据使用Protocol Buffers进行序列化,并
阅读全文
摘要:1.Hive简述 1.1 Hive是什么 Hive是数据仓库.它是构建在Hadoop之上的,通过解析QL(Hive SQL),转换成MR任务(Tez,Spark......)去提交执行. RDBMS一般是写验证,而Hive是读验证,即数据进入不会验证数据是否符合要求,只在读取的时候检查,解析具体字段
阅读全文
摘要:2.部署 解压 # tar -xzvf ~/software/hive-1.1.0-cdh5.7.0.tar.gz -C ~/app/ 配置环境变量 export HIVE_HOME=/home/hadoop/app/hive-1.1.0-cdh5.7.0 export PATH=$HIVE_HOM
阅读全文
摘要:1.Mapper 1.1 泛型参数 Mapper有四个泛型参数,Mapper<KEYIN, VALUEIN, KEYOUT, VALUEOUT>: KEYIN:默认读取的一行文本的起始偏移量.Long类型,在Hadoop中包装成LongWriteable VALUEIN:默认读取的一行文本的字符串信
阅读全文
摘要:1.MapReduce概述 MapReduce是Hadoop的计算引擎,是Hadoop的三大组件之一. 但随着技术的发展,MapReduce臃肿繁杂,正在被其它的计算引擎所慢慢取代,这里就了解一下MapReduce的执行过程就行了 2.MapReduce的执行过程 MapReduce总体上分为4个执
阅读全文
摘要:1.强制修改所有文件的副本数为1 hadoop dfs -setrep -w 1 -R / 2.HDFS自检(全部文件) hadoop fsck /
阅读全文

浙公网安备 33010602011771号