Mapreduce、HDFS 输入、Hive 表输出

Mapreduce, HDFS input, Hive table output

我想编写一个 mapreduce 作业来执行以下操作:

  • 读取 HDFS 文件。
  • 验证表(Hive/Hbase)中已存在读取记录。
  • 如果存在,则执行更新操作。如果不存在,则将数据写入/插入表(Hive/Hbase)。
  • 上述过程将每天重复。

    问题:

  • 是否可以使用 Hive 实现上述逻辑?
  • 怎样才能写出MR作业?有什么例子可以实现上述逻辑吗?

  • 有不止一种方法可以做你想做的事。
    是的,您可以在 hive 中完成所有操作。
    Hive 有一些允许您访问 Hbase 的 SerDes,因此您也可以从 hive 使用它。

    您的 MR 工作仅由执行该工作的映射器组成;不管怎样,既然hive可以做到,我觉得写个MR工作不是个好主意。
    也许构建 MR 作业的快速方法是使用实??用程序流,您可以使用任何您喜欢的语言编写映射器。

    如果这两种情况,使用 hive 或小型 MR 作业,您可以将作业置于 oozie 下并使其每天运行。