Apache Spark 자격증 취득기

NewNewDaddy·2023년 9월 11일
1

SPARK

목록 보기
2/16
post-thumbnail

0. INTRO

  • Databricks 에서 주관하는 Spark 관련 자격증 시험인 'Databricks Certified Associate Developer for Apache Spark 3.0' 자격증 시험을 준비하고 합격하는 과정에서 설명, 등록, 준비, 취득 등의 전반적인 내용들에 대하여 다뤄보았습니다.

1. 시험 살펴보기

1. 공식사이트

-> Databricks Certified Associate Developer for Apache Spark 3.0.

2. 자격 요건

- Spark의 기본 실행구조 및 아키텍쳐에 대한 이해
- select, rename 등 컬럼 단위 조작에 대한 이해
- filter, drop, sort, aggregate 등 row 단위 조작에 대한 이해
- DataFrame에 대한 join, read, write 및 partitioning 기능 이해
- Spark SQL 함수 및 UDF에 대한 이해 및 활용

3. Spark 언어 선택

Scala or Python

4. 시험 언어 선택

Only English!

5. 시험 문제 구성

60문제 5지선다 단답형
- Apache Spark 아키텍처 컨셉 - 17% (10/60)
- Apache Spark 아키텍쳐 적용 - 11% (7/60)
- Apache Spark DataFrame API 활용 - 72% (43/60)
  • 즉, 17문제는 Spark의 구성, 아키텍쳐, 동작원리 등 이론적인 내용에 대한 테스트이며 72%를 차지하는 API 활용부분은 특정 DataFrame 형태를 만들기 위한 실행 코드에 관한 문제로 실무적인 내용을 다루고 있다.

6. 합격 기준

70% 이상 득점 (60문제 중 42문제 이상 정답)

7. 시험 시간

120분 (온라인 테스트)

8. 시험 비용

$200 (😨)

2. 시험 등록

  • Databricks 온라인 시험이 치뤄지는 웹사이트 >>Databricks Online Exam<<에 접속하여 회원가입 후 'Register for an Exam' 메뉴에 들어가 시험 선택 후 날짜 및 시간을 정하고 결제를 하면 시험 등록이 완료된다. 온라인 시험답게 시험 칠 수 있는 시간대가 아주 다양한다.
  • 아래와 같이 여러가지 종류의 시험들이 있으며 그 중 아래에서 세 번째인 'Databricks Certified Associate Developer for Apache Spark 3.0 - Python'를 선택하면 된다.
  • 시험 일정 변경 및 취소는 시험일 72시간 전까지만 가능하며 그 이후에는 추가 금액을 지불하고 변경/취소를 할 수 있다.
  • 시험 시작 이틀전에 등록한 e-mail로 notification이 온다.

3. 사전 준비 사항

  • 시험 등록 후 온라인 시험 웸사이트의 'My Assessments' 탭에 접속하여 아래 두 가지 사항들을 수행한다.

Step 1. Secure Browser 파일 설치

  • 온라인 시험을 수행하기 위한 자체 보안 프로그램을 다운받아 설치한다. (LockDownBrowserOEMSetup.exe)

Step 2. 생체 프로파일 등록

  • 컴퓨터와 연결된 웹캠을 통해 응시자의 정면 모습을 찍어 등록한다.

4. 시험 준비

  • AWS 자격증과는 다르게 그렇게 인기가 있는 시험은 아니기 때문에 공부할 수 있는 소스가 그렇게 많지는 않다.
  • Udemy에 찾아보면 해당 시험 대비를 위한 온라인 강의 및 시험 예상문제들을 구매할 수 있다. 나는 실무에서 Spark를 주로 썼기 때문에 가장 비중이 높은 'Spark DataFrame API' 쪽 문제들은 강의를 듣지 않아도 커버가 가능할 것이라 생각했고 이론적인 부분은 Docs 및 각종 블로그 내용들을 참고하면 될 것이라 생각하여 강의는 따로 구매하지 않고, 예상 문제만 구매하여 풀어보았다.

1. 공식 사이트 예제 문제

  • 실제 시험과 구성 및 난이도가 비슷하고 동일한 문제가 나오기도 하므로 반드시 3번 이상 풀어 해당 시험지 내의 내용을 모두 이해할 수 있도록 한다.
    -> Python
    -> Scala

2. Exam Topics 사이트 Dump 문제

  • 결제를 하지 않으면 60문제까지만 풀 수 있지만 실제 시험과 구성 및 난이도가 비슷하므로 이 사이트의 문제들도 반드시 풀어본다.
    -> Examtopics Dump

3. Udemy 예상 문제 구매

  • 위의 문제들을 모두 풀고 이해했더라도 아직 준비에 부족함을 느낄 수 있다. 아래 Udemy 연습문제는 60문제씩 3회분으로 구성되어 있으며 문제의 내용들이 도움이 많이 되므로 구매하여 풀어보는 것을 추천한다. Udemy가 비정기적으로 하는 할인 기간에 구매를 하면 15,000원에 구매할 수 있다.
    -> Udemy Practice Exam

