gpt4 book ai didi

mysql - 从 Hadoop Reducer 向 MySQL 写入数据

转载 作者:可可西里 更新时间:2023-11-01 07:41:43 24 4
gpt4 key购买 nike

我正在试验 Hadoop Map-Reduce,在我的测试中,我能够将 reducer 的输出存储到 HBase。但是,我想将数据写入 mysql 数据库而不是 HBase。映射器仍会从 HBase 读取输入数据。我找到了这个,但它需要在输入和输出时都使用 MySQL,而我只需要在输出时使用它。另外,上面link使用 org.apache.hadoop.mapred 包中的一些已弃用的类,现在可以使用新的包 org.apache.hadoop.mapreduce,但是直到现在我还找不到任何使用这个新包的教程。

最佳答案

I have found this but it requires to use MySQL at both input and output while I need it at only output.

InputFormat (DBInputFormat) 独立于OutputFormat (DBOutputFormat)。应该可以在 Mapper 中读取 HBase 并在 Reducer 中写入 DB。

使用新的 MR API 设置 Job#setInputFormat 和 Job#setOutputFormat,使用旧的 MR API 将 JobConf#setInputFormat 和 JobConf#setOutputFormat 适当设置为所需的输入/输出格式。这两种格式不必相同。如果需要,应该可以从映射器中读取 XML 并写入 Reducer 中的队列。

Also, above link uses some deprecated classes from org.apache.hadoop.mapred package for which a new package org.apache.hadoop.mapreduce is available now, however I am not able to find any tutorial using this new package till now.

如果您对旧 API 感到满意,请继续使用它。有 not much difference在新旧 API 之间的功能。旧 API 和新 API 有两种 DBInputFormat。确保您没有将旧/新 InputFormats 与旧/新 MR API 混合使用。

这是一个tutorial在新的 API 上。

关于mysql - 从 Hadoop Reducer 向 MySQL 写入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8401659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com