Создайте нормальный класс, который действует как класс case.
Я все еще использую scala 2.10.X, так как это последнее, поддерживаемое Spark, а в Spark-SQL я сильно использую классы case.
Обходной путь для case classes
с более чем 22 полями:
class Demo(val field1: String,
val field2: Int,
// .. and so on ..
val field23: String)
extends Product
//For Spark it has to be Serializable
with Serializable {
def canEqual(that: Any) = that.isInstanceOf[Demo]
def productArity = 23 // number of columns
def productElement(idx: Int) = idx match {
case 0 => field1
case 1 => field2
// .. and so on ..
case 22 => field23
}
}