이 저장소에는 EPFL(École Polytechnique Fédérale de Lausanne)이 제공하고 Heather C. Miller 교수가 강의한 Coursera MOOC Big Data Analysis with Scala 및 Spark에 대해 제가 제출한 과제가 포함되어 있습니다.
기능적 개념을 사용하여 클러스터에 분산된 빅데이터를 조작하는 것은 업계에서 만연하며, 아마도 기능적 아이디어가 산업적으로 널리 사용된 최초의 사례 중 하나일 것입니다. 이는 MapReduce와 Hadoop, 그리고 가장 최근에는 Scala로 작성된 빠른 메모리 내 분산 컬렉션 프레임워크인 Apache Spark의 인기로 입증됩니다. 이 과정에서는 Spark를 전체적으로 사용하여 데이터 병렬 패러다임이 분산 사례로 확장될 수 있는 방법을 살펴보겠습니다. Spark의 프로그래밍 모델을 자세히 다루면서 공유 메모리 병렬 컬렉션 또는 순차 Scala 컬렉션과 같은 익숙한 프로그래밍 모델과 언제 어떻게 다른지 주의 깊게 이해합니다. Spark 및 Scala의 실습 예제를 통해 대기 시간 및 네트워크 통신과 같은 배포와 관련된 중요한 문제를 고려해야 하는 경우와 성능 향상을 위해 이러한 문제를 효과적으로 해결하는 방법을 알아봅니다.
학습 결과. 이 과정을 마치면 다음을 수행할 수 있습니다.
권장 배경: 최소 1년 이상의 프로그래밍 경험이 있어야 합니다. Java나 C#에 대한 능숙도가 이상적이지만, C/C++, Python, Javascript, Ruby 등 다른 언어에 대한 경험도 충분합니다. 명령줄 사용에 어느 정도 익숙해야 합니다. 이 과정은 병렬 프로그래밍 이후에 수강하기 위한 것입니다: https://www.coursera.org/learn/parprog1.
시작일 : 2022년 1월 4일
완료일 : 2022년 1월 10일
주 : 1
Lesson : Scala REPL 사용하기, SBT 도구 사용하기
설명 : "이 과제의 목표는 이 수업에 필요한 인프라와 도구에 익숙해지는 것입니다. 비록 이 과제의 성적이 과정의 최종 성적에서 제외되더라도 이 과제를 완수하는 것이 중요합니다. 주의하여."
등급 : 10 / 10
주 : 1
강의 : Spark RDD의 기본
설명 : "이 과제에서는 Wikipedia의 전체 텍스트 데이터를 사용하여 프로그래밍 언어가 얼마나 인기 있는지에 대한 기초적인 측정 기준을 생성합니다. 이는 Wikipedia 기반 순위가 인기 있는 Red Monk와 어떤 관련이 있는지 확인하기 위한 노력입니다. 순위."
등급 : 10 / 10
주 : 2 (2주 단위 과제)
Lesson : 축소 연산 및 분산 키-값 쌍
설명 : "이 과제의 전반적인 목표는 인기 있는 질문 답변 플랫폼인 StackOverflow의 게시물을 점수에 따라 클러스터링하는 분산 k-평균 알고리즘을 구현하는 것입니다. 또한 이 클러스터링은 다양한 프로그래밍 언어에 대해 병렬로 실행되어야 하며 결과를 비교해야 한다."
등급 : 10 / 10
주 : 4
강의 : SQL, 데이터프레임, 데이터세트
설명 : "우리의 목표는 주요 요구 사항(수면 및 식사), 일, 기타(여가)의 세 가지 활동 그룹을 식별하는 것입니다. 그런 다음 사람들이 이 세 가지 유형의 활동 사이에 시간을 어떻게 할당하는지 관찰하고, 남성과 여성, 취업자와 실업자, 청년(22세 미만), 활동적(22~55세) 및 노인 사이의 차이입니다."
등급 : 10 / 10
코드가 작동하려면 리소스 파일의 압축을 풀어야 합니다.