Apache Spark DataFrame没有RDD分区

时间:2015-04-21 15:52:47

标签: java parallel-processing apache-spark

根据新的Spark文档,使用Spark的DataFrame should be preferred over using JdbcRDD

在遇到第一个问题之前,第一次触摸非常有趣 - DataFrame没有flatMapToPair()方法。第一个想法是将其转换为JavaRDD并且我做到了。

一切都很好,我用这种方法编写了我的代码,注意到这样的代码:

JavaRDD<Row> myRDD = dataFrame.toJavaRDD();
int amount = myRDD.partitions().length

生成1。这种转换到JavaRDD下面的所有代码都是非常低效的。强制重新分区RDD需要花费大量时间,并且比代码更大的开销,这适用于1个分区。

如何处理?

在使用JdbcRDD时,我们使用&#34; pager&#34;编写了特定的SQL。比如用于创建分区的WHERE id >= ? and id <= ?。如何使用DataFrame创建这样的内容?

1 个答案:

答案 0 :(得分:1)

`

for(var i:int = 0; i < 10; i++)
{
    var dot:Dot = new Dot();
    this.addChild(dot);
    do {
        dot.x = Math.floor(Math.random() * stageWidth);
        dot.y = Math.floor(Math.random() * stageHeight);
    } while(dot.hitTestObject(box))
    totalDots++;
    trace(""+totalDots);
}