微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HBase一对多的“关系”存储

如何解决HBase一对多的“关系”存储

我正在考虑在HBase中实现一对多关系的最佳方法。 假设一个帐户有很多交易。更好吗 a)将列添加到交易:ACCOUNT表上的列族,即交易:1:金额,交易:2:金额 b)仅将与交易相关的每个交易的关键字存储在交易中:ACCOUNT列族,并在单独的交易表中查找每个交易吗?     

解决方法

通常,选项a是更好的方法。 这使您可以轻松地一次请求一个帐户的所有交易。对于每个事务,不需要其他查找。 在某些情况下,选项b可能适用,例如对所有事务频繁运行的查询。     ,我想,如果需要为“帐户”跟踪的唯一数据项是金额,则选项(a)可以。但是,如果您需要捕获许多其他数据项,即使效率不如(a),我认为我们也必须使用(b)选项     ,如何使用单个列值并使用$和#等分隔符。下面是示例数据:
Column Family: Transactions
Column Value: $ transactionID:1#amount:100 $ transactionID:2#amount:200 $ transactionID:3#amount:300
现在,您可以使用$和#分隔符来获取值,并使用String数组来处理数据。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。