Spark 在 Hbase 的 InputSplit 期间给出空指针异常

2024-03-13

我正在使用 Spark 1.2.1、Hbase 0.98.10 和 Hadoop 2.6.0。从 hbase 检索数据时出现空点异常。 找到下面的堆栈跟踪。

[sparkDriver-akka.actor.default-dispatcher-2] 调试 NewHadoopRDD - 无法使用InputSplit#getLocationInfo。 java.lang.NullPointerException:空在 scala.collection.mutable.ArrayOps$ofRef$.length$extension(ArrayOps.scala:114) ~[scala-library-2.10.4.jar:na] 在 scala.collection.mutable.ArrayOps$ofRef.length(ArrayOps.scala:114) ~[scala-library-2.10.4.jar:na] 在 scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:32) ~[scala-library-2.10.4.jar:na] 在 scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108) ~[scala-library-2.10.4.jar:na] 在 org.apache.spark.rdd.HadoopRDD$.convertSplitLocationInfo(HadoopRDD.scala:401) 〜[spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.rdd.NewHadoopRDD.getPreferredLocations(NewHadoopRDD.scala:215) 〜[spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.rdd.RDD$$anonfun$preferredLocations$2.apply(RDD.scala:234) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.rdd.RDD$$anonfun$preferredLocations$2.apply(RDD.scala:234) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.Option.getOrElse(Option.scala:120) [scala-library-2.10.4.jar:na] 在 org.apache.spark.rdd.RDD.preferredLocations(RDD.scala:233) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal(DAGScheduler.scala:1326) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply$mcVI$sp(DAGScheduler.scala:1336) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.collection.immutable.List.foreach(List.scala:318) [scala-library-2.10.4.jar:na] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2.apply(DAGScheduler.scala:1333) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.collection.immutable.List.foreach(List.scala:318) [scala-library-2.10.4.jar:na] 在 org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal(DAGScheduler.scala:1333) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply$mcVI$sp(DAGScheduler.scala:1336) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2$$anonfun$apply$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.collection.immutable.List.foreach(List.scala:318) [scala-library-2.10.4.jar:na] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2.apply(DAGScheduler.scala:1335) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal$2.apply(DAGScheduler.scala:1333) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.collection.immutable.List.foreach(List.scala:318) [scala-library-2.10.4.jar:na] 在 org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$getPreferredLocsInternal(DAGScheduler.scala:1333) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler.getPreferredLocs(DAGScheduler.scala:1304) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$17.apply(DAGScheduler.scala:862) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler$$anonfun$17.apply(DAGScheduler.scala:859) [spark-core_2.10-1.2.1.jar:1.2.1] 在 scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) [scala-library-2.10.4.jar:na] 在 scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) [scala-library-2.10.4.jar:na] 在 scala.collection.Iterator$class.foreach(Ite​​rator.scala:727) [scala-library-2.10.4.jar:na] 在 scala.collection.AbstractIterator.foreach(Ite​​rator.scala:1157) [scala-library-2.10.4.jar:na] 在 scala.collection.IterableLike$class.foreach(Ite​​rableLike.scala:72) [scala-library-2.10.4.jar:na] 在 scala.collection.AbstractIterable.foreach(Ite​​rable.scala:54) [scala-library-2.10.4.jar:na] 在 scala.collection.TraversableLike$class.map(TraversableLike.scala:244) [scala-library-2.10.4.jar:na] 在 scala.collection.AbstractTraversable.map(Traversable.scala:105) [scala-library-2.10.4.jar:na] 在 org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitMissingTasks(DAGScheduler.scala:859) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:778) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGScheduler.handleJobSubmited(DAGScheduler.scala:762) [spark-core_2.10-1.2.1.jar:1.2.1] 在 org.apache.spark.scheduler.DAGSchedulerEventProcessActor$$anonfun$receive$2.applyOrElse(DAGScheduler.scala:1389) [spark-core_2.10-1.2.1.jar:1.2.1] 在 akka.actor.Actor$class.aroundReceive(Actor.scala:465) [akka-actor_2.10-2.3.4-spark.jar:na] 在 org.apache.spark.scheduler.DAGSchedulerEventProcessActor.aroundReceive(DAGScheduler.scala:1375) [spark-core_2.10-1.2.1.jar:1.2.1] 在 akka.actor.ActorCell.receiveMessage(ActorCell.scala:516) [akka-actor_2.10-2.3.4-spark.jar:na] 在 akka.actor.ActorCell.invoke(ActorCell.scala:487) [akka-actor_2.10-2.3.4-spark.jar:na] 在 akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238) [akka-actor_2.10-2.3.4-spark.jar:na] 在 akka.dispatch.Mailbox.run(Mailbox.scala:220) [akka-actor_2.10-2.3.4-spark.jar:na] 在 akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:393) [akka-actor_2.10-2.3.4-spark.jar:na] 在 scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) [scala-library-2.10.4.jar:na] 在 scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) [scala-library-2.10.4.jar:na] 在 scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) [scala-library-2.10.4.jar:na] 在 scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) [scala-library-2.10.4.jar:na]

请为我提供这个问题的解决方案。


