我目前拥有 Hadoop-2、PIG、HIVE 和 HBASE。我有一个输入数据。我已经在 HDFS 中加载了该数据。我想在这个环境中创建暂存数据。
我的查询是 -
在哪个 BigData 组件中,我应该创建 Staging Table(Pig/HIVE/HBASE) ;这将根据条件输入数据?稍后,我们可能希望在其上运行具有复杂逻辑的 MapReduce 作业。
请协助
我目前拥有 Hadoop-2、PIG、HIVE 和 HBASE。我有一个输入数据。我已经在 HDFS 中加载了该数据。我想在这个环境中创建暂存数据。
我的查询是 -
在哪个 BigData 组件中,我应该创建 Staging Table(Pig/HIVE/HBASE) ;这将根据条件输入数据?稍后,我们可能希望在其上运行具有复杂逻辑的 MapReduce 作业。
请协助
任何你想的地点都可以。Pig 不是一个选项,因为它没有元存储。如果您想要 SQL Like 查询,请使用 Hive。HBase 基于您的访问模式。
当您在数据之上运行 Hive 查询时,它会转换为 MR。
当您在 Hive 中创建它时,请使用 Hive 查询而不是 MR。如果您使用的是 MR,请使用 Pig。您将不会受益于在数据之上创建 Hive 表。
Hive:
如果您有 OLAP 类型的工作负载并且不需要实时读/写。
HBase:
如果您有 OLTP 类型的工作负载。您需要进行实时/流式读/写。使用 MapReduce 可以完成一些批处理或 OLAP 处理。使用 Apache Phoenix 可以进行类似 SQL 的查询。
您可以在 HIVE 和 HBase 上运行 MapReduce 作业。