我应该在scala类构造函数中声明什么类型的DateTime对象?

时间:2016-08-06 13:02:48

标签: scala apache-spark cassandra

我试图将cassandra表中的行映射到自定义类,但不断为DateTime值获取IllegalArgumentException。我已经尝试了我能想到的每种类型,它们都会抛出相同的异常。非常感谢帮助。我是scala noob btw。

case class ClickData(Uuid: String, Tile: String, Latestclick: Long, OriginalTimestamp: Long, Rating: Int)

----------------------------

val data = sc.cassandraTable[ClickData]("test", "user_data")

data.foreach((i: ClickData) =>

  println("CASSIE ROW: "+i)


)

表格行示例:

uuid: 4hgfyt24854grh3fg34u3re47ff, tile: blah-blah, latest_click_timestamp: 2016-08-05 16:17:53+0100, original_timestamp: 2016-08-05 16:17:53+0100, rating: 1

2 个答案:

答案 0 :(得分:4)

您可以在Spark here中找到默认的Java / Scala数据类型。根据您的数据库实际包含的内容,您可能需要尝试:

  • java.sql.Date代表DateType
  • java.sql.Timestamp代表TimestampType

答案 1 :(得分:0)

我的参数名称与列名称不匹配,正确复制它们修复了我的问题。它们也属于Long类型。

相关问题