0
我无法播放从我的Hbase表中收到的数据。我有一个HBase的表EMP_META: COLUMN_NAME,SALARY,DESIGNATION,BONUS
,我就用下面的代码阅读:Spark:打印Hbase数据并将其转换为Dataframe
def main(args: Array[String]): Unit = {
val sc = new SparkContext("local", "hbase-test")
println("Running Phoenix Context")
val conf = HBaseConfiguration.create()
conf.set(TableInputFormat.INPUT_TABLE, "EMP_META")
val hBaseRDD = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat], classOf[ImmutableBytesWritable], classOf[Result])
println("--------------: "+hBaseRDD.first())
}
然而,当我打印使用上述print语句它,我得到以下的输出:
(65 6d 70 6c 6f 79 65 65,keyvalues={employee/0:COLUMN_NAME/1483975443911/Put/vlen=4/seqid=0, employee/0:DATA_TYPE/1483975443911/Put/vlen=7/seqid=0, employee/0:_0/1483975443911/Put/vlen=1/seqid=0})
而不是简单的数据文本行。我想将输出转换为数据框,以便我可以轻松地播放数据。有人能帮助我吗? 感谢
感谢您的评论,我正在做一些无意义的事情,我还有一个问题。我如何获得输出中所有列的列表?使用getRow()方法,我可以得到关键字列,'value'得到第二列,但是我无法获得其余列。 – Explorer
该值应该是hbase中的行,你可以得到每一列。可能是你的代码已经设置了列,否则,你可以得到所有的列。 – Fang