摘要:
先介绍下CountDownLatch和CyclicBarrier; CountDownLatch:new CountDownLatch(n),初始化时会赋值,并且不可以重新赋值。 countDown(),值减1,操作,当值为0时,会跳过所有的阻塞方法await(); await(),阻塞方法,一直阻 阅读全文
摘要:
一:实现HA 1-基于zookeeper实现HA 配置spark-env.sh,master节点挂掉以后,会进行恢复操作。 export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zook 阅读全文
摘要:
前言 spark streaming在2.2.1版本之后出现一个类似的实时计算框架Structured Streaming。 引用一句spark streaming structured streaming区别博客的原话,建议扩展读下:Structured Streaming 通过提供一套 high 阅读全文
摘要:
一、工作原理剖析 二、性能优化 1、设置Shuffle过程中的并行度:spark.sql.shuffle.partitions(SQLContext.setConf()) 2、在Hive数据仓库建设过程中,合理设置数据类型,比如能设置为INT的,就不要设置为BIGINT。减少数据类型导致的不必要的内 阅读全文
摘要:
一:Spark SQL的特点1、支持多种数据源:Hive、RDD、Parquet、JSON、JDBC等。2、多种性能优化技术:in-memory columnar storage、byte-code generation、cost model动态评估等。3、组件扩展性:对于SQL的语法解析器、分析器 阅读全文
摘要:
一、maven常用命令: mvn clean 清空产生的项目( target里) mvn compile 编译源代码 mvn install 在本地repository中安装jar(包含mvn compile,mvn package,然后上传到本地仓库) mvn deploy 上传到私服(包含mvn 阅读全文
摘要:
一:Spark的性能优化,主要手段包括:1、使用高性能序列化类库2、优化数据结构3、对多次使用的RDD进行持久化 / Checkpoint4、使用序列化的持久化级别5、Java虚拟机垃圾回收调优6、提高并行度7、广播共享数据8、数据本地化9、reduceByKey和groupByKey的合理使用10 阅读全文
摘要:
SparkContext,Master准备切换源码; TaskScheduler,Exector,Task,Shuffle,BlockManager,CacheManager,Checkponit源码; 拓展阅读:中华石杉-spark从入门到精通 阅读全文
摘要:
一个job对应一个action操作,action执行会有先后顺序; 每个job执行会先构建一个DAG路径,一个job会含有多个stage,主要逻辑在DAGScheduler。 spark提交job的源码见(SparkContext.scala的runJob方法): DAGScheduler--job 阅读全文
摘要:
worker启动一般包含两大部分:DriverRunner和ExcetorRunner。 worker启动driver的几个基本原理,最核心的是。worker内部会启动一个线程,这个线程可以理解为driverRunner。然后DriverRunner会去负责启动driver进程,并在之后对drive 阅读全文