Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 无法更改';spark.sql.shuffle.partitions';有状态spark结构化流媒体应用_Apache Spark_Spark Structured Streaming - Fatal编程技术网

Apache spark 无法更改';spark.sql.shuffle.partitions';有状态spark结构化流媒体应用

Apache spark 无法更改';spark.sql.shuffle.partitions';有状态spark结构化流媒体应用,apache-spark,spark-structured-streaming,Apache Spark,Spark Structured Streaming,我有一个有状态(带有flagMapGroupsWithState)的spark结构化流媒体应用程序 根据spark的当前设计,一旦应用程序启动,似乎就没有办法更改spark.sql.shuffle.partitions,除非我停止应用程序,否则删除检查点数据(per),然后从clean重新启动-这是不可接受的,因为这样我将丢失存储在检查点中的所有中间状态 如何在不丢失数据的情况下,在这种限制下扩展我的应用程序 假设我在10个节点上用spark.sql.shuffle.partitions=10个

我有一个有状态(带有flagMapGroupsWithState)的spark结构化流媒体应用程序

根据spark的当前设计,一旦应用程序启动,似乎就没有办法更改spark.sql.shuffle.partitions,除非我停止应用程序,否则删除检查点数据(per),然后从clean重新启动-这是不可接受的,因为这样我将丢失存储在检查点中的所有中间状态

如何在不丢失数据的情况下,在这种限制下扩展我的应用程序

假设我在10个节点上用
spark.sql.shuffle.partitions=10个节点*4个核心/node*3=120启动了应用程序,稍后我需要通过添加另外20个节点来扩展集群

如果我不能将“spark.sql.shuffle.partitions”更改为更大的值,我就无法找到让spark利用新添加的节点的解决方案。Spark仍将数据集划分为120个分区,这意味着部分节点将处于空闲状态