小编Max*_*ice的帖子

序列化Spark的Scalaz顺序

我注意到大多数Scalaz类都不可序列化.在这种情况下,我正在尝试使用类型类在Spark中自定义排序数组.

减少示例可能是这样的:

> val ord = Order[T]{ ... } 
> sc.makeRDD[T](...).grupBy(...).map { 
    case (_, grouped) => IList[T](grouped.toList).sorted(ord).distinct(ord)
  }
Run Code Online (Sandbox Code Playgroud)

正如您所期望的那样,此实现会抛出一个NotSerializableException因为Order[T]不可序列化.

有没有办法使Order[T]序列化?在一个完美的世界里,我希望仍然使用scalaz来避免这个问题.在一个不那么完美的版本中,我愿意考虑其他实现.

如果发生这种情况,必须以可持续和可扩展的方式保持自定义排序和不同的实现.

serialization scala scalaz apache-spark

2
推荐指数
1
解决办法
120
查看次数

按键存在过滤Jinja列表

我在Jinja写了一个Ansible模板,它有以下模式:

# Inventory
[Group1]
vm1 cluster=clusterName

[Group2]
vm2
Run Code Online (Sandbox Code Playgroud)

请注意,第二个组没有cluster定义属性.

# Task Definition
vars:
  potential_seeds: "{{groups.all | map('extract', hostvars) | groupby('cluster') | list}}"
Run Code Online (Sandbox Code Playgroud)

当然,这会导致明显的错误:

"the field 'vars' has an invalid value, which appears to include a variable that is undefined. The error was: 'dict object' has no attribute 'cluster'

我需要以一种只对cluster定义的字典进行分组的方式过滤列表.

jinja2 ansible

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

标签 统计

ansible ×1

apache-spark ×1

jinja2 ×1

scala ×1

scalaz ×1

serialization ×1