나는 spark-streaming에서 몇 개의 탄성 검색 색인으로 저장하려고합니다. <key(index), value>
쌍을 생성합니다. groupByKey를 실행하면 결과는 <key(index), Iterable<value>>
이지만, elasticsearch-spark 플러그인을 사용하여 elasticsearch에 저장하려면 JavaRDD<value>
으로 값이 필요합니다.반복 실행을 RDD로 변환
목록에서 JavaRDD를 만드는 sparkContext.parallelize (list) 옵션이 있지만 드라이버에서만 실행할 수 있다는 것을 알고 있습니다.
실행 프로그램에서 실행할 수있는 JavaRDD를 만드는 또 다른 옵션이 있습니까? 또는 실행자에서 작동하는 Tuple2<key(index), JavaRDD<value>>
을 얻을 수있는 또 다른 방법은 무엇입니까? 드라이버에서 JavaRDD에 대한 Iterator의 스위치 만 만들고 실행 프로그램에서 elasticsearch에 쓰는 플러그인을 어떻게 만들 수 있습니까?
감사합니다,
다니엘라
에 흠이 될 것입니다 다음
대체 접근 방식처럼 떨어지게을 가질 수 있어야한다 말 것 , AFAIK,'groupByKey'는 여전히'rdd' 인'JavaPairRDD>'을 낳습니다. . 따라서'rdd '의 추가 처리는 드라이버가 아닌 실행 프로그램에서 실행됩니다. –