Spark中如何防止内存溢出? Spark中如何防止内存溢出?[TOC] driver端的内存溢出 可以增大driver的内存参数:spark.driver.memory (default 1g) 这个参数用来设置Driver的内存。在Spark程序中,SparkContext,DAGScheduler都是运行在Driver端的。对应rdd的Stage切分也是在Driver端运行,如果用户自己写的程序有过多的步骤,切分出过多 2021-10-20 Spark
Spark中的宽窄依赖详解 Spark中的宽窄依赖详解[TOC] 概述 RDD之间有一系列的依赖关系,依赖关系又分为窄依赖和宽依赖 具体细节 窄依赖 父RDD和子RDD partition之间的关系是一对一的。或者父RDD一个partition只对应一个子RDD的partition情况下的父RDD和子RDD partition关系是多对一的。不会有shuffle的产生。父RDD的一个分区去 2021-10-20 Spark Stage
Spark中Driver的功能 Spark中Driver的功能[TOC] What? 用户提交的应用程序代码在spark中运行起来就是一个driver,用户提交的程序运行起来就是一个driver,他是一个一段特殊的excutor进程,这个进程除了一般excutor都具有的运行环境外,这个进程里面运行着DAGscheduler Tasksheduler Schedulerbackedn等组件。 2021-10-20 Spark
Spark的几种部署模式及其特点 Spark的几种部署模式及其特点[TOC] **local(本地模式)**: 常用于本地开发测试,本地还分为local单线程和local-cluster多线程; 运行该模式非常简单,只需要把Spark的安装包解压后,改一些常用的配置即可使用,而不用启动Spark的Master、Worker守护进程( 只有集群的Standalone方式时,才需要这两个角色), 2021-10-20 Spark
Kafka的ISR简述 Kafka的ISR简述[TOC] 如何保证生产的消息高可靠? 每个partition都给配上副本,做数据同步,保证数据不丢失。 副本数据同步策略 和zookeeper不同的是,Kafka选择的是全部完成同步,才发送ack。但是又有所区别。所以,你们才会在各种博客看到这句话【kafka不是完全同步,也不是完全异步,是一种ISR机制】,这句话对也不对,不对也对(谜语人… 2021-10-19 Kafka
Kafka的基本概念及原理 Kafka的基本概念及原理[TOC] 背景简介 Apache Kafka由著名职业社交公司LinkedIn开发,最初是被设计用来解决LinkedIn公司内部海量日志传输等问题。Kafka使用Scala语言编写,于2011年开源并进入Apache孵化器,2012年10月正式毕业,现在为Apache顶级项目。本文旨在使读者对Kafka有一个较为基本和全面的认识。 Kafka是什么? 2021-10-19 Kafka
Kafka高吞吐的实现 Kafka高吞吐的实现[TOC] 顺序读写读取时间 寻道时间,表示磁头在不同磁道之间移动的时间。 旋转延迟,表示在磁道找到时,中轴带动盘面旋转到合适的扇区开头处。 传输时间,表示盘面继续转动,实际读取数据的时间。 顺序读写,磁盘会预读,预读即在读取的起始地址连续读取多个页面,主要时间花费在了传输时间,而这个时间两种读写可以认为是一样的。 随机读写,因为数据没有在一起,将预读浪费掉了。需要多 2021-10-19 Kafka
Kafka的消息数据积压,Kafka的消费能力不足怎么处理? Kafka的消息数据积压,Kafka的消费能力不足怎么处理?可以从两方面考虑: 1、如果是Kafka消费能力不足,则可以考虑增加Topic的分区数(一般一个Topic分区数为3-10个),并且同时提升消费组的消费者数量,消费者数==分区数。两者缺一不可 2、如果是下游的数据处理不及时:则提高每批次拉取的数量。批次拉取数据过少(拉取数据/处理时间<生产速度),使处理的数据小于生产的数据,也会造 2021-10-19 Kafka
Kafka的偏移量offset存放在哪?为什么? Kafka的偏移量offset存放在哪?为什么?[TOC] 从Kafka-0.9版本之后,Kafka的消费者组和offset信息就不存在zookeeper了,而是存在到了broker服务器上。所以,如果你为某个消费者指定了一个消费者组名称(group.id)。那么,一旦这个消费者启动,这个消费者组名和它要消费的那个topic的offset信息就会被记录在broker服务器上。 1 2021-10-19 Kafka