标签: hadoop

如何在工作完成前重新运行hadoop中的整个map/reduce?

我使用Java使用Hadoop Map/Reduce

假设,我已完成整个地图/减少工作.有没有什么方法可以重复整个地图/减少部分,而不会结束工作.我的意思是,我不想使用不同作业的任何链接,但只希望map/reduce部分重复.

谢谢!

java hadoop mapreduce chain

0
推荐指数
1
解决办法
3930
查看次数

Hadoop:文件...只能复制到 0 个节点,而不是 1 个

我正在尝试在 8 节点 IB (OFED-1.5.3-4.0.42) 集群上部署 Hadoop-RDMA,并遇到以下问题(又名文件...只能复制到 0 个节点,而不是 1 个节点):

\n\n
\nfrolo@A11:~/hadoop-rdma-0.9.8> ./bin/hadoop dfs -copyFromLocal ../pg132.txt /user/frolo/input/pg132.txt\n警告: $HADOOP_HOME 已弃用。\n\ n14/02/05 19:06:30 警告 hdfs.DFSClient: DataStreamer 异常: java.lang.reflect.UndeclaredThrowableException\n 在 com.sun.proxy.$Proxy1.addBlock(未知来源)\n 在 sun.reflect.NativeMethodAccessorImpl .invoke0(本机方法)\n 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\n 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n 在 java.lang.reflect.Method .invoke(Method.java:606)\n 在 org.apache.hadoop.io.retry.RetryInvocalHandler.invokeMethod(未知来源)\n 在 org.apache.hadoop.io.retry.RetryInvocalHandler.invoke(未知来源)\ n 在 com.sun.proxy.$Proxy1.addBlock(未知来源)\n 在 org.apache.hadoop.hdfs.From.Code(未知来源)\n 在 org.apache.hadoop.hdfs.From.F(未知来源)源)\n 位于 org.apache.hadoop.hdfs.From.F(未知源)\n 位于 org.apache.hadoop.hdfs.The.run(未知源)\n由:org.apache.hadoop.ipc 引起。 RemoteException:java.io.IOException:文件/user/frolo/input/pg132.txt只能复制到0个节点,而不是org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(未知)的1\n源)\n 在 org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(未知源)\n 在 sun.reflect.GeneratedMethodAccessor6.invoke(未知源)\n 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:43)\n 在 java.lang.reflect.Method.invoke(Method.java:606)\n 在 org.apache.hadoop.ipc.RPC$Server.call(未知来源)\n 在 org.apache .hadoop.ipc.rdma.madness.Code(未知来源)\n 位于 org.apache.hadoop.ipc.rdma.madness.run(未知来源)\n 位于 java.security.AccessController.doPrivileged(本机方法)\n在 javax.security.auth.Subject.doAs(Subject.java:415)\n 在 org.apache.hadoop.security.UserGroupInformation.doAs(未知来源)\n 在 org.apache.hadoop.ipc.rdma.be。运行(未知来源)\n 在 …

hadoop infiniband

0
推荐指数
1
解决办法
7309
查看次数

hadoop distcp 引发无法找到或加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster

当我运行 distcp 将数据从 s3 移动到本地 hdfs 时,我在启动映射减少作业以复制数据期间遇到此异常:

Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster
Run Code Online (Sandbox Code Playgroud)

我检查了所有可能的在线文章。我的yarn-site.xml文件包含

<property> <name>yarn.application.classpath</name> <value> $HADOOP_CONF_DIR, $HADOOP_COMMON_HOME/*, $HADOOP_COMMON_HOME/lib/*, $HADOOP_HDFS_HOME/*, $HADOOP_HDFS_HOME/lib/*, $HADOOP_MAPRED_HOME/*, $HADOOP_MAPRED_HOME/lib/*, $HADOOP_YARN_HOME/*, $HADOOP_YARN_HOME/lib/*, $HADOOP_HOME/share/hadoop/mapreduce/, $HADOOP_HOME/share/hadoop/mapreduce/lib/ </value> </property> 对于集群的每个节点,我检查并设置了这些变量并指向正确的文件夹,实际上$HADOOP_HOME/share/hadoop/mapreduce/是指向hadoop-mapreduce-client-app-2.7.1.jar包含任何建议的 jar 的那个org.apache.hadoop.mapreduce.v2.app.MRAppMaster

hadoop amazon-s3 distcp

0
推荐指数
1
解决办法
7370
查看次数

名称节点驻留在 RAM 中还是硬盘中?

名称节点驻留在 RAM 或硬盘中的什么位置 - Hadoop 1.2.1?

名称节点守护进程放置在 RAM 或辅助内存中。任何人都可以帮忙了解这一点吗?

hadoop

0
推荐指数
1
解决办法
1586
查看次数

0
推荐指数
1
解决办法
1847
查看次数

将数据帧写入 HDFS 时出现 NumberFormatException 错误

我正在写信dataframeHDFS,使用以下代码

final_df.write.format("com.databricks.spark.csv").option("header", "true").save("path_to_hdfs")
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误:

Caused by: java.lang.NumberFormatException: For input string: "124085346080"
Run Code Online (Sandbox Code Playgroud)

完整堆栈如下:

at org.apache.spark.sql.execution.datasources.DefaultWriterContainer.writeRows(WriterContainer.scala:261)
    at org.apache.spark.sql.execution.datasources.InsertIntoHadoopFsRelationCommand$$anonfun$run$1$$anonfun$apply$mcV$sp$1.apply(InsertIntoHadoopFsRelationCommand.scala:143)
    at org.apache.spark.sql.execution.datasources.InsertIntoHadoopFsRelationCommand$$anonfun$run$1$$anonfun$apply$mcV$sp$1.apply(InsertIntoHadoopFsRelationCommand.scala:143)
    at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:70)
    at org.apache.spark.scheduler.Task.run(Task.scala:86)
    at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:274)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NumberFormatException: For input string: "124085346080"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:583)
    at java.lang.Integer.parseInt(Integer.java:615)
    at scala.collection.immutable.StringLike$class.toInt(StringLike.scala:272)
    at scala.collection.immutable.StringOps.toInt(StringOps.scala:29)
    at org.apache.spark.sql.execution.datasources.csv.CSVTypeCast$.castTo(CSVInferSchema.scala:241)
    at org.apache.spark.sql.execution.datasources.csv.CSVRelation$$anonfun$csvParser$3.apply(CSVRelation.scala:116)
    at org.apache.spark.sql.execution.datasources.csv.CSVRelation$$anonfun$csvParser$3.apply(CSVRelation.scala:85)
    at org.apache.spark.sql.execution.datasources.csv.CSVFileFormat$$anonfun$buildReader$1$$anonfun$apply$2.apply(CSVFileFormat.scala:128)
    at org.apache.spark.sql.execution.datasources.csv.CSVFileFormat$$anonfun$buildReader$1$$anonfun$apply$2.apply(CSVFileFormat.scala:127)
    at scala.collection.Iterator$$anon$12.nextCur(Iterator.scala:434)
    at scala.collection.Iterator$$anon$12.hasNext(Iterator.scala:440)
    at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:408)
    at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.hasNext(FileScanRDD.scala:91)
    at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIterator.processNext(Unknown Source)
    at org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43)
    at org.apache.spark.sql.execution.WholeStageCodegenExec$$anonfun$8$$anon$1.hasNext(WholeStageCodegenExec.scala:370)
    at org.apache.spark.sql.execution.datasources.DefaultWriterContainer$$anonfun$writeRows$1.apply$mcV$sp(WriterContainer.scala:253)
    at org.apache.spark.sql.execution.datasources.DefaultWriterContainer$$anonfun$writeRows$1.apply(WriterContainer.scala:252) …
Run Code Online (Sandbox Code Playgroud)

hadoop scala hdfs apache-spark pyspark

0
推荐指数
1
解决办法
1640
查看次数

Beeline无法使用NOSASL身份验证模式连接HiveServe2(旧客户端)

这个问题在这里很常见,有几种不同的风格。在这种情况下,我设置了一个没有身份验证的 HiveServer2 ( NOSASL ),它在 Python 中工作,我在其中使用 Impyla 库进行连接。当我使用直线连接时,无法获得有效的连接。

直线结束于:

 beeline> !connect jdbc:hive2://127.0.0.1:10000/default/hive
 Error: Could not open client transport with JDBC Uri: jdbc:hive2://127.0.0.1:10000/default/hive: null (state=08S01,code=0)
Run Code Online (Sandbox Code Playgroud)

在 HiveServer2 日志中我有:

17/11/16 20:59:35 [HiveServer2-Handler-Pool: Thread-34]: ERROR server.TThreadPoolServer: Thrift error occurred during processing of message.
org.apache.thrift.protocol.TProtocolException: Missing version in readMessageBegin, old client?
    at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:228)
    at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:27)
    at org.apache.hive.service.auth.TSetIpAddressProcessor.process(TSetIpAddressProcessor.java:56)
    at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:285)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

authentication hadoop hive beeline

0
推荐指数
1
解决办法
3240
查看次数

查询HIVE元数据

我需要查询下表并查看我的 Apache HIVE 集群中的信息:

每行需要包含以下内容:

表模式

表名

表说明

列名称

列数据类型

柱长

立柱精度

柱标尺

空或非空

主要关键指标

这可以很容易地从大多数 RDBMS(元数据表/视图)中查询,但我很难找到有关 HIVE 中等效元数据表/视图的大量信息。

请帮忙 :)

hadoop hive hiveql hortonworks-data-platform hadoop2

0
推荐指数
1
解决办法
1万
查看次数

org.apache.hadoop.hive.ql.io.orc.OrcStruct 无法转换为 org.apache.hadoop.io.BinaryComparable

        at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:563)
        at org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.processRow(MapRecordSource.java:83)
        ... 17 more
Caused by: java.lang.ClassCastException: org.apache.hadoop.hive.ql.io.orc.OrcStruct cannot be cast to org.apache.hadoop.io.BinaryComparable
        at org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe.doDeserialize(LazySimpleSerDe.java:166)
        at org.apache.hadoop.hive.serde2.AbstractEncodingAwareSerDe.deserialize(AbstractEncodingAwareSerDe.java:71)
        at org.apache.hadoop.hive.ql.exec.MapOperator$MapOpCtx.readRow(MapOperator.java:149)
        at org.apache.hadoop.hive.ql.exec.MapOperator$MapOpCtx.access$200(MapOperator.java:113)
        at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:554)
        ... 18 more

2019-09-19 11:50:29,860 [INFO] [TezChild] |task.TezTaskRunner|: Encounted an error while executing task: attempt_1568591126479_21189_1_01_000000_2
java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing writable {140725, 222117, 11A2, YYYYYYNN            , F, R, SeLect Advntg RX OB, N, MATERNITY  , I, 0.00, 04, N, N, Y, Y, Y, N, 003, A, B,  ,  ,  ,  , …
Run Code Online (Sandbox Code Playgroud)

hadoop hive apache-tez orc

0
推荐指数
1
解决办法
4661
查看次数

写入 hdfs 路径时出现错误 java.io.IOException: Failed to rename

我使用的是使用 hadoop-2.6.5.jar 版本的 spark-sql-2.4.1v。我需要先将数据保存在 hdfs 上,然后再转移到 cassandra。因此,我试图将数据保存在 hdfs 上,如下所示:

String hdfsPath = "/user/order_items/";
cleanedDs.createTempViewOrTable("source_tab");

givenItemList.parallelStream().forEach( item -> {   
    String query = "select $item  as itemCol , avg($item) as mean groupBy year";
    Dataset<Row> resultDs = sparkSession.sql(query);

    saveDsToHdfs(hdfsPath, resultDs );   
});


public static void saveDsToHdfs(String parquet_file, Dataset<Row> df) {
    df.write()                                 
      .format("parquet")
      .mode("append")
      .save(parquet_file);
    logger.info(" Saved parquet file :   " + parquet_file + "successfully");
}
Run Code Online (Sandbox Code Playgroud)

当我在集群上运行我的工作时,它无法抛出此错误:

java.io.IOException: Failed to rename FileStatus{path=hdfs:/user/order_items/_temporary/0/_temporary/attempt_20180626192453_0003_m_000007_59/part-00007.parquet; isDirectory=false; length=952309; replication=1; blocksize=67108864; modification_time=1530041098000; access_time=0; owner=; group=; permission=rw-rw-rw-; isSymlink=false} to hdfs:/user/order_items/part-00007.parquet …
Run Code Online (Sandbox Code Playgroud)

hadoop hdfs apache-spark hadoop2 apache-spark-sql

0
推荐指数
1
解决办法
1744
查看次数