[HADOOP] Lineage In Spark 란 무엇입니까?
HADOOPLineage In Spark 란 무엇입니까?
계보가 데이터를 재 계산하는 데 어떻게 도움이됩니까?
예를 들어, 여러 노드가 각각 30 분 동안 데이터를 계산하고 있습니다. 15 분이 지나도 실패하면 15 분 내에 처리 된 데이터를 다시 계보를 사용하여 다시 계산할 수 있습니까?
해결법
-
==============================
1.혈통을 이해하는 모든 것이 RDD의 정의에 있습니다.
혈통을 이해하는 모든 것이 RDD의 정의에 있습니다.
이제 다음 내용을 검토해 보겠습니다.
따라서 이해해야 할 2 가지 주요 사항이 있습니다.
불행히도,이 주제들은 단 한 가지 대답으로 논의하기에 꽤 길다. 데이터 계보에 대한 다음 기사와 함께 읽어 보는 것이 좋습니다.
그리고 이제 귀하의 질문과 의문에 대답하십시오 :
실행 프로그램이 데이터 계산에 실패하면 15 분 후에 메모리 또는 디스크의 소스 또는 캐시에서 마지막 체크 포인트로 돌아갑니다.
따라서 언급 한 15 분을 절약 할 수는 없습니다.
-
==============================
2.변환 (지도 또는 필터 등)이 호출되면 Spark에서 즉시 실행하지 않고 각 변환에 대해 계보를 만듭니다. 계보는 데이터를 읽어야하는 위치를 포함하여 RDD에 적용되어야하는 모든 변환을 추적합니다.
변환 (지도 또는 필터 등)이 호출되면 Spark에서 즉시 실행하지 않고 각 변환에 대해 계보를 만듭니다. 계보는 데이터를 읽어야하는 위치를 포함하여 RDD에 적용되어야하는 모든 변환을 추적합니다.
예를 들어 다음 예제를 고려해보십시오.
val myRdd = sc.textFile("spam.txt") val filteredRdd = myRdd.filter(line => line.contains("wonder")) filteredRdd.count()
sc.textFile () 및 myRdd.filter ()는 즉시 실행되지 않고 RDD에서 Action이 호출 된 경우에만 실행됩니다. 여기서는 filteredRdd.count ()입니다.
액션은 결과를 특정 위치에 저장하거나 표시하기 위해 사용됩니다. RDD 계보 정보는 filteredRdd.toDebugString 명령을 사용하여 인쇄 할 수도 있습니다 (filteredRdd는 RDD입니다). 또한 DAG 시각화는 다음과 같이 전체 그래프를 매우 직관적으로 보여줍니다.
from https://stackoverflow.com/questions/45751113/what-is-lineage-in-spark by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] hbase 사전 분할 전략을 선택하는 방법과 행 키에 미치는 영향 (0) | 2019.06.24 |
---|---|
[HADOOP] 하둡으로 Giraph 빌드하기 (0) | 2019.06.24 |
[HADOOP] Hive 0.12 및 Hadoop 2.2.0-cdh5.0.0-beta2의 SerDe 문제 (0) | 2019.06.24 |
[HADOOP] 파이썬 오류로 Hadoop 스트리밍 명령 실패 (0) | 2019.06.24 |
[HADOOP] Hadoop이 시스템의 모든 코어를 사용하게 만드는 방법은 무엇입니까? (0) | 2019.06.24 |