scala rdd 를 이용하여 page rank 알고리즘을 실행하는 코드는 Spark 에서 기본으로 제공해주는 example 에서 따옴.

아래는 내가 이해한 것을 필기한 것들이다.

 

데이터는 

 

1    2
1    3
1    4
2    1
3    1
4    1

 

이런 형태인데, 각 열의 첫번째 숫자가 source(나가는 웹 페이지), 두번째 숫자가 destination(들어가는 웹 페이지) 이다.

그래서 웹페이지의 오고 나가는 링크가 바로 아래 필기의 오른쪽과 같이 표현된다.

 

Spark 는 Hadoop yarn 위에서 돌며, HDFS 의 /data 위치에 위의 데이터가 "data" 라는 이름으로 저장되어 있다고 가정한다.

 

검은 필기 : 기본 코드(핵심 되는 코드만 가져옴)

파란 필기 : 중간 과정 및 해설

빨간 필기 : 코드 연산 후의 결과 및 해설

 

 

위의 new_ranks 를 hdfs 에 저장하고 싶다면 아래 코드를 마지막에 넣으면 된다.


new_ranks.saveAsTextFile("hdfs:///out")

여기서 "hdfs:///out"은 결과값이 저장될 디렉토리의 경로이고,

이 out 디렉토리 안에 rdd가 파티션 된 만큼의 결과 파일이 만들어지게 될 것이다.

+ Recent posts