如何使用Java并行化将rdd保存到cassandra中的for循环?

时间:2019-04-12 09:29:39

标签: java apache-spark for-loop parallel-processing spark-cassandra-connector

我有流RDD并在其上应用了Java POJO,现在有inputRDD,其中包含id等其他详细信息。我想要groupby / filterby id,那么每个rdd应该保存在自己的数据库中。我已经尝试过和for循环一起使用的代码,但是如果这需要在spark并行处理中发生。任何帮助表示赞赏。

 messages.transform(this::getClass).foreachRDD(inputRDD -> {
    List<String> idList = inputRDD.map(ClassObject::getEmpid).distinct().collect();
    for (String id : idList){
    String EmpName = EmpCache.getEmpNameFor(id).toLowerCase();    
    inputRDD.filter(f -> f.getEmpid().equals(id));

    javaFunctions(inputRDD).writerBuilder(in_EmpName , tableName, mapToRow(agg)).saveToCassandra();
    }
}

0 个答案:

没有答案