1

我正在我的 Unix 机器上设置 Prediction IO。我能够设置所有需要的东西,现在使用Lead Scoring 模板。我可以使用pio build --verbose命令成功构建模板,它说引擎已准备好训练。但是,一旦我运行pio train它就会失败并出现一些火花异常。

有人可以帮我解决这个问题吗?

以下是日志:

 [INFO] [Engine] Extracting datasource params...
    [INFO] [WorkflowUtils$] No 'name' is found. Default empty String will be used.
    [INFO] [Engine] Datasource params: (,DataSourceParams(LeadScoreApp))
    [INFO] [Engine] Extracting preparator params...
    [INFO] [Engine] Preparator params: (,Empty)
    [INFO] [Engine] Extracting serving params...
    [INFO] [Engine] Serving params: (,Empty)
    [INFO] [Remoting] Starting remoting
    [INFO] [Remoting] Remoting started; listening on addresses :[akka.tcp://sparkDriverActorSystem@127.0.0.1:59327]
    [INFO] [Engine$] EngineWorkflow.train
    [INFO] [Engine$] DataSource: com.adobe.sfdc.DataSource@6cfbbff7
    [INFO] [Engine$] Preparator: com.adobe.sfdc.Preparator@136ccbfe
    [INFO] [Engine$] AlgorithmList: List(com.adobe.sfdc.RFAlgorithm@14c141c0)
    [INFO] [Engine$] Data sanity check is on.
    [INFO] [Engine$] com.adobe.sfdc.TrainingData does not support data sanity check. Skipping check.
    [Stage 0:>                                                          (0 + 0) / 4]Exception in thread "main" org.apache.spark.SparkException: Job aborted due to stage failure: Task serialization failed: java.lang.reflect.InvocationTargetException
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.scala:72)
    org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.scala:65)
    org.apache.spark.broadcast.TorrentBroadcast.org$apache$spark$broadcast$TorrentBroadcast$$setConf(TorrentBroadcast.scala:73)
    org.apache.spark.broadcast.TorrentBroadcast.<init>(TorrentBroadcast.scala:80)
    org.apache.spark.broadcast.TorrentBroadcastFactory.newBroadcast(TorrentBroadcastFactory.scala:34)
    org.apache.spark.broadcast.BroadcastManager.newBroadcast(BroadcastManager.scala:63)
    org.apache.spark.SparkContext.broadcast(SparkContext.scala:1326)
    org.apache.spark.scheduler.DAGScheduler.submitMissingTasks(DAGScheduler.scala:1006)
    org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:921)
    org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
    org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
    scala.collection.immutable.List.foreach(List.scala:318)
    org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
    org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
    org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
    scala.collection.immutable.List.foreach(List.scala:318)
    org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
    org.apache.spark.scheduler.DAGScheduler.handleJobSubmitted(DAGScheduler.scala:861)
    org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.doOnReceive(DAGScheduler.scala:1607)
    org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1599)
    org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1588)
    org.apache.spark.util.EventLoop$$anon$1.run(EventLoop.scala:48)

            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$failJobAndIndependentStages(DAGScheduler.scala:1431)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1419)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$abortStage$1.apply(DAGScheduler.scala:1418)
            at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
            at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
            at org.apache.spark.scheduler.DAGScheduler.abortStage(DAGScheduler.scala:1418)
            at org.apache.spark.scheduler.DAGScheduler.submitMissingTasks(DAGScheduler.scala:1016)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:921)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
            at scala.collection.immutable.List.foreach(List.scala:318)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
            at scala.collection.immutable.List.foreach(List.scala:318)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
            at org.apache.spark.scheduler.DAGScheduler.handleJobSubmitted(DAGScheduler.scala:861)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.doOnReceive(DAGScheduler.scala:1607)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1599)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1588)
            at org.apache.spark.util.EventLoop$$anon$1.run(EventLoop.scala:48)
            at org.apache.spark.scheduler.DAGScheduler.runJob(DAGScheduler.scala:620)
            at org.apache.spark.SparkContext.runJob(SparkContext.scala:1832)
            at org.apache.spark.SparkContext.runJob(SparkContext.scala:1845)
            at org.apache.spark.SparkContext.runJob(SparkContext.scala:1858)
            at org.apache.spark.SparkContext.runJob(SparkContext.scala:1929)
            at org.apache.spark.rdd.RDD$$anonfun$collect$1.apply(RDD.scala:927)
            at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:150)
            at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:111)
            at org.apache.spark.rdd.RDD.withScope(RDD.scala:316)
            at org.apache.spark.rdd.RDD.collect(RDD.scala:926)
            at com.adobe.sfdc.Preparator.prepare(Preparator.scala:40)
            at com.adobe.sfdc.Preparator.prepare(Preparator.scala:21)
            at io.prediction.controller.PPreparator.prepareBase(PPreparator.scala:34)
            at io.prediction.controller.Engine$.train(Engine.scala:668)
            at io.prediction.controller.Engine.train(Engine.scala:174)
            at io.prediction.workflow.CoreWorkflow$.runTrain(CoreWorkflow.scala:65)
            at io.prediction.workflow.CreateWorkflow$.main(CreateWorkflow.scala:247)
            at io.prediction.workflow.CreateWorkflow.main(CreateWorkflow.scala)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731)
            at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181)
            at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206)
            at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121)
            at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
    Caused by: java.lang.reflect.InvocationTargetException
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
            at org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.scala:72)
            at org.apache.spark.io.CompressionCodec$.createCodec(CompressionCodec.scala:65)
            at org.apache.spark.broadcast.TorrentBroadcast.org$apache$spark$broadcast$TorrentBroadcast$$setConf(TorrentBroadcast.scala:73)
            at org.apache.spark.broadcast.TorrentBroadcast.<init>(TorrentBroadcast.scala:80)
            at org.apache.spark.broadcast.TorrentBroadcastFactory.newBroadcast(TorrentBroadcastFactory.scala:34)
            at org.apache.spark.broadcast.BroadcastManager.newBroadcast(BroadcastManager.scala:63)
            at org.apache.spark.SparkContext.broadcast(SparkContext.scala:1326)
            at org.apache.spark.scheduler.DAGScheduler.submitMissingTasks(DAGScheduler.scala:1006)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:921)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
            at scala.collection.immutable.List.foreach(List.scala:318)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:924)
            at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$submitStage$4.apply(DAGScheduler.scala:923)
            at scala.collection.immutable.List.foreach(List.scala:318)
            at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$submitStage(DAGScheduler.scala:923)
            at org.apache.spark.scheduler.DAGScheduler.handleJobSubmitted(DAGScheduler.scala:861)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.doOnReceive(DAGScheduler.scala:1607)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1599)
            at org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1588)
            at org.apache.spark.util.EventLoop$$anon$1.run(EventLoop.scala:48)
    Caused by: java.lang.IllegalArgumentException: java.lang.UnsatisfiedLinkError: /tmp/snappy-1.1.2-23181eaa-8f65-49f6-8e5d-29dc1ad89198-libsnappyjava.so: /tmp/snappy-1.1.2-23181eaa-8f65-49f6-8e5d-29dc1ad89198-libsnappyjava.so: failed to map segment from shared object: Operation not permitted
            at org.apache.spark.io.SnappyCompressionCodec.<init>(CompressionCodec.scala:156)
            ... 26 more
    Caused by: java.lang.UnsatisfiedLinkError: /tmp/snappy-1.1.2-23181eaa-8f65-49f6-8e5d-29dc1ad89198-libsnappyjava.so: /tmp/snappy-1.1.2-23181eaa-8f65-49f6-8e5d-29dc1ad89198-libsnappyjava.so: failed to map segment from shared object: Operation not permitted
            at java.lang.ClassLoader$NativeLibrary.load(Native Method)
            at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
            at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
            at java.lang.Runtime.load0(Runtime.java:809)
            at java.lang.System.load(System.java:1086)
            at org.xerial.snappy.SnappyLoader.loadNativeLibrary(SnappyLoader.java:174)
            at org.xerial.snappy.SnappyLoader.load(SnappyLoader.java:152)
            at org.xerial.snappy.Snappy.<clinit>(Snappy.java:46)
            at org.apache.spark.io.SnappyCompressionCodec.<init>(CompressionCodec.scala:154)
            ... 26 more
4

0 回答 0