spark map

爱学习的旺旺 2016-11-21 10:25:38
Spark 中map(func)中的算子,如何做好一个模板,配置文件
def func()={config},程序调用的config文件,然后map(func)就可以使用了
...全文
210 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
爱学习的旺旺 2016-11-22
  • 打赏
  • 举报
回复
您有没有写过类似的哈,自己写的,感觉没理解反射的感念,没写对。
LinkSe7en 2016-11-21
  • 打赏
  • 举报
回复
Java可以运行时编译代码,然后通过ClassLoader装载你的生成类,然后通过反射获得类实例,丢进去就可以了
爱学习的旺旺 2016-11-21
  • 打赏
  • 举报
回复
def func() = { config[String]("map", _configParams) } override def result(alg: util.List[Processor[T]], ref: util.List[Strategy[T]], middleResult: util.List[T], params: util.Map[Any, Any]): util.List[T] = { val dstream = middleResult(0).asInstanceOf[DStream[S]] val _num = func().get val newDstream = dstream.map(_num) List(newDstream.asInstanceOf[T]) }
LinkSe7en 2016-11-21
  • 打赏
  • 举报
回复
引用 2 楼 u013067749 的回复:
只是传入的是一个func,自己编译的时候没有编译通过
你直接写的lambda表达式,实际上是一个函数接口的匿名类。编译器自动给你完成了,所以你感觉丢进去的是代码。 比如rdd.map( row -> row.toString() ) 实际上是rdd.map(new Function<T,R>() { public R call(T row) { return row.toString();} }); 你要实现的,就是动态生成一个实现Function接口的类的Java或Scala代码,然后运行时编译,动态类装载,然后通过反射获得这个类的实例
爱学习的旺旺 2016-11-21
  • 打赏
  • 举报
回复
只是传入的是一个func,自己编译的时候没有编译通过

1,269

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