![](/img/trans.png)
[英]spark scala throws java.util.NoSuchElementException: key not found: 0 exception
[英]java.util.NoSuchElementException: Column not found ID in table demo.usertable in Cassandra Spark
我嘗試使用Spark-cassandra-Connector將RDD [CassandraRow]寫入現有的Cassandra表。 這是我的一段代碼
val conf = new SparkConf().setAppName(getClass.getSimpleName)
.setMaster("local[*]")
.set("spark.cassandra.connection.host", host)
val sc = new SparkContext("local[*]", keySpace, conf)
val rdd = sc.textFile("hdfs://hdfs-host:8020/Users.csv")
val columns = Array("ID", "FirstName", "LastName", "Email", "Country")
val types = Array("int", "string", "string", "string", "string")
val crdd=rdd.map(p => {
var tokens = p.split(",")
new CassandraRow(columns,tokens)
})
val targetedColumns = SomeColumns.seqToSomeColumns(columns)
crdd.saveToCassandra(keySpace, tableName, targetedColumns, WriteConf.fromSparkConf(conf))
當我運行此代碼時,我得到以下異常
Exception in thread "main" java.util.NoSuchElementException: Column not found ID in table demo.usertable
這是表的實際架構
CREATE TABLE usertable (
id int,
country text,
email text,
firstname text,
lastname text,
PRIMARY KEY ((id))
)
有什么建議嗎? 謝謝
Keyspace,表格和列名稱在Cassandra中區分大小寫。 您是否嘗試過調整代碼以使用與表定義相同的大小寫? (例如,使用'id'而不是'ID')。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.