包含RDD的元素数量与理想的分区数量之间是否存在任何关系?
我有一个拥有数千个分区的RDD(因为我是从一个由多个小文件组成的源文件加载它,这是一个我无法解决的约束所以我必须处理它).我想重新分区(或使用coalesce方法).但我事先并不知道RDD将包含的确切事件数.
所以我想以自动化的方式做到这一点.看起来像:
val numberOfElements = rdd.count()
val magicNumber = 100000
rdd.coalesce( numberOfElements / magicNumber)
Run Code Online (Sandbox Code Playgroud)
关于RDD的最佳分区数量及其元素数量是否有任何经验法则?
谢谢.
假设我有一个DataFrame如下:
case class SubClass(id:String, size:Int,useless:String)
case class MotherClass(subClasss: Array[SubClass])
val df = sqlContext.createDataFrame(List(
MotherClass(Array(
SubClass("1",1,"thisIsUseless"),
SubClass("2",2,"thisIsUseless"),
SubClass("3",3,"thisIsUseless")
)),
MotherClass(Array(
SubClass("4",4,"thisIsUseless"),
SubClass("5",5,"thisIsUseless")
))
))
Run Code Online (Sandbox Code Playgroud)
模式是:
case class SubClass(id:String, size:Int,useless:String)
case class MotherClass(subClasss: Array[SubClass])
val df = sqlContext.createDataFrame(List(
MotherClass(Array(
SubClass("1",1,"thisIsUseless"),
SubClass("2",2,"thisIsUseless"),
SubClass("3",3,"thisIsUseless")
)),
MotherClass(Array(
SubClass("4",4,"thisIsUseless"),
SubClass("5",5,"thisIsUseless")
))
))
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种只选择fields id和sizearray列子集的方法subClasss,但要保留嵌套的数组结构。结果模式将是:
root
|-- subClasss: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- id: string (nullable = true)
| | |-- size: integer …Run Code Online (Sandbox Code Playgroud) 我有一百万条记录.我想检索匹配相同模式的所有记录.
例如,我可能有:
id=4444?mode=mode1?fieldA=abc
id=4444?mode=mode1?fieldA=azerty
id=4444?mode=mode1?fieldA=qwerty
id=4444?mode=mode1?fieldA=foo
id=4444?mode=mode1?fieldA=bar
Run Code Online (Sandbox Code Playgroud)
是否有可能在不事先知道fieldA?的值的情况下进行查询以获取所有上述记录?正则表达式中的这样的东西:
id=4444?mode=mode1?fieldA=[\w]*
Run Code Online (Sandbox Code Playgroud)
谢谢你的时间.