gpt4 book ai didi

java - 在 Hadoop 中使用 DBOutputFormat

转载 作者:可可西里 更新时间:2023-11-01 15:03:19 26 4
gpt4 key购买 nike

在hadoop中使用DBOutputFormat时,说最后的结果是去MySql数据库。每次必须写入结果时,Hadoop 是否会创建单独的连接? (DB 是否会承受太多打开的连接)。我没有使用过这种格式,所以任何关于它的建议都是可以接受的。它的性能是否优于 Sqoop? Sqoop 也可用于将输出文件导出到数据库。请分享您的观点。

最佳答案

这是我找到的解释 this Cloudera 的博文:

The DBOutputFormat writes to the database by generating a set of INSERT statements in each reducer. The reducer’s close() method then executes them in a bulk transaction. Performing a large number of these from several reduce tasks concurrently can swamp a database. If you want to export a very large volume of data, you may be better off generating the INSERT statements into a text file, and then using a bulk data import tool provided by your database to do the database import.

所以看起来每个单独的 reducer 只会打开一个连接,因此数据库可能不会有太多打开的连接,但它仍然会导致性能问题。我不确定,但 Sqoop 可能更高效、更健壮。

关于java - 在 Hadoop 中使用 DBOutputFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12471648/

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