now I get a run time error...

error: Unable to find encoder for type stored in a Dataset.  Primitive
types (Int, String, etc) and Product types (case classes) are supported by
importing spark.implicits._  Support for serializing other types will be
added in future releases.
[ERROR]     val userDS:Dataset[Teamuser] = userDF.as[Teamuser]

On Thu, Mar 23, 2017 at 12:49 PM, shyla deshpande <deshpandesh...@gmail.com>
wrote:

> I realized, my case class was inside the object. It should be defined
> outside the scope of the object. Thanks
>
> On Wed, Mar 22, 2017 at 6:07 PM, shyla deshpande <deshpandesh...@gmail.com
> > wrote:
>
>> Why userDS is Dataset[Any], instead of Dataset[Teamuser]?  Appreciate your 
>> help. Thanks
>>
>>     val spark = SparkSession
>>       .builder
>>       .config("spark.cassandra.connection.host", cassandrahost)
>>       .appName(getClass.getSimpleName)
>>       .getOrCreate()
>>
>>     import spark.implicits._
>>     val sqlContext = spark.sqlContext
>>     import sqlContext.implicits._
>>
>>     case class Teamuser(teamid:String, userid:String, role:String)
>>     spark
>>       .read
>>       .format("org.apache.spark.sql.cassandra")
>>       .options(Map("keyspace" -> "test", "table" -> "teamuser"))
>>       .load
>>       .createOrReplaceTempView("teamuser")
>>
>>     val userDF = spark.sql("SELECT teamid, userid, role FROM teamuser")
>>
>>     userDF.show()
>>
>>     val userDS:Dataset[Teamuser] = userDF.as[Teamuser]
>>
>>
>

Reply via email to