<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Spark on LeoChu Space</title>
    <link>https://leochu.work/blog/tags/spark/</link>
    <description>Recent content in Spark on LeoChu Space</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 23 Nov 2024 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://leochu.work/blog/tags/spark/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>spark参数num-executors未生效</title>
      <link>https://leochu.work/blog/tech/bigdata/spark%E5%8F%82%E6%95%B0num-executors%E6%9C%AA%E7%94%9F%E6%95%88/</link>
      <pubDate>Sat, 23 Nov 2024 00:00:00 +0000</pubDate>
      <guid>https://leochu.work/blog/tech/bigdata/spark%E5%8F%82%E6%95%B0num-executors%E6%9C%AA%E7%94%9F%E6%95%88/</guid>
      <description>&lt;h3 id=&#34;问题&#34;&gt;问题：&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;spark-submit --master yarn --conf spark.default.parallelism&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--deploy-mode cluster --driver-memory 4G --executor-memory 4G &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--num-executors &lt;span style=&#34;color:#ae81ff&#34;&gt;40&lt;/span&gt; --executor-cores &lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--conf spark.yarn.executor.memoryOverhead&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;5g &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--class com.lz.hbase.CompanyInfo /tmp/test_langzi/original-spark_hbase01-1.0-SNAPSHOT.jar
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;以上提交参数中的&amp;ndash;num-executors 40没有生效，executors 大于40并且占满yarn资源，导致后来的yarn任务阻塞&lt;/p&gt;
&lt;h3 id=&#34;原因&#34;&gt;原因：&lt;/h3&gt;
&lt;p&gt;官方参数解释&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ndash;num-executors NUM
Number of executors to launch (Default: 2).
If dynamic allocation is enabled, the initial number of executors will be at least NUM.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;当开启动态分配时，num-executors成为了最小executors 数，而cdh中spark默认开启dynamic allocation，所以当yarn队列资源空闲时，真正的excutor数会大于设置的num-executors&lt;/p&gt;
&lt;h3 id=&#34;解决方案&#34;&gt;解决方案：&lt;/h3&gt;
&lt;p&gt;提交参数添加&lt;code&gt;--conf spark.dynamicAllocation.maxExecutors=40&lt;/code&gt; 限制最大excutor数&lt;/p&gt;
&lt;h3 id=&#34;附spark提交任务模板&#34;&gt;附：spark提交任务模板&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;spark-submit --master yarn --conf spark.default.parallelism&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--conf spark.dynamicAllocation.maxExecutors&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;40&lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--deploy-mode cluster --driver-memory 4G --executor-memory 4G &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--num-executors &lt;span style=&#34;color:#ae81ff&#34;&gt;40&lt;/span&gt; --executor-cores &lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--conf spark.yarn.executor.memoryOverhead&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;4G &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--class com.lz.hbase.CompanyInfo /tmp/test_langzi/original-spark_hbase01-1.0-SNAPSHOT.jar
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>hiveOnSpak客户端RemoteSparkDriver超时</title>
      <link>https://leochu.work/blog/tech/bigdata/hiveonspark%E5%AE%A2%E6%88%B7%E7%AB%AFremotesparkdriver%E8%B6%85%E6%97%B6/</link>
      <pubDate>Sat, 12 Oct 2024 00:00:00 +0000</pubDate>
      <guid>https://leochu.work/blog/tech/bigdata/hiveonspark%E5%AE%A2%E6%88%B7%E7%AB%AFremotesparkdriver%E8%B6%85%E6%97%B6/</guid>
      <description>&lt;h2 id=&#34;1现象&#34;&gt;1.现象&lt;/h2&gt;
