大家
我是Hadoop World的新手,我在使用Hbase时遇到了一些问题。
我有两个集群,clusterA&的Hbase有员工表,clusterB的Hbase有部门表。
那么,如何加入empolyee和部门?
我是否需要安装Hive?
答案 0 :(得分:1)
如果表位于两个单独的群集中,则需要将一个 HBase 表从一个群集中获取到另一个群集。这可以通过sqoop完成。
从理论上讲,你可以在评论中使用 Vignesh I 所建议的 Phoenix ,但是,有一些限制。您需要创建这两个 HBase 表的 Phoenix 视图。目前, Phoenix 中的原生 HBase 视图如果在 Phoenix 之外更新,则不会自动更新,大多数本机 HBase 表格。这有效地呈现了 Phoenix 快照中的原生 HBase 表的视图,而不是视图;您需要定期重建任何索引(以及可能的统计信息),以捕获对基础 HBase 表的任何更新。
有一个JIRA可以增强此行为,以便自动更新,但此时此类功能的ETA尚不清楚。
我建议,除非你有非常具体的实时需求(在这种情况下凤凰,如果你可以忍受视图限制,可能是更好的选择),就是使用{ {3}}
在 Pig 脚本中,您可以加入两个 HBase 表,然后执行各种转换。
Hive 将是另一种选择,但在这种情况下,您需要 sqoop 将 HBase 中的两个表转换为 Hive < / em>,然后从 Hive 中继续。