Spark scala 问题求救

查看数: 4494 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-11-23 10:31

正文摘要:

val hbasecontentrdd01 = contentrdd01.map(p => {   (Bytes.toBytes(p._1),Array((Bytes.toBytes(columnFamily), Bytes.toBytes(qualifier), Bytes.toBytes(p._2)))) }) val tableName = args(3) h ...

回复

逆光之处是快乐 发表于 2017-11-23 11:10:44
好了,谢了
sstutu 发表于 2017-11-23 11:07:47
逆光之处是快乐 发表于 2017-11-23 11:04
我现在就是想通过控制台来去那个表名,就是它报错

通过下面方法,把他转换下
TableName.valueOf(tableName)
改成下面红字部分
val tableName = args(3)
hbaseContext.bulkPut[(Array[Byte], Array[(Array[Byte], Array[Byte], Array[Byte])])](hbasecontentrdd01,
  TableName.valueOf(tableName),
  (putRecord) => {
    val put = new Put(putRecord._1)
    putRecord._2.foreach((putValue) => put.addColumn(putValue._1, putValue._2, putValue._3))
    put
  }
)
逆光之处是快乐 发表于 2017-11-23 11:04:14
我现在就是想通过控制台来去那个表名,就是它报错
sstutu 发表于 2017-11-23 10:48:04
具体报的什么错误。类型是否匹配。尝试下面两个方法:
1.直接赋值,而不是去控制台去输入然后读取,比如name为“深圳”
2.尝试这个方法:TableName.valueOf(tableName)
关闭

推荐上一条 /2 下一条