parallel.cluster.Spark
说明
parallel.cluster.Spark
对象代表 Spark™ 集群并提供对它的访问。使用 parallel.cluster.Spark
对象作为 mapreduce
和 mapreducer
函数的输入,用于将 Spark 集群指定为 tall 数组和 mapreduce
的并行执行环境。
创建对象
使用 parcluster
函数从 Spark 集群配置文件创建 parallel.cluster.Spark
集群对象。或者,使用 parallel.cluster.Spark
函数(此处描述)来创建 Spark 集群对象。
属性
对象函数
mapreduce | 用于分析无法载入内存的数据集的编程方法 |
mapreducer | 为 mapreduce 和 tall 数组定义并行执行环境 |
saveAsProfile | 将集群属性保存到指定的配置文件 |
saveProfile | 将修改后的集群属性保存到其当前配置文件中 |
示例
限制
Spark 集群配置文件不支持设置为默认配置文件。
Spark 集群不支持并行池和批处理作业。
提示
Spark 集群对可用内存量进行限制。您必须调整要收集的数据的大小以支持您的工作流。
收集到客户端的数据量受到 Spark 属性的限制:
spark.driver.memory
spark.executor.memory
从 MATLAB 提交的 Spark 作业的 spark.executor.memory
属性的默认值为 2560 MB。
从单个 Spark 任务收集的数据量必须符合这些属性。单个 Spark 任务进程来自 HDFS 的一个数据块,默认情况下为 128 MB 数据。如果您收集包含大部分原始数据的 tall 数组,则必须确保这些属性设置为适合。
如果这些属性设置得太小,您会看到如下错误。
Error using tall/gather (line 50) Out of memory; unable to gather a partition of size 300m from Spark. Adjust the values of the Spark properties spark.driver.memory and spark.executor.memory to fit this partition.
在集群的默认设置中或直接在 MATLAB 中调整属性。要调整 MATLAB 中的属性,您可以将这些 Spark 属性添加到 Spark 集群配置文件的 SparkProperties 表中。
名称 | 值 | 类型 |
---|---|---|
spark.driver.memory | 2048m | String |
spark.executor.memory | 2048m | String |
您还可以编辑 Spark 集群对象。
cluster = parcluster("SparkProfile"); cluster.SparkProperties('spark.driver.memory') = '2048m'; cluster.SparkProperties('spark.executor.memory') = '2048m'; mapreducer(cluster);