gpt4 book ai didi

hadoop - -m 1 的相关性是什么

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

我正在执行以下 sqoop 命令::=

sqoop import --connect 'jdbc:sqlserver://10.xxx.xxx.xx:1435;database=RRAM_Temp' --username DRRM_DATALOADER --password ****** --table T_VND --hive-import --hive-table amitesh_db.amit_hive_test --as-textfile --target-dir amitesh_test_hive -m 1

我有两个问题::-

1) -m 1 的相关性是什么?据我所知,这是我分配给 sqoop 作业的映射器的数量。如果那是真的,那么,在我分配 -m 2 的那一刻,执行开始抛出如下错误:

ERROR tool.ImportTool: Error during import: No primary key could be found for table xxx. Please specify one with --split-by or perform a sequential import with '-m 1'

现在,我不得不改变我的观念,现在我明白了,它与数据库主键有关。有人可以帮我解释这背后的逻辑吗?

2) 我已经命令上面的sqoop命令将文件保存为文本文件格式。但是当我转到执行建议的位置时,我找到了tbl_name.jar。为什么,如果 --as-textfile 是错误的语法,那么正确的语法是什么。或者是否有任何其他位置可以找到该文件?

最佳答案

1) 拥有-m--num-mappers设置为大于 1 的值, 该表必须有 PRIMARY KEYsqoop命令必须与 --split-by 一起提供柱子。 Controlling Parallelism将解释这背后的逻辑。

2) 导入Hive表的数据的FileFormat amit_hive_test将是纯文本 ( --as-textfile )。因为这是 --hive-import , 数据将首先导入到 --target-dir然后加载 ( LOAD DATA INPATH ) 到 Hive 表中。结果数据将在表的 LOCATION 中而不是 --target-dir .

关于hadoop - -m 1 的相关性是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42785553/

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