大数据
gerry.tan
喜欢大数据领域的开源框架技术,乐于总结学习与工作过程中的技术知识,希望与大家相互学习与探讨。有问题请直接联系QQ:1024412038
展开
-
Zookeeper学习概览
CAP定理:Consistency(一致性), 数据一致更新,所有数据变动都是同步的Availability(可用性), 好的响应性能Partition tolerance(分区容错性) 可靠性定理:任何分布式系统只可同时满足二点,没法三者兼顾。做到了分布式里面数据的最终一致性、保证自己高可用!!! 角色:Server(Leader、Follower、Ob原创 2016-07-18 15:14:34 · 344 阅读 · 0 评论 -
spark troubleshooting--解决各种序列化导致的错误
troubleshooting 解决各种序列化导致的错误你会看到什么样的序列化导致的报错?用client模式去提交spark作业,观察本地打印出来的log。如果出现了类似于Serializable、Serialize等等字眼,报错的log,那么恭喜大家,就碰到了序列化问题导致的报错。虽然是报错,但是序列化报错,应该是属于比较简单的了,很好处理。序原创 2017-03-25 17:25:34 · 646 阅读 · 0 评论 -
spark troubleshooting--算子函数返回NULL导致问题
troubleshooting 解决算子函数返回NULL导致问题在算子函数中,返回nullreturn actionRDD.mapToPair(new PairFunction() {private static final long serialVersionUID = 1L;@Overridepublic Tuple2 call(Row row)原创 2017-03-25 17:26:52 · 1338 阅读 · 0 评论 -
spark troubleshooting--YARN队列资源不足导致的application直接失败
troubleshooting YARN队列资源不足导致的application直接失败现象:如果说,你是基于yarn来提交spark。比如yarn-cluster或者yarn-client。你可以指定提交到某个hadoop队列上的。每个队列都是可以有自己的资源的。跟大家说一个生产环境中的,给spark用的yarn资源队列的情况:500G内存,200个cpu原创 2017-03-25 17:27:52 · 3063 阅读 · 1 评论 -
spark数据倾斜解决方案(一)炫酷的4个方案
A,数据倾斜解决方案 使用随机key实现双重聚合使用随机key实现双重聚合1、原理把key前面都加上个随机数,使得key分散,让key跑到不同的task上面去!然后再经过反向映射map算子再把前缀去掉,再去计算双重聚合就是聚合两遍2、使用场景(1)groupByKey(2)reduceByKey比较适合使用这种方式;join原创 2017-03-25 17:29:59 · 1471 阅读 · 0 评论 -
spark 数据倾斜解决方案 (二)聚合源数据以及过滤导致倾斜的key
数据倾斜解决方案 聚合源数据以及过滤导致倾斜的key数据倾斜的解决,跟之前讲解的性能调优,有一点异曲同工之妙。性能调优,跟大家讲过一个道理,“重剑无锋”。性能调优,调了半天,最有效,最直接,最简单的方式,就是加资源,加并行度,注意RDD架构(复用同一个RDD,加上cache缓存);shuffle、jvm等,次要的。数据倾斜,解决方案,第一个方案和第二个方案,一起来讲原创 2017-03-25 17:31:46 · 994 阅读 · 0 评论 -
spark数据倾斜解决方案(三) 提高shuffle操作reduce并行度
数据倾斜解决方案 提高shuffle操作reduce并行度当我们设置spark.default.parallelism,100我们假设Map端有100个task,然后reduce端有100个task然后此时发生数据倾斜了,一个task有10万数据,其他task都只有10条数据假设第一个方案和第二个方案都不适合做!第三个方案,提高shuffle操作的reduce原创 2017-03-25 17:33:01 · 2619 阅读 · 0 评论 -
spark数据倾斜解决方案--原理及现象分析
数据倾斜解决方案 原理及现象分析最最有含金量,最最有实战性,最最有价值,最最有意义的这么个部分1、大数据开发流程(需求分析。。。性能调优)2、用户行为分析的业务(聚合统计、随机抽取、topn、排序)3、技术点:大数据项目模块的技术架构、spark core各种算子、自定义Accumulator、随机抽取算法、分组取topn、二次排序4、大数据项目中的性能调优原创 2017-03-25 17:36:26 · 1622 阅读 · 0 评论 -
spark性能调优(一)JVM调优
性能调优JVM调优原理概述不够炫但是很有用够炫听起来高端的1、常规性能调优:分配资源、并行度。。。等2、JVM调优(Java虚拟机):JVM相关的参数,通常情况下,如果你的硬件配置、基础的JVM的配置,都ok的话,JVM通常不会造成太严重的性能问题;反而更多的是,在troubleshooting中,JVM占了很重要的地位;JVM造成线上的spar原创 2017-03-25 17:41:23 · 809 阅读 · 0 评论 -
spark性能调优(二)shuffle调优
shuffle调优什么情况下会发生shuffle,然后shuffle的原理是什么,然后我们再一一的剖析!包括我们后面讲troubleShooting的时候还有我们之前JVM是不是都需要知道shuffle的原理!希望同学们把shuffle原理重视起来啊!什么样的情况下,会发生shuffle?在spark中,主要是以下几个算子:groupByKey、redu原创 2017-03-25 17:43:55 · 1203 阅读 · 0 评论 -
spark性能调优(三)shuffle的map端内存缓冲reduce端内存占比
性能优化 shufflespark.shuffle.file.buffer,默认32kspark.shuffle.memoryFraction,0.2map端内存缓冲,reduce端内存占比;很多资料、网上视频,都会说,这两个参数,是调节shuffle性能的不二选择,很有效果的样子,实际上,不是这样的。以实际的生产经验来说,这两个参数没有那么重要,往往来原创 2017-03-25 17:48:00 · 963 阅读 · 0 评论 -
spark性能调优(四)调节堆外内存和等待时长
调节堆外内存!!!executor堆外内存spark底层shuffle使用netty传输,所以使用了堆外内存!1.2之前是NIO就是socket,之后默认使用netty有时候,如果你的spark作业处理的数据量特别特别大,几亿数据量;然后spark作业一运行,时不时的报错,shuffle file cannot find,executor、task lost原创 2017-03-26 01:27:07 · 2502 阅读 · 1 评论 -
spark shuffle过程
1. SparkShuffle1. SparkShuffle概念reduceByKey会将上一个RDD中的每一个key对应的所有value聚合成一个value,然后生成一个新的RDD,元素类型是对的形式,这样每一个key对应一个聚合起来的value。问题:聚合之前,每一个key对应的value不一定都是在一个partition中,也不太可能在同一个节点上,因为RDD是分布式的弹性的数据集,R转载 2018-01-19 11:23:01 · 3886 阅读 · 0 评论 -
spark troubleshooting--解决yarn-cluster模式的JVM栈内存溢出问题
troubleshooting 解决yarn-cluster模式的JVM栈内存溢出问题大公司里面你的机器节点一般都是虚拟机啊!所以不能yarn-client会有网络激增的问题!Yarn-client模式可以跑,但是Yarn-cluster模式不能跑,就是报那么一个JVM永久代溢出的那么一个问题!1,spark-submit脚本提交spark applicatio原创 2017-03-25 17:24:34 · 551 阅读 · 0 评论 -
spark troubleshooting--错误的持久化方式以及checkpoint的使用
troubleshooting 错误的持久化方式以及checkpoint的使用错误的持久化使用方式:usersRDD,想要对这个RDD做一个cache,希望能够在后面多次使用这个RDD的时候,不用反复重新计算RDD;可以直接使用通过各个节点上的executor的BlockManager管理的内存 / 磁盘上的数据,避免重新反复计算RDD。usersRDD原创 2017-03-25 17:23:22 · 636 阅读 · 1 评论 -
HDFS--hadoop集群
1. hadoop三篇论文:– GFS – Map-Reduce – Bigtable2.HDFS优缺点:HDFS优点:– 高容错性 • 数据自动保存多个副本 • 副本丢失后,自动恢复 – 适合批处理 • 移动计算而非数据 • 数据位置暴露给计算框架– 适合大数据处理 • GB 、TB 、甚至PB 级数据 • 百万规模以上的文件数量 •原创 2016-07-19 22:48:27 · 347 阅读 · 0 评论 -
Zookeeper全解析——Paxos作为灵魂
转载至:https://www.douban.com/note/208430424/原计划在介绍完ZK Client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的。于是决定从基础搞起比较好。那么ZK Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在ZK Server中对应转载 2016-07-16 10:56:56 · 437 阅读 · 0 评论 -
hdfs HA + MR HA
Hodoop1.x 到 Hadoop2.x1、Hadoop 1.x 存在的问题:– HDFS存在的问题 • NameNode单点故障,难以应用于在线场景• NameNode压力过大,且内存受限,影响系统扩展性– MapReduce存在的问题 • JobTracker访问压力大,影响系统扩展性•难以支持除MapReduce之外的计算框架,比如Spark、Storm等原创 2016-07-21 16:57:59 · 1391 阅读 · 0 评论 -
Hadoop2.6.0集群搭建
先申明本人的安装环境:CentOS6.7,Hadoop2.6,jdk 1.7Hadoop2相比较于Hadoop1.x来说,HDFS的架构与MapReduce的都有较大的变化,且速度上和可用性上都有了很大的提高,Hadoop新版2.6.0采用的了新的 map-reduce 框架(Yarn) 原理,结构较原来都有所改变,所以安装、配置也都发生了改变。原结构中:集群节点主要为ma原创 2016-04-23 14:52:50 · 496 阅读 · 0 评论 -
CDH搭建那些事
cdh搭建详细步骤,本人配置的本地源。原创 2016-08-27 00:56:58 · 6335 阅读 · 1 评论 -
hive优化
Hive 优化 要点:优化时,把 hive sql当做 map reduce程序来读,会有意想不到的惊喜。理解 hadoop 的核心能力,是 hive优化的根本。 长期观察 hadoop 处理数据的过程,有几个显著的特征: 1.不怕数据多,就怕数据倾斜。 2.对 jobs 数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个j原创 2017-03-25 14:45:39 · 259 阅读 · 0 评论 -
HBase性能优化方法总结(一):表的设计
HBase性能优化方法总结(一):表的设计1.表的设计1.1 Pre-CreatingRegions默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入HBase时,会按照regi原创 2017-03-25 14:49:02 · 907 阅读 · 0 评论 -
hadoop-hhbase调优
一、调优的目的充分的利用机器的性能,更快的完成mr程序的计算任务。甚至是在有限的机器条件下,能够支持运行足够多的mr程序。二、调优的总体概述从mr程序的内部运行机制,我们可以了解到一个mr程序由mapper和reducer两个阶段组成,其中mapper阶段包括数据的读取、map处理以及写出操作(排序和合并/sort&merge),而reducer阶段包含mapper输出数据的获取、数据原创 2017-03-25 14:51:06 · 368 阅读 · 0 评论 -
Spark性能优化——解决Spark数据倾斜
为何要处理数据倾斜(Data Skew) 什么是数据倾斜对Spark/Hadoop这样的大数据系统来讲,数据量大并不可怕,可怕的是数据倾斜。何谓数据倾斜?数据倾斜指的是,并行处理的数据集中,某一部分(如Spark或Kafka的一个Partition)的数据显著多于其它部分,从而使得该部分的处理速度成为整个数据集处理的瓶颈。数据倾斜是如何造成的 在Sp转载 2017-03-25 17:16:54 · 463 阅读 · 0 评论 -
spark troubleshooting--JVM GC导致的shuffle文件拉取失败
troubleshooting JVM GC导致的shuffle文件拉取失败比如,executor的JVM进程,可能内存不是很够用了。那么此时可能就会执行GC。minor GC or full GC。总之一旦发生了JVM之后,就会导致executor内,所有的工作线程全部停止,比如BlockManager,基于netty的网络通信。有时会出现的一种情况,非常普遍,在原创 2017-03-25 17:20:00 · 444 阅读 · 0 评论 -
spark troubleshooting--shuffle reduce端缓冲大小以避免OOM
troubleshooting shuffle reduce端缓冲大小以避免OOM在我们IT里面就是解决线上故障!shuffle reduce 端工作原理reduce端默认buffer大小是48MB,spark的shuffle和MR的shuffle绝对是不一样的!!!map端的task是不断的输出数据的,数据量可能是很大的。但是,其实re原创 2017-03-25 17:21:18 · 641 阅读 · 0 评论 -
spark troubleshooting--yarn-client模式导致的网卡流量激增问题
troubleshooting yarn-client模式导致的网卡流量激增问题大公司都是通过Yarn来进行调度,mapreduce on yarn、spark on yarn、甚至storm on yarnYarn集群分成两种节点:ResourceManager负责资源的调度NodeManager负责资源的分配、应用程序执行这些东西通过Spark-su原创 2017-03-25 17:22:35 · 597 阅读 · 0 评论