异常是在 getPreferredLocations 阶段抛出的,因此如果没有有关您的 hbase 配置的更多信息,我建议您查看 hbase.table.name 和 hbase.master (如果定义 HMaster 正确,我不会这样做)配置为您想

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spark 在 Hbase 的 InputSplit 期间给出空指针异常 的相关文章

  • Spark:并行转换多个数据帧

    了解如何在并行转换多个数据帧时实现最佳并行性 我有一系列路径 val paths Array path1 path2 我从每个路径加载数据帧 然后转换并写入目标路径 paths foreach path gt val df spark re
  • 如何在 Scala 中编写 Pig UDF

    我正在尝试在 Scala 中编写 Pig UDF 使用 Eclipse 我已将 pig jar 添加为 java 构建路径中的库 这似乎解决了以下 2 个导入问题 导入 org apache pig EvalFunc 导入 org apac
  • Joda Time 类没有任何构造函数...为什么?我做错了什么?

    显然 Eclipse 上的 Scala 试图让我相信DateTime Period DateMidnightJoda Time 中的许多其他类没有任何构造函数 考虑到它们的文档显示了构造函数和许多方法 这很奇怪 我唯一可以访问的是静态方法
  • hadoop中reducer的数量

    我正在学习hadoop 我发现减速器的数量非常令人困惑 1 reducer的数量与partition的数量相同 2 reducer 的数量是 0 95 或 1 75 乘以 节点数 每个节点的最大容器数 3 减速机数量设定为mapred re
  • 列对象不可调用 Spark

    我尝试安装 Spark 并运行教程中给出的命令 但出现以下错误 https spark apache org docs latest quick start html https spark apache org docs latest q
  • Kubernetes WatchConnectionManager:执行失败:HTTP 403

    我遇到错误Expected HTTP 101 response but was 403 Forbidden 在我使用以下命令设置新的 Kubernetes 集群之后Kubeadm当我提交下面遇到的 pyspark 示例应用程序时 只有一个主
  • 在 Amazon EMR 上使用 java 中的 hbase 时遇到问题

    因此 我尝试使用作为 MapReduce 步骤启动的自定义 jar 来查询 Amazon ec2 上的 hbase 集群 我的 jar 在地图函数内 我这样调用 Hbase public void map Text key BytesWri
  • Scala REPL 中的递归重载语义 - JVM 语言

    使用 Scala 的命令行 REPL def foo x Int Unit def foo x String Unit println foo 2 gives error type mismatch found Int 2 required
  • 在 Akka/Scala 中使用带有 future 的 mapTo

    我最近开始使用 Akka Scala 编码 遇到了以下问题 通过范围内的隐式转换 例如 implicit def convertTypeAtoTypeX a TypeA TypeX TypeX just some kinda convers
  • 过滤字符串上的 Spark DataFrame 包含

    我在用火花1 3 0 http spark apache org releases spark release 1 3 0 html and 火花阿夫罗1 0 0 https github com databricks spark avro
  • 减少/折叠幺半群列表,但减少器返回任一

    我发现自己遇到过几次这样的情况 我有一个减速器 组合 fn 如下所示 def combiner a String b String Either String String a b asRight String 它是一个虚拟实现 但 fn
  • 如何将模型结果保存到文本文件?

    我正在尝试将从模型生成的频繁项集保存到文本文件中 该代码是 Spark ML 库中 FPGrowth 示例的示例 Using saveAsTextFile直接在模型上写入 RDD 位置而不是实际值 import org apache spa
  • Scala 2.9 无法在 Windows XP 上运行“hello world”示例

    我正在尝试在 Windows XP 上使用 scala 2 9 1 Final 运行 HelloWorld 示例 object HelloWorld extends App println Hello World 文件另存为Hello sc
  • 如何从命令行向 REPL 添加导入?

    如何使 REPL 导入命令行中给出的包 Sample scala someMagicHere import sys error scala gt imports 1 import scala Predef 162 terms 78 are
  • Spark问题中读取大文件 - python

    我已经使用 python 在本地安装了 Spark 并在运行以下代码时 data sc textFile C Users xxxx Desktop train csv data first 我收到以下错误 Py4JJavaError Tra
  • 更改 build.sbt 自定义任务中的版本

    我在 build sbt 中定义了一个自定义任务 val doSmth taskKey Unit smth doSmth version 1 0 SNAPSHOT 但它不会改变版本 我真正想要的是自定义 sbt 发布任务 它将始终将相同的版
  • 带有安全 Kafka 抛出的 Spark 结构化流:无权访问组异常

    为了在我的项目中使用结构化流 我正在 hortonworks 2 6 3 环境上测试 Spark 2 2 0 和 Kafka 0 10 1 与 Kerberos 的集成 我正在运行下面的示例代码来检查集成 我能够在 Spark 本地模式下的
  • 可选择将项目添加到 Scala 映射

    我正在寻找这个问题的惯用解决方案 我正在构建一个valScala 不可变 Map 并希望有选择地添加一项或多项 val aMap Map key1 gt value1 key2 gt value2 if condition key3 gt
  • 在 Spark MLlib 上使用 Java 中的 Breeze

    在尝试从Java使用MLlib时 使用微风矩阵运算的正确方法是什么 例如scala 中的乘法很简单 matrix vector 相应的功能在Java中是如何表达的 有一些方法 例如 colon times 可以通过正确的方式调用 breez
  • 规范化且不可变的数据模型

    Haskell如何解决 规范化不可变数据结构 问题 例如 让我们考虑一个表示前女友 男友的数据结构 data Man Man name String exes Woman data Woman Woman name String exes

随机推荐