4. 공식 Docs

  • 예상문제들을 풀어보며 특정 함수의 사용법이나 configure setting에 관하여 의문이 들때는 무조건 공식 Docs를 찾아보는 것이 가장 빠르고 정확하다. 함수의 인자에 string 값이 들어가는지, column type이 들어가는지, 독자적으로 쓰일 수 있는 함수인지 등 사용되는 함수의 특성에 대한 모든 것을 담고 있으므로 문제 풀다가 쓰임에 관하여 의문이 들면 무조건 Docs를 참고하여 공부하는 것이 좋다.
    -> Pyspark Docs
    -> Scala Docs

5. 각종 블로그 및 ChatGPT

  • Spark에 관한 이론적인 공부를 하다보면 Job, Stage, Task, Lazy Evaluation, Action and Transformation, Adaptive Query Execution 등등 실제 코드만 치면서 사용했을 때는 몰랐던 수많은 특성들을 마주하게 된다. 시험을 치기 위해서는 이에 대한 정의 및 특징들도 알고 있어야 하기 때문에 궁금한 내용에 대해서는 구글링을 통해 블로그들에 정리된 글을 읽거나 ChatGPT를 활용하여 정보들을 정리하는데 도움을 얻는다.

5. 시험 시작

1. 시작 전

  • 시험 시작 약 10분 전에 'My Assessment' 탭에 접속하면 'Launch' 버튼이 활성화 되어있는 것을 볼 수 있다.

  • 접속하게 되면 보안프로그램이 실행되고 시험 전용 창이 열린 뒤 다시 한 번 웹캠을 통하여 자신의 정면 사진을 찍어 등록하는 과정을 거치게 된다. 이후에는 다른 온라인 시험과 같이 화면에 집중하여 시험문제를 풀면된다.

2. 시작 후

  • 다른 온라인 시험들과는 다르게 한쪽 창에 Spark Docs를 볼 수 있는 화면을 제공하므로 시험중 의문점이 생기면 Docs를 참고할 수 있다는 아주 큰 장점이 있다. 단, Ctrl+F로 찾기 기능은 활성화되지 않으므로 스크롤을 내리면서 함수를 찾아보아야 한다.
  • 문제를 다 풀고 Submit Exam 버튼을 눌러 제출을 하면 그 즉시 시험 결과 및 합격 여부가 모니터에 나오게 되며 메일로도 전송된다.
  • 합격증 및 공식 Badge는 시험 종료 후 48시간 이내에 메일로 전달받을 수 있다.

6. 시험 팁 및 기타

  1. 시험중 참고할 수 있는 공식 Docs를 제공하므로 아래 각 언어 사이트에 접속하여 참고가 필요한 함수나 설정들의 페이지 번호를 외워두면 많은 도움이 될 것이다.
    -> Spark API Docs(Python)
    -> Spark API Docs(Scala)

  2. 이론보다는 실제 코드 문제가 시험의 약 70% 정도를 차지하기 때문에 spark를 실무에서 자주 사용하고 있다면 상당히 수월하게 문제를 풀 수 있다.

  3. Spark 코드를 자주 쓰는 사람으로써 개인적으로 굉장히 도움이 많이 되는 시험이었다. 사실 Spark를 사용하면서 Driver가 어떻고, Task가 어떤식으로 Executor에 넘어가서 실행되는 등 작동 원리에 대해서는 크게 생각하지 않고 사용하였다. 하지만 이번 시험을 계기로 Spark의 이론적인 내용들과 특성들에 대하여 공부해볼 수 있었으며 이전에 발생했던 에러의 원인이나 DataFrame을 더 효율적으로 컨트롤 할 수 있는 방법 등 실무를 함에 있어서 실질적으로 도움이 되는 내용들을 학습해볼 수 있었다.
    AWS 시험같은 경우는 잘 사용하지 않는 서비스일지라도 시험을 위해 공부를 해야하고 시험이 끝나면 또 까먹기도 하지만 이 시험은 Spark라는 하나의 주제만을 가지고 치는 시험이기 때문에 더 깊이있는 공부가 가능해지고 이를 통해 실질적인 실력 향상이 되는 느낌이었다.

    결론적으로 Spark를 실무에서 자주 사용하는 개발자 혹은 분석가라면 자격증에 도전해보는 것이 많은 도움이 될 것이라 생각한다.

profile
데이터 엔지니어의 작업공간 / #PYTHON #SPARK #AWS #NCLOUD

2개의 댓글

comment-user-thumbnail
2024년 7월 19일

오 정보 감사합니다..!저도 스팍 쓰면서 한번 준비해보려고 하는데 가뭄에 단비같은 글이네요!!

1개의 답글