我将Pypark的数据插入到cassandra,使用:
com.datasax公司。spark:spark-cassandra-connector_2.11:2.4.0
在我插入的变量中,还有时间,连接器不喜欢它。如果我尝试发送:“16:51:35.634652”并收到以下错误:
com.datastax.spark.connector.types.typeconversionexception:无法将类型类java.lang.string的对象16:51:35.634652转换为java.lang.long。
基本上,转换器不喜欢字符串,它希望将其转换为java.lang.long,而实际上在cassandra中是time,在python中是string。
我想知道我怎么能在不把任何东西转换成long的情况下给cassandra带来价值,我不认为把时间转换成long有什么意义。
1条答案
按热度按时间dvtswwa31#
找到了!我查了一下:
https://docs.datastax.com/en/dse/6.0/dse-dev/datastax_enterprise/spark/sparksupportedtypes.html
我发现:cql timestamp->scala:long,java.util.date,java.sql.date,org.joda.time.datetime
所以我转换了变量
发送到连接器,一切正常!