hbase - 如何在 hbase 中存储原始数据类型并检索

标签 hbase

如何使用 hbase api 存储和检索原始数据类型?我的任务是在 hbase 上保存随机事件,其中包含随机生成的不可预测的数据类型。并需要在我想要的时候取回它们?有人可以帮我解决这个问题吗?因为我对 hbase 和这些东西真的很陌生。

最佳答案

这是将数据放入 HBase 表的方法:

Configuration conf = HBaseConfiguration.create();
HTable table = new HTable(conf, "TABLE_NAME");
Put p = new Put(rowKey);
p.add(Bytes.toBytes("cf"), Bytes.toBytes("c1"), Bytes.toBytes("VALUE"));
table.put(p);

您不必担心数据的类型。但是,您需要记住,HBase 内部的任何内容都以字节数组的形式存在。因此,在从 HBase 取回数据时,您需要将其转换回合适的类型,因为每次都会得到一个字节数组。这可以使用 Bytes 类提供的各种重载方法来完成。像这样:

Bytes.toString(byte[])
Bytes.toFloat(byte[])
Bytes.toLong(byte[])

关于hbase - 如何在 hbase 中存储原始数据类型并检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23215492/

相关文章:

java - 读取HDFS并存储HBase时为"java.io.IOException: Pass a Delete or a Put"

hbase - 以独立模式启动 HBase 时出错

hadoop - Hadoop 1.0.3 的 HBase 配置

filter - hbase扫描时间范围返回旧版本

hadoop - 从 Java 客户端远程运行 Hadoop 作业

java - 无法加载 Storm 的 JdbcInsertBolt 的 Phoenix JDBC 驱动程序

java - HBase BufferedMutator 与 PutList 性能对比

ruby-on-rails - 编写 ActiveRecord 适配器

hadoop - Hbase:从独立模式迁移到全分布式模式

java - 从通过 hive 插入的 hbase 读取数据时出现问题