草庐IT

Sqoop-Export

全部标签

hadoop - 在特定队列上运行 sqoop 作业

我正在尝试创建一个在特定队列中运行的Sqoop作业,但它不起作用。我试过两件事:1st:在作业创建中声明队列sqoopjob\--createmyjob\--import\--connectjdbc:teradata://RCT/DATABASE=MYDB\-Dmapred.job.queue.name=shortduration\--drivercom.teradata.jdbc.TeraDriver\--usernameDBUSER-P\--query"$query"\--target-dir/data/source/dest/$i\--check-columnDAT_CRN_AG

hadoop - Sqoop 导入将 TINYINT 转换为 BOOLEAN

我正在尝试使用Sqoop将NFL比赛结果的MySQL表导入HDFS。我发出了以下命令来实现这一点:sqoopimport\--connectjdbc:mysql://127.0.0.1:3306/nfl\--username-P\--tableplay不幸的是,TINYINT类型的列在导入时被转换为bool值。例如,有一个“quarter”列表示比赛发生在比赛的哪个季度。如果比赛发生在第一节,则此列中的值将转换为“true”,否则转换为“false”。事实上,我做了一个sqoopimport-all-tables,导入了我拥有的整个NFL数据库,它的行为都是这样的。是否有解决此问题的方

hadoop - Sqoop 创建包含多条记录的插入语句

我们正在尝试将数据从sqoop加载到netezza。我们面临着以下问题。java.io.IOException:org.netezza.error.NzSQLException:ERROR:示例输入数据集如下所示:1,2,31,3,4sqoop命令如下图:sqoopexport--table--export-dir--input-fields-terminated-by'\t'--input-lines-terminated-by'\n'--connect'jdbc:netezza:///'--driverorg.netezza.Driver--username--passwordSq

hadoop - 使用 SQOOP 和 FLUME 将数据从 RDBMS 移动到 Hadoop

我正在学习Hadoop,并且在将数据从关系数据库转移到Hadoop以及从关系数据库转移到Hadoop时坚持了一些概念,反之亦然。我已经使用SQOOP导入查询将文件从MySQL传输到HDFS。我传输的文件是结构化数据集,而不是任何服务器日志数据。我最近读到我们通常使用水槽将日志文件移动到Hadoop中,我的问题是:1.我们是否也可以使用SQOOP来移动日志文件?2.如果是,SQOOP和FLUME哪个更适合用于日志文件?为什么? 最佳答案 1)Sqoop可用于在任何rdbms和hdfs之间传输数据。要使用scoop,数据必须结构化,通常

hadoop - Sqoop 将列名写为标题

我正在将数据表从Oracle导入HDFS。我需要让Sqoop将列名作为标题写入导入文件(最终在HDFS中的文件)。有没有办法做到这一点?我基本上需要导入文件如下所示:身份证、国家、城市1,美国,帕洛阿尔托2,捷克共和国,bool诺3,美国,桑尼维尔代替以下内容:1,美国,帕洛阿尔托2,捷克共和国,bool诺3,美国,桑尼维尔 最佳答案 不,没有。通常HDFS文件没有header,因为它们会被Hive和Pig等组件视为数据,或者需要在MapReduce和Spark等编程框架中进行特殊处理。如果你想用数据携带模式,那么你可以考虑让Sqo

hadoop - Apache Sqoop 和 Hive 之间的差异。我们可以一起使用吗?

ApacheSqoop和Hive有什么区别?我知道sqoop用于将数据从RDBMS导入/导出到HDFS,而Hive是Hadoop之上的SQL层抽象。是否可以使用Sqoop将数据导入HDFS,然后使用Hive进行查询? 最佳答案 是的,你可以。事实上,许多人使用sqoop和hive正是为了您所说的。在我的项目中,我必须做的是从我的RDBMS(即oracle)加载历史数据,然后将其移动到HDFS。我为此路径定义了配置单元外部表。这让我可以运行配置单元查询来进行转换。此外,我们过去常常在这些数据之上编写mapreduce程序以进行各种分析

hadoop - 为什么在 Sqoop 中默认的最大映射器是 4?我们可以在 -m 参数中提供 4 个以上的映射器吗?

我试图了解sqoop作业中默认最大映射器背后的原因,我们能否在sqoop作业中设置四个以上的映射器以实现更高的并行度。 最佳答案 如果您在拆分中使用整数列,则映射器的默认数量为4。强烈建议您始终使用整数列而不是字符串/字符/文本列。请参阅此处的代码以获取更多说明。https://github.com/apache/sqoop/blob/660f3e8ad07758aabf0a9b6ede3accdfac5fb1be/src/java/org/apache/sqoop/mapreduce/db/TextSplitter.java#L1

hadoop - Sqoop - 数据拆分

Sqoop可以使用--query子句从多个表中导入数据,但不清楚是否可以导入以下查询。Selectdeptid,avg(salary)fromempgroupbydeptid另一个问题是sqoopimport--connectjdbc:mysql://myserver:1202/--username=u1--password=p1--query'Select*fromempwhereempid$CONDITIONS和split-by用于执行并行处理或者我们可以说高效地导入数据。前者根据条件拆分行,然后在主键上使用最小和最大逻辑。这两个($CONDITIONS,split-by)有什么区

hadoop - Sqoop import --as-parquetfile with CDH5

我正在尝试将数据直接从mysql导入到parquet,但它似乎无法正常工作...我正在使用包含Sqoop1.4.5的CDH5.3。这是我的命令行:sqoopimport--connectjdbc:mysql://xx.xx.xx.xx/database--usernameusername--passwordmypass--query'SELECTpage_id,user_idFROMpages_usersWHERE$CONDITIONS'--split-bypage_id--hive-import--hive-tabledefault.pages_users3--target-dirh

hadoop - 由于任务超时,Sqoop 导入作业失败

我尝试使用sqoop将MySQL中的1TB表导入到HDFS。使用的命令是:sqoopimport--connectjdbc:mysql://xx.xx.xxx.xx/MyDB--usernamemyuser--passwordmypass--tablemytable--split-byrowkey-m14执行boundingvals查询后,所有映射器启动,但一段时间后,任务因超时(1200秒)而被终止。我认为这是因为在每个mapper中运行select查询所花费的时间超过了设置的超时时间(在sqoop中似乎是1200秒);因此它无法报告状态,任务随后被终止。(我也尝试过100GB数据集