繁体   English   中英

使用Sqoop将数据从MS-SQL服务器写入HDFS

[英]Wrting Data from MS-SQL server to HDFS using Sqoop

我正在使用talend开放工作室,我的工作包括sqoop和hdfsoutput。 我正在尝试使用sqoop将数据从ms-sql服务器推送到hadoop hdfs,我已经设置了配置。但是当我运行作业时,出现以下错误

14/02/06 16:23:12 INFO tool.CodeGenTool: Beginning code generation
14/02/06 16:23:13 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM [Resource_Dim] AS t WHERE 1=0
14/02/06 16:23:13 INFO orm.CompilationManager: $HADOOP_MAPRED_HOME is not set
14/02/06 16:23:13 ERROR orm.CompilationManager: It seems as though you are running sqoop with a JRE.
14/02/06 16:23:13 ERROR orm.CompilationManager: Sqoop requires a JDK that can compile Java code.
14/02/06 16:23:13 ERROR orm.CompilationManager: Please install a JDK and set $JAVA_HOME to use it.
14/02/06 16:23:13 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Could not start Java compiler.
                at org.apache.sqoop.orm.CompilationManager.compile(CompilationManager.java:176)
                at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:83)
                at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:390)
                at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:476)
                at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.tSqoopImport_1Process(SqoopConnect.java:435)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.tLibraryLoad_1Process(SqoopConnect.java:357)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.runJobInTOS(SqoopConnect.java:877)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.main(SqoopConnect.java:743)

Exception in component tSqoopImport_1
java.lang.Exception: The Sqoop import job has failed
                at sampleproj.sqoopconnect_0_1.SqoopConnect.tSqoopImport_1Process(SqoopConnect.java:437)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.tLibraryLoad_1Process(SqoopConnect.java:357)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.runJobInTOS(SqoopConnect.java:877)
                at sampleproj.sqoopconnect_0_1.SqoopConnect.main(SqoopConnect.java:743)

JDK已安装在系统中,但仍无法得到上述错误。我已经尝试使用sqoop命令行运行相同的东西,并且我能够成功运行该作业。 但是,当我使用talend运行时,会显示上述错误。 请指导如何解决此错误。
我正在使用CDH4.5和Talend Open Studio for BigData 5.3.1

在Talend Studio的“首选项”中,“ Java路径”设置为JRE,只需将该路径从JRE更改为JDK即可解决了我的问题。

谢谢,Bhagwant Bhobe

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM