Я пытаюсь загрузить данные из Apache Phoenix в Spark DataFrame.Не удается создать Spark Phoenix DataFrames
я смог успешно создать RDD с помощью следующего кода:
val sc = new SparkContext("local", "phoenix-test")
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
val foo: RDD[Map[String, AnyRef]] = sc.phoenixTableAsRDD(
table = "FOO",
columns = Seq("ID", "MESSAGE_EPOCH", "MESSAGE_VALUE"),
zkUrl = Some("<zk-ip-address>:2181:/hbase-unsecure"))
foo.collect().foreach(x => println(x))
Однако я не так повезло, пытаясь создать DataFrame. Моя текущая попытка:
val sc = new SparkContext("local", "phoenix-test")
val sqlContext = new SQLContext(sc)
val df = sqlContext.phoenixTableAsDataFrame(
table = "FOO",
columns = Seq("ID", "MESSAGE_EPOCH", "MESSAGE_VALUE"),
zkUrl = Some("<zk-ip-address>:2181:/hbase-unsecure"))
df.select(df("ID")).show
К сожалению, приведенные выше результаты кода в ClassCastException:
java.lang.ClassCastException: org.apache.spark.sql.catalyst.expressions.GenericMutableRow cannot be cast to org.apache.spark.sql.Row
Я все еще очень новое, чтобы зажечь. Если кто-то может помочь, это будет очень признательно!
Вы в порядке с моим ответом, pls. голосование, «принятый владельцем», который помогает другим пользователям в качестве указателя –