繁体   English   中英

Hbase 的 Phoenix Salted Table Rowkey 问题

[英]Phoenix Salted Table Rowkey Issue with Hbase

当我对 phoenix 表加盐并直接从 hbase 插入数据时,我遇到了 rowkey 问题。

这是场景:

1- 使用 salt_buckets=16 在 phoenix 上创建一个表

2- 数据通过 Storm hbase bolt 插入到 hbase 表中。 hbasebolt 直接在hbase 中插入数据,不经过phoenix。

问题是,当我在 phoenix 上运行选择查询时,与 hbase 行键相比,凤凰行键总是缺少第一个字符

例子:

  • hbase 行键:1f05d01f-6a17-4d7b-8d97-df32d8856666
  • 凤凰行键:f05d01f-6a17-4d7b-8d97-df32d8856666

我期待着得到回应伙计们。 先感谢您。

亲切的问候,

如果您打算使用 Apache Phoenix 查询数据,请通过 Phoenix API 将数据写入该表。

当您通过 Phoenix API 将数据写入 Phoenix 表时,它会做很多事情,其中​​包括:

  1. 确保您写入的数据与您要写入的表的架构相匹配
  2. 更新任何二级索引
  3. 以 Phoenix 期望的方式对列名称进行编码
  4. 更新描述该表中数据物理分布的统计信息,以便将来进行查询规划

当您通过 HBase API 将数据直接写入 Phoenix 表时,您会绕过所有这些构造。 充其量,您通过 Phoenix 的查询将失败并出现明显的反序列化错误。 在最坏的情况下,陈旧的索引将用于回答返回错误结果的查询。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM