我想创建一个RDD[((String, String, String), String, DateTime)]
。我可以使用元组String
和DateTime
值并在方法中创建它而不是从文本文件中读取它吗?
我正在使用Scala创建此功能,有人可以帮助我吗?
其实我想用下面的方法创建RDD [((String,String,String),String,DateTime)]。
def getRDDForPersistance(sparkContext: SparkContext): RDD[((String, String, String), String, DateTime)] = {
var stringTouple = ("organization_name", "product_name", "resource_id")
var resourceName = "test_resource_name"
val date: DateTime = DateTime.now()
var rdd = sparkContext.parallelize(Seq(stringTouple, resourceName, date))
但它不允许我返回创建的RDD。好像我没有返回该方法期望返回的RDD。那么如何创建RDD [((String,String,String),String,DateTime)]。请帮我.... 返回rdd }
答案 0 :(得分:3)
尝试使用Seq传递参数时出现语法错误。请尝试以下代码。
def getRDDForPersistanceX(sparkContext: SparkContext): RDD[((String, String, String), String, DateTime)] = {
var stringTouple = ("organization_name", "product_name", "resource_id")
var resourceName = "test_resource_name"
val date: DateTime = DateTime.now()
var rdd = sparkContext.parallelize(Seq((stringTouple, resourceName, date)))
return rdd
}
答案 1 :(得分:0)
您正在寻找类似的内容:
val myStruct: List[((String, String, String), String, DateTime)] = ...
val myRDD = sparkContext.parallelize(myStruct)