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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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 使用countByKeyApprox()进行部分手动广播哈希联接_Apache Spark - Fatal编程技术网

Apache spark 使用countByKeyApprox()进行部分手动广播哈希联接

Apache spark 使用countByKeyApprox()进行部分手动广播哈希联接,apache-spark,Apache Spark,我读到了有关部分手动广播哈希连接的内容,它可以在Spark中连接RDD对时使用。如果一个键太大以至于不能放在一个分区上,则建议使用此选项。在这种情况下,您可以在大型RDD上使用CountByKeyAppro,大致了解哪些键最能从广播中获益。 然后,只为这些键过滤较小的RDD,并在HashMap中本地收集结果。使用sc.broadcast,您可以广播HashMap,以便每个工作进程只有一个副本,并手动对HashMap执行联接。使用相同的HashMap,您可以过滤大RDD,使其不包含大量重复键,并执

我读到了有关部分手动广播哈希连接的内容,它可以在Spark中连接RDD对时使用。如果一个键太大以至于不能放在一个分区上,则建议使用此选项。在这种情况下,您可以在大型RDD上使用CountByKeyAppro,大致了解哪些键最能从广播中获益。 然后,只为这些键过滤较小的RDD,并在HashMap中本地收集结果。使用sc.broadcast,您可以广播HashMap,以便每个工作进程只有一个副本,并手动对HashMap执行联接。使用相同的HashMap,您可以过滤大RDD,使其不包含大量重复键,并执行标准联接,将其与手动联接的结果合并。这种方法非常复杂,但可能允许您处理以其他方式无法处理的高度倾斜的数据

问题是关于CountByKeyAppro(长超时)的用法。这个超时的单位是多少?如果我写CountByKeyAbout(10),这是否意味着它将等待10秒或10毫秒或其他时间?

以毫秒为单位

参数:

  • timeout—等待作业的最长时间(毫秒)
  • 置信度-对结果的期望统计置信度