小编Mar*_*rco的帖子

Scala:滑动(N,N)与分组(N)

当我需要在n个元素的组中迭代集合而不重新处理任何元素时,我发现自己最近使用了滑动(n,n).我想知道使用分组(n)迭代这些集合是否更为正确.我的问题是,是否有特殊原因在性能方面使用这一特定情况.

val listToGroup = List(1,2,3,4,5,6,7,8)
listToGroup: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8)

listToGroup.sliding(3,3).toList
res0: List[List[Int]] = List(List(1, 2, 3), List(4, 5, 6), List(7, 8))

listToGroup.grouped(3).toList
res1: List[List[Int]] = List(List(1, 2, 3), List(4, 5, 6), List(7, 8))
Run Code Online (Sandbox Code Playgroud)

scala

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

Spark应用程序完成回调

我有一个bash脚本,每晚都会启动我的独立EC2 Spark集群并执行一个应用程序.我希望在应用程序完成后注意到我可以停止群集.

我想知道是否存在基于spark应用程序状态的某种回调.

我很新兴,所以另外一个解决这个问题的提示将不胜感激.

谢谢.

更新:

使用json提供http://<master-host>:8080/metrics/master/json或者http://<master-host>:8080/metrics/applications/json我可以获得应用程序的状态(WAITING,RUNNING,FINISHED),但是我无法获得驱动程序的状态,它将告诉您执行是否失败.我确信指标必须有一个特定的配置才能显示,但我找不到它.

为了获得这种状态,我取消了提供的Web UI,http://<master-host>:8080以找到执行我的应用程序的驱动程序并获取其状态.

在此输入图像描述

scala amazon-ec2 hdfs apache-spark

6
推荐指数
1
解决办法
3790
查看次数

组列表元素的距离小于x

我试图找出一种方法来根据元素之间的x距离对列表中的所有对象进行分组.

例如,如果距离是1那么

List(2,3,1,6,10,7,11,12,14)
Run Code Online (Sandbox Code Playgroud)

会给

List(List(1,2,3), List(6,7), List(10,11,12), List(14))
Run Code Online (Sandbox Code Playgroud)

我只能提出棘手的方法和循环,但我想必须有一个更清洁的解决方案.

scala scala-collections

5
推荐指数
1
解决办法
206
查看次数