如何使用Spark处理一系列HBase行?

阿米特卡玛卡

我正在尝试使用HBase作为Spark的数据源。因此,第一步证明是从HBase表创建RDD。由于Spark使用hadoop输入格式,因此我可以通过创建rdd http://www.vidyasource.com/blog/Programming/Scala/Java/Data/Hadoop/Analytics/2014/01/25找到使用所有行的方法/ lighting-a-spark-with-hbase但是我们如何为范围扫描创建RDD?

欢迎所有建议。

s

这是在Spark中使用扫描的示例:

import java.io.{DataOutputStream, ByteArrayOutputStream}
import java.lang.String
import org.apache.hadoop.hbase.client.Scan
import org.apache.hadoop.hbase.HBaseConfiguration
import org.apache.hadoop.hbase.io.ImmutableBytesWritable
import org.apache.hadoop.hbase.client.Result
import org.apache.hadoop.hbase.mapreduce.TableInputFormat
import org.apache.hadoop.hbase.util.Base64

def convertScanToString(scan: Scan): String = {
  val out: ByteArrayOutputStream = new ByteArrayOutputStream
  val dos: DataOutputStream = new DataOutputStream(out)
  scan.write(dos)
  Base64.encodeBytes(out.toByteArray)
}

val conf = HBaseConfiguration.create()
val scan = new Scan()
scan.setCaching(500)
scan.setCacheBlocks(false)
conf.set(TableInputFormat.INPUT_TABLE, "table_name")
conf.set(TableInputFormat.SCAN, convertScanToString(scan))
val rdd = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat], classOf[ImmutableBytesWritable], classOf[Result])
rdd.count

您需要将相关库添加到Spark类路径,并确保它们与您的Spark兼容。提示:您可以hbase classpath用来查找它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何顺序处理一系列AJAX请求的结果?

来自分类Dev

如何处理一系列配对文件

来自分类Dev

如何使用升压预处理器运行一系列功能?

来自分类Dev

如何在python中搜索一系列行?

来自分类Dev

使用一系列输入来扩展行

来自分类Dev

如何使用Python将一系列重复的数据行转换为多个记录的列?

来自分类Dev

如何使用awk或sed或grep删除hp unix上文件中的一系列行

来自分类Dev

如何使用rxJava实现一系列连续操作?

来自分类Dev

如何使用噪音制作一系列彩色矩形?

来自分类Dev

如何使用一系列ID的CSS设置表格

来自分类Dev

如何使用Bash遍历一系列文件

来自分类Dev

如何使用“安全随机”搜索一系列数字?

来自分类Dev

如何使用for循环构建一系列承诺的响应?

来自分类Dev

如何遍历一系列结构

来自分类Dev

如何制作一系列句子?

来自分类Dev

如何打印一系列纸张?

来自分类Dev

如何测试一系列互动?

来自分类Dev

如何制作一系列物品

来自分类Dev

如何串联一系列细胞

来自分类Dev

如何减少一系列if语句?

来自分类Dev

使用一系列变体

来自分类Dev

如何使用Windows批处理文件从COM端口发送一系列十六进制命令?

来自分类Dev

如何使用 VBA 循环切割一系列单元格并粘贴到下一行

来自分类Dev

jQuery函数来处理div行中的一系列href

来自分类Dev

如何使用sed -n在Python中从文本文件中提取一系列行?

来自分类Dev

如何使用Apps脚本从Google表格中删除一系列特定表格中所有不受保护的行

来自分类Dev

如何从一系列链接行中选择最后一行

来自分类Dev

您如何处理一系列Akka流源?

来自分类Dev

如何编辑/创建新的批处理脚本,以通过一系列链接设置批量下载?

Related 相关文章

热门标签

归档