개발자

Spark 작업 빠르게 결과확인하는법?

2023년 11월 21일조회 68

안녕하세요. spark쓴지도 벌써 2년인데, 아직도 대용량 처리할때마다 pandas때 습관때문에 자꾸 중간결과물들을 확인하는 버릇이 고쳐지질 않네요.. 혹시 선배님들은 spark 쓸때, 중간결과물들 빨리 확인하거나 하는 방법 , 노하우 있으신가요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

우태강님의 프로필 사진

zeppelin 을 세팅해서 pyspark 노트북으로 보고 있습니다. 다만 spark 자체가 lazy evaluation 이라 경우에 따라선 pandas 만큼 빠르게 보기는 어렵습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 11월 21일

Apache Spark에서 중간 결과를 확인하는 가장 흔한 방법은 `show()` 메소드와 `printSchema()` 메소드를 사용하는 것입니다. `show(n)` 메서드는 DataFrame의 처음 n행을 출력하므로, 대량 데이터 처리 시에도 중간결과물을 빨리 확인할 수 있습니다. 예시: ```python df.show(5) ``` 위 코드는 DataFrame의 처음 5행을 반환합니다. 또한, `printSchema()` 메소드는 스키마 정보를 시각화하여 데이터의 구조를 알아보는데 도움이 됩니다. 예시: ```python df.printSchema() ``` 더불어, Spark UI도 작업 진행 상황 및 실행된 작업의 세부사항 등을 실시간으로 확인할 수 있는 유용한 도구입니다. 로컬 환경에서 Spark작업을 실행중이라면, http://localhost:4040 주소에서 접근 가능합니다. 그러나 이러한 방법들은 Spark가 "lazy execution"을 가지고 있기 때문에 때때로 예상치 못한 지연이 발생할 수 있습니다. Spark는 action 연산자 (예: count(), first(), collect() 등)가 호출될 때까지 실제로 데이터 변환을 수행하지 않습니다. 따라서 중간 단계에서 결과를 보려면 action 연산자를 호출해야 합니다. 주요 포인트는, 대용량 데이터를 다룰 때 중간 결과물을 확인하려면 되도록이면 필요한 연산만 수행하고, 최종 결과물에 집중하는 것이 효율적일 것입니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!