【问题标题】:How to store primitive data types in hbase and retrieve如何在 hbase 中存储原始数据类型并检索
【发布时间】:2026-02-01 09:20:08
【问题描述】:

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

【问题讨论】:

    标签: hbase


    【解决方案1】:

    这是您将数据放入 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[])
    

    【讨论】:

    • 这里我想做的是,例如我想存储一个浮点数 34.5。所以首先我想存储这个,当我再次检索这个值时需要把它识别为一个浮点值。不是字节数组
    • 在获取数据时使用 Bytes.toFloat(byte[])
    • 你能帮我解决这个问题吗:*.com/questions/23333060/…