Filter, SortByKey, KeysAndValues
자세한 설명은 생략..
Ex)
test("Filter") {
val rdd = sc.parallelize(1 to 5)
val result = rdd.filter(_ > 2)
println(result.collect.mkString(", "))
}
test("SortByKey") {
val rdd = sc.parallelize(List("q", "z", "a"))
val result = rdd.map((_, 1)).sortByKey()
println(result.collect.mkString(", "))
}
test("KeysAndValues") {
val rdd = sc.parallelize(List(("k1", "v1"), ("k2", "v2"), ("k3", "v3")))
println(rdd.keys.collect.mkString(","))
println(rdd.values.collect.mkString(","))
}
Result)
3, 4, 5
(a,1), (q,1), (z,1)
k1,k2,k3
v1,v2,v3
Sample
샘플 추출해서 새로운 RDD 생성.
def sample(
withReplacement: Boolean,
fraction: Double,
seed: Long = Utils.random.nextLong): RDD[T]
withReplacement: true 는 복원 추출, false는 비복원추출
fraction : 나타나는 횟수의 기대값, 평균 발생 횟수, 반드시 0 이상의 값을 넣어야 함. 비복원일 경우 0~1 사이의 값을 넣어야 한다. 0.5를 넣는다고 해서 절반이 나오지 않는다. 정확히 원하는 샘플 갯수를 뽑으려면 take 함수를 사용할 것!
seed : 무작위값 추출에 대한 상수
'IT > Spark' 카테고리의 다른 글
RDD Data Load, Save (2) | 2017.12.18 |
---|---|
RDD Action (0) | 2017.12.18 |
RDD Operate Partition (0) | 2017.12.18 |
RDD Transformation aggregation (0) | 2017.12.18 |
RDD Transformation #2 (0) | 2017.12.15 |