小编Gon*_*zzi的帖子

在Amazon EMR集群中运行时,Spark广播变量返回NullPointerException

我通过广播共享的变量在集群中为空.

我的应用程序非常复杂,但我编写了这个小例子,当我在本地运行它时,它运行完美,但它在集群中失败了:

package com.gonzalopezzi.bigdata.bicing

import org.apache.spark.broadcast.Broadcast
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkContext, SparkConf}

object PruebaBroadcast2 extends App {
  val conf = new SparkConf().setAppName("PruebaBroadcast2")
  val sc = new SparkContext(conf)

  val arr : Array[Int] = (6 to 9).toArray
  val broadcasted = sc.broadcast(arr)

  val rdd : RDD[Int] = sc.parallelize((1 to 4).toSeq, 2) // a small integer array [1, 2, 3, 4] is paralellized in two machines
  rdd.flatMap((a : Int) => List((a, broadcasted.value(0)))).reduceByKey(_+_).collect().foreach(println)  // NullPointerException in the flatmap. broadcasted is null

}
Run Code Online (Sandbox Code Playgroud)

我不知道问题是编码错误还是配置问题.

这是我得到的堆栈跟踪:

15/07/07 20:55:13 …
Run Code Online (Sandbox Code Playgroud)

amazon broadcast emr apache-spark

7
推荐指数
1
解决办法
3093
查看次数

如何从Dart中的Callback中获取"this":js

我试图将highcharts集成为AngularDart组件.Js interop就像一个魅力,但我遇到了一个我无法克服的问题.

Highcharts允许用户提供回调以自定义某些行为.例如,一个回调来格式化图表的工具提示.这是用javascript编写的格式化程序的一个例子:

formatter: function() {
            return 'The value for <b>'+ this.x +
                '</b> is <b>'+ this.y +'</b>';
        }
Run Code Online (Sandbox Code Playgroud)

我在Dart中有格式化程序功能.该函数被正确调用,但我不知道如何获得"this"对象来检索我需要的数据.

有谁能够帮我?

dart dart-js-interop

4
推荐指数
1
解决办法
222
查看次数

处理Polymer.dart中的跟踪事件

我正在尝试构建一个自定义的Polymer元素.我已经成功地构建了一段时间的Polymer元素.这是我第一次需要使用复杂的鼠标和手势事件.

在与鼠标事件挣扎之后,我发现Polymer为我们提供了触摸和手势事件,这些事件在这类工作中非常方便.

但是我不能让它在Dart中工作.

fx_slider.html:

<div id="main-div">
  <div id="slider-track"></div>
  <div id="slider-thumb" on-trackstart="{{trackStartHandler}}"
    on-trackend="{{trackEndHandler}}" on-track="{{trackHandler}}">
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

fx_slider.dart:

void trackStartHandler (Event e) {
  dragging = true;
}

void trackEndHandler (Event e) {
  dragging =  false;
}

void trackHandler (Event e, var detail, Node target) {
  /* How to retrieve the mouse position or the dx property from event ??? */
}
Run Code Online (Sandbox Code Playgroud)

我的事件处理程序(trackHandler)接收一个Event而不是TrackEventMouseEvent,因此我无法获得用户所做的移动或光标的位置.

您能否告诉我如何在Dart中使用跟踪事件?

提前致谢!

dart dart-polymer

4
推荐指数
1
解决办法
355
查看次数