我使用这样的东西,插入spark Cassandra的表中。如果您看到所有列都是硬编码的,那么有一种动态处理它的好方法吗?
val logSchema = StructType(Array(StructField("tablename", StringType, true), StructField("filename", StringType, true), StructField("number_of_rows", StringType, true), StructField("loadtime", StringType, true), StructField("statusdetail", StringType, true)))
答案 0 :(得分:1)
您始终可以通过saveToCassandra
插入CassandraRow
对象的RDD,这些对象不必具有明确的架构。
像
这样的东西rdd : RDD[Map[String, Any]]
rdd.map( row => CassandraRow.fromMap(row).saveToCassandra )