如何将mysql表结构建立在hbase中_spark怎么从hbase数据库当中创建rdd

本文探讨了使用Spark通过Hadoop接口读取HBase全表数据(5亿条)与从Hive读取相同数据的性能差异。Spark读取HBase耗时20MB以上,而Hive只需1MB以内,揭示了两者在大数据处理效率上的显著差距。
摘要由CSDN通过智能技术生成

Configuration conf = HBaseConfiguration.create();

String tableName = "testTable";

Scan scan = new Scan();

scan.setCaching(10000);

scan.setCacheBlocks(false);

conf.set(TableInputFormat.INPUT_TABLE, tableName);

ClientProtos.Scan proto = ProtobufUtil.toScan(scan);

String ScanToString = Base64.encodeBytes(proto.toByteArray());

conf.set(TableInputFormat.SCAN, ScanToString);

JavaPairRDD myRDD = sc

.newAPIHadoopRDD(conf, TableInputFormat.class,

ImmutableBytesWritable.class, Result.class);

在Spark使用如上Hadoop提供的标准接口读取HBase表数据(全表读),读取5亿左右数据,要20M+,而同样的数据保存在Hive中,读取却只需要1M以内,性能差别非常大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值