sparkweb

Spark学习之路 (十二)SparkCore的调优之资源调优

不想你离开。 提交于 2021-02-14 07:06:44
摘抄自: https://tech.meituan.com/spark-tuning-basic.html 一、概述 在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常。总之,无论是哪种情况,都会导致Spark作业的运行效率低下,甚至根本无法运行。因此我们必须对Spark作业的资源使用原理有一个清晰的认识,并知道在Spark作业运行过程中,有哪些资源参数是可以设置的,以及如何设置合适的参数值。 二、Spark作业基本运行原理 详细原理见上图。我们使用spark-submit提交一个Spark作业之后,这个作业就会启动一个对应的Driver进程。根据你使用的部署模式(deploy-mode)不同,Driver进程可能在本地启动,也可能在集群中某个工作节点上启动。Driver进程本身会根据我们设置的参数,占有一定数量的内存和CPU core。而Driver进程要做的第一件事情,就是向集群管理器(可以是Spark Standalone集群

如何在本地调试你的 Spark Job

给你一囗甜甜゛ 提交于 2020-08-14 03:52:54
生产环境的 Spark Job 都是跑在集群上的,毕竟 Spark 为大数据而生,海量的数据处理必须依靠集群。但是在开发Spark的的时候,不可避免我们要在本地进行一些开发和测试工作,所以如何在本地用好Spark也十分重要,下面给大家分享一些经验。 首先你需要在本机上安装好了Java,Scala和Spark,并配置好了环境变量。详情请参考官方文档或其他教程。 spark-shell 本地运行Spark最直接的方式就是在命令行里面运行spark-shell,成功后你将看到如下信息: 首先可以仔细阅读一下命令行的提示信息, Picked up _JAVA_OPTIONS: -Xmx512M -Xms512M // _JAVA_OPTIONS是我在系统环境变量里面设置的值 Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties // 告诉你log4j使用配置 Setting default log level to "WARN". // log级别 To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). // 如何调整log级别 Spark context

如何在本地调试你的 Spark Job

梦想的初衷 提交于 2020-08-11 07:17:25
生产环境的 Spark Job 都是跑在集群上的,毕竟 Spark 为大数据而生,海量的数据处理必须依靠集群。但是在开发Spark的的时候,不可避免我们要在本地进行一些开发和测试工作,所以如何在本地用好Spark也十分重要,下面给大家分享一些经验。 首先你需要在本机上安装好了Java,Scala和Spark,并配置好了环境变量。详情请参考官方文档或其他教程。 spark-shell 本地运行Spark最直接的方式就是在命令行里面运行spark-shell,成功后你将看到如下信息: 首先可以仔细阅读一下命令行的提示信息, Picked up _JAVA_OPTIONS: -Xmx512M -Xms512M // _JAVA_OPTIONS是我在系统环境变量里面设置的值 Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties // 告诉你log4j使用配置 Setting default log level to "WARN". // log级别 To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). // 如何调整log级别 Spark context

Spark-submit常用任务命令参数和说明

会有一股神秘感。 提交于 2020-08-05 19:39:26
Spark常用任务命令参数和说明 spark-submit \ --name task2018072711591669 \ --master yarn --deploy-mode client \ --jars sparklistener-0.0.3-SNAPSHOT.jar \ --conf spark.extraListeners=com.etf.spark.listener.EtfJavaListener \ --py-files service.json,\ freq.py,\ helpers.py,\ spark_template_module.py,\ status.py,\ user_spark_run.py, \ spark_logger.py \ spark_main.py 参数解释 参数名称 值 作用 --name 任务名称 --master yarn 部署模式 --deploy-mode Client 驱动模式 --jars Jar包名称 执行任务附加的包名称 --conf 配置参数 配置参数,有多个参数可以配置 --py-files Py文件列表 任务执行需要的py文件,可以是.py .zip等 以逗号隔开 xx.py xx.py 任务主执行入口文件。Py或者java等 Spark并行执行参数 命令示例: ./bin/spark-submit \ -