Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.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 Java应用程序中的每个Apache Spark执行器分配唯一的整数密钥?_Java_Apache Spark_Key Generator - Fatal编程技术网

如何为Apache Spark Java应用程序中的每个Apache Spark执行器分配唯一的整数密钥?

如何为Apache Spark Java应用程序中的每个Apache Spark执行器分配唯一的整数密钥?,java,apache-spark,key-generator,Java,Apache Spark,Key Generator,我需要为spark应用程序中的每个spark执行器分配一个唯一的整数id。我需要从运行在执行器上的任务中检索执行器id。执行器id将与其他数据元素时间戳、mac地址等一起用于生成唯一的64位密钥。如何为Apache Spark Java应用程序中的每个Apache Spark执行器分配唯一的整数密钥?分区的id可能很有用,因为单个分区的所有元素将始终位于一个执行器上 可以帮助: val spark=SparkSession.builder.masterlocal[*].appNamepartit

我需要为spark应用程序中的每个spark执行器分配一个唯一的整数id。我需要从运行在执行器上的任务中检索执行器id。执行器id将与其他数据元素时间戳、mac地址等一起用于生成唯一的64位密钥。如何为Apache Spark Java应用程序中的每个Apache Spark执行器分配唯一的整数密钥?

分区的id可能很有用,因为单个分区的所有元素将始终位于一个执行器上

可以帮助:

val spark=SparkSession.builder.masterlocal[*].appNamepartitionIndex.getOrCreate 导入spark.implicits_ val ds=spark.createDatasetSeq.range1,21.repartition4 ds.rdd .MapPartitionsWithinExpartitionIndex,它=>{ 打印处理分区+分区索引 it.toList.mapi=>new Stringpartition+partitionIndex+包含数字+i.iterator } .foreachprintln 印刷品:

处理分区1 正在处理分区0 处理分区2 处理分区3 分区1包含数字3 分区2包含数字4 分区2包含数字9 分区2包含数字14 分区2包含数字19 分区0包含数字2 ... 分区3包含数字1 分区3包含数字5 ... 如果您能够为一个分区内的所有行分配一个唯一id,则此唯一id和分区索引的组合在整个系统中是唯一的。

可能的重复项。