2016-09-26 85 views
0

我是新来的apache点火以及火花...... 任何人都可以帮助举例将点火rdd转换为火花rdd在斯卡拉。是否有可能将apache点燃rdd转换为scala中的spark rdd

更新---- 使用案例: 我会收到HBase的表..我会执行一些逻辑来建立报告出来,将其保存到Ignite RDD的dataframes ...和相同的点火RDD会对每个表进行更新......一旦所有表执行完毕,最终点火rdd将被转换为spark或java rdd,并且最后的规则将在该rdd上执行...以运行该规则我需要将该rdd转换为数据帧。并将该数据框保存为配置单元中的最终报告...

+0

请看这个https://github.com/apache/ignite/tree/master/examples/src/main/scala/org/apache/ignite/scalar/examples – Shankar

+0

你的用例是什么?如果您没有现有的Spark应用程序,则最好直接使用本机Ignite API而不是IgniteRDD。 –

+0

我已更新问题..用例 – Kalpesh

回答

1

你是什么意思转换? IgniteRDD is a Spark RDD,在技术上它是RDD特征的一个亚型。

Spark内部有许多类型的RDD:MappedRDD,HadoopRDD,LogicalRDD。 IgniteRDD仅是可能类型的RDD之一,并且在一些转换之后,它也将被其他RDD类型(即MappedRDD)包装。

您也可以编写自己的RDD :)从documentation

例子:

val cache = igniteContext.fromCache("partitioned") 
val result = cache.filter(_._2.contains("Ignite")).collect() 

过滤缓存RDD后,类型也会有所不同 - IgniteRDD将包裹FilteredRDD。但是它仍然是RDD特征的实现。评论后

更新:

  1. 起初,你进口implicits? import spark.implicits._
  2. SparkSession你已经有了各种createDataFrame方法,将您的RDD转换成数据帧/数据集

如果还是不帮你,请给我们在创建数据帧和代码示例,你得到错误

+0

我想将其转换为Dataframe ....以进一步处理。但它不支持将其转换为df ..这就是为什么我认为,如果我将它转换为正常的火花RDD,以便我可以使用数据帧的所有其他功能。 – Kalpesh