Spark 从 Cassandra 错误读取数据 org.apache.spark.unsafe.types.UTF8String 不是字符串模式的有效外部类型
Spark read data from Cassandra error org.apache.spark.unsafe.types.UTF8String is not a valid external type for schema of string
我有一个 Cassandra table 创建如下(在 cqlsh 中)
CREATE TABLE blog.session( id int PRIMARY KEY, visited text);
我向 Cassandra 写入数据,它看起来像这样
id | visited
1 | Url1-Url2-Url3
然后我尝试使用 spark Cassandra connector(2.5.1) 读取它。
val sparkSession = SparkSession.builder()
.master("local")
.appName("ReadFromCass")
.config("spark.cassandra.connection.host", "localhost")
.config("spark.cassandra.connection.port", "9042")
.getOrCreate()
import sparkSession.implicits._
val readSessions = sparkSession.sqlContext
.read
.cassandraFormat("table1", "keyspace1").load().show()
但是,它似乎无法读取访问对象,因为它是一个文本对象,单词之间有破折号。错误发生为
org.apache.spark.unsafe.types.UTF8String is not a valid external type for schema of string
关于为什么 spark 无法读取它以及如何解决它有什么想法吗?
错误似乎是 spark-cassandra-connector 的版本。而不是使用“2.5.1”使用“3.0.0-beta”
我有一个 Cassandra table 创建如下(在 cqlsh 中)
CREATE TABLE blog.session( id int PRIMARY KEY, visited text);
我向 Cassandra 写入数据,它看起来像这样
id | visited
1 | Url1-Url2-Url3
然后我尝试使用 spark Cassandra connector(2.5.1) 读取它。
val sparkSession = SparkSession.builder()
.master("local")
.appName("ReadFromCass")
.config("spark.cassandra.connection.host", "localhost")
.config("spark.cassandra.connection.port", "9042")
.getOrCreate()
import sparkSession.implicits._
val readSessions = sparkSession.sqlContext
.read
.cassandraFormat("table1", "keyspace1").load().show()
但是,它似乎无法读取访问对象,因为它是一个文本对象,单词之间有破折号。错误发生为
org.apache.spark.unsafe.types.UTF8String is not a valid external type for schema of string
关于为什么 spark 无法读取它以及如何解决它有什么想法吗?
错误似乎是 spark-cassandra-connector 的版本。而不是使用“2.5.1”使用“3.0.0-beta”