&lt;p&gt;&lt;img alt=&#34;Pasted image 20230327113600.png&#34; loading=&#34;lazy&#34; src=&#34;https://leochu.work/blog/resource/Pasted%20image%2020230327113600.png&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;2原因&#34;&gt;2.原因&lt;/h2&gt;
&lt;p&gt;集群资源使用率过高时可能会导致Hive On Spark查询失败-查询超时。&lt;/p&gt;
&lt;p&gt;从hive on spark的架构看出超时的位置：&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;Pasted image 20230327113614.png&#34; loading=&#34;lazy&#34; src=&#34;https://leochu.work/blog/resource/Pasted%20image%2020230327113614.png&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;3解决&#34;&gt;3.解决&lt;/h2&gt;
&lt;p&gt;修改以下参数，重启集群&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;### 其他可设置的参考参数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 在Hive client和远程Spark driver通信过程中，随机生成密码的比特数。最好设置成8的倍数。　&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.secret.bits
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 远程Spark drive用于处理RPC事件所用的最大线程数，默认是8。　&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.rpc.threads
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# Hive client和远程Spark driver通信最大的消息大小（单位：byte）,默认是50MB。　&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.rpc.max.size
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 远程Spark driver的通道日志级别，必须是DEBUG, ERROR, INFO, TRACE, WARN中的一个。　&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.channel.log.level
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 用于身份验证的SASL机制的名称。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.rpc.sasl.mechanisms
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#生产集群设置的相应参数：&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.future.timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;360s &lt;span style=&#34;color:#75715e&#34;&gt;# Hive client请求Spark driver的超时时间，如果没有指定时间单位，默认就是秒。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.metastore.client.socket.timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;360s &lt;span style=&#34;color:#75715e&#34;&gt;# 客户端socket超时时间，默认20秒。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.connect.timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;360000ms &lt;span style=&#34;color:#75715e&#34;&gt;# Spark driver连接Hive client的超时时间，如果没有指定时间单位，默认就是毫秒。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.client.server.connect.timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;360000ms &lt;span style=&#34;color:#75715e&#34;&gt;# Hive client和远程Spark driver握手时的超时时间，这个会在两边都检查的，如果没有指定时间单位，默认就是毫秒。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;hive.spark.job.monitor.timeout&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;180s &lt;span style=&#34;color:#75715e&#34;&gt;# Job监控获取Spark作业状态的超时时间，如果没有指定时间单位，默认就是秒。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>spark提交参数</title>
      <link>https://leochu.work/blog/tech/bigdata/spark%E6%8F%90%E4%BA%A4%E5%8F%82%E6%95%B0/</link>
      <pubDate>Sun, 30 Apr 2023 00:00:00 +0000</pubDate>
      <guid>https://leochu.work/blog/tech/bigdata/spark%E6%8F%90%E4%BA%A4%E5%8F%82%E6%95%B0/</guid>
      <description>&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;spark-submit --master yarn --conf spark.default.parallelism&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;100&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--deploy-mode cluster --driver-memory 4G --executor-memory 4G &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--num-executors &lt;span style=&#34;color:#ae81ff&#34;&gt;40&lt;/span&gt; --executor-cores &lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--conf spark.yarn.executor.memoryOverhead&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;5g &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--class com.lz.hbase.CompanyInfo /tmp/test_langzi/original-spark_hbase01-1.0-SNAPSHOT.jar &lt;span style=&#34;color:#ae81ff&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;--conf spark.dynamicAllocation.maxExecutors&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;40&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
    <item>
      <title>Spark Thrift Server</title>
      <link>https://leochu.work/blog/tech/bigdata/spark-thrift-server/</link>
      <pubDate>Sun, 16 Apr 2023 00:00:00 +0000</pubDate>
      <guid>https://leochu.work/blog/tech/bigdata/spark-thrift-server/</guid>
      <description>&lt;h4 id=&#34;文章目录&#34;&gt;文章目录&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_Server_1&#34;&gt;一、Spark Thrift Server 介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_Server_9&#34;&gt;二、部署 Spark Thrift Server&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_Server_29&#34;&gt;三、Spark Thrift Server 的架构&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_ServerSQL_40&#34;&gt;四、Spark Thrift Server 如何执行 SQL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#HiveServer2_48&#34;&gt;五、和 HiveServer2 的区别&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_Server_58&#34;&gt;Spark Thrift Server 的优点&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#Spark_Thrift_Server_64&#34;&gt;Spark Thrift Server 的缺点&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#_72&#34;&gt;六、结论&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;一spark-thrift-server-介绍&#34;&gt;一、Spark Thrift Server 介绍&lt;/h3&gt;
&lt;p&gt;Spark Thrift Server 是 Spark 社区基于 HiveServer2 实现的一个 Thrift 服务。旨在无缝兼容 HiveServer2。&lt;/p&gt;
&lt;p&gt;因为 Spark Thrift Server 的接口和协议都和 HiveServer2 完全一致，因此我们部署好 Spark Thrift Server 后，可以直接使用 hive 的 beeline 访问 Spark Thrift Server 执行相关语句。&lt;/p&gt;
&lt;p&gt;Spark Thrift Server 的目的也只是取代 HiveServer2，因此它依旧可以和 Hive Metastore 进行交互，获取到 hive 的元数据。&lt;/p&gt;</description>
    </item>
    <item>
      <title>hive设置spark参数</title>
      <link>https://leochu.work/blog/tech/bigdata/hive%E8%AE%BE%E7%BD%AEspark%E5%8F%82%E6%95%B0/</link>
      <pubDate>Sun, 02 Oct 2022 00:00:00 +0000</pubDate>
      <guid>https://leochu.work/blog/tech/bigdata/hive%E8%AE%BE%E7%BD%AEspark%E5%8F%82%E6%95%B0/</guid>
      <description>&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.master&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;yarn-cluster;          &lt;span style=&#34;color:#75715e&#34;&gt;#设置spark提交模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set hive.execution.engine&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;spark;         &lt;span style=&#34;color:#75715e&#34;&gt;#设置计算引擎&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.yarn.queue&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;queue_name;      &lt;span style=&#34;color:#75715e&#34;&gt;#设置作业提交队列&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.app.name&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;job_name;         &lt;span style=&#34;color:#75715e&#34;&gt;#设置作业名称&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.executor.instances&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;20;         &lt;span style=&#34;color:#75715e&#34;&gt;#设置执行器个数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.executor.cores&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;4;            &lt;span style=&#34;color:#75715e&#34;&gt;#设置执行器计算核个数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.executor.memory&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;8g;         &lt;span style=&#34;color:#75715e&#34;&gt;#设置执行器内存&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set mapred.reduce.tasks&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;600;           &lt;span style=&#34;color:#75715e&#34;&gt;#设置任务并行度&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.yarn.executor.memoryOverhead&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;2048;   &lt;span style=&#34;color:#75715e&#34;&gt;#设置每个executor的jvm堆外内存&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.memory.fraction&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;0.8;          &lt;span style=&#34;color:#75715e&#34;&gt;#设置内存比例(spark2.0+)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;set spark.serializer&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;org.apache.serializer.KyroSerializer;  &lt;span style=&#34;color:#75715e&#34;&gt;#设置对象序列化方式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
    </item>
  </channel>
</rss>
