You can do something similar to PhoenixRuntime.decodeColumnValues() to do
that. It'd be something like this:

    public static Object[] decodeColumnValues(Connection conn, String
fullTableName, byte[] value) throws SQLException {
        PTable table = getTable(conn, fullTableName);
        RowKeySchema schema = table.getRowKeySchema();
        ImmutableBytesWritable ptr = new ImmutableBytesWritable(value);
        schema.iterator(ptr);
        int i = 0;
        List<Object> values = new ArrayList<Object>();
        while(schema.next(ptr, i, maxOffset) != null) {
            values.add(schema.getField(i).getDataType().toObject(ptr));
            i++;
        }
        return values.toArray();
    }




On Mon, Jan 14, 2019 at 12:47 PM Shawn Li <shawnli...@gmail.com> wrote:

> Hi,
>
> Phoenix encodes composite key to hbase rowkey. We want to check if there
> any documentation or example to show how to manually decode Hbase rowkey
> back to original values for those primary keys. Or is there any phoenix
> source code we can directly use to do this?
>
> Thanks,
> Shawn
>

Reply via email to