728x90 Big Data14 [Spark] Spark Cluster Manager Stand Alone spark 에서 자체적으로 제공하는 기능입니다. 클러스터 매니저로 각 노드에서 하나의 *익스큐터만 실행 가능한데요. 클러스터 매니저와 스파크 콘텍스트가 연결되면 각 클러스터 내부의 워커 노드에서 익스큐터를 얻게 되며 스파크만 돌릴 경우 다른 클러스터 매니저들이 제공하는 거의 모든 기능을 제공합니다. stand alone 클러스터 모드는 현재 애플리케이션 전체에서 간단한 FIFO 스케줄러만 지원하지만 동시 사용자를 설정하려면 각 응용프로그램에서 사용할 최대 리소스 수 설정이 가능하지만 기본 설정으로 사용할 시 클러스터의 모든 코어를 사용함으로 하나의 애플리케이션만 실행하는 것이 합리적입니다. 스케줄러는 마스터를 사용해 스케줄링 결정을 내리고 이는 단일 실패 지점을 생성하는데요 여기서 .. 2022. 12. 16. [Spark] Spark Deploy Mode 안녕하세요. 오늘은 스파크의 배포 방식에 대하여 알아보려고 합니다. Spark의 Cluster Manager의 배포 방식(deploy mode)에는 Client mode와 Cluster mode가 존재. Spark 사용 시 Cluster를 사용하는지 여부에 따라 결정되며 Cluster Mode 와 Client Mode 가 존재합니다. 둘의 가장 큰 차이점은 Spark Driver 실행 위치입니다. 자세히 알아볼까요? Cluster 미사용 Cluster 를 사용하지 않는 경우 spark local mode 로 실행됩니다. Cluster 사용 ClusterManager를 선택해야합니다. ClusterManager 의 종류 및 기능은 다음 포스팅에서 설명하겠습니다. 결정을 했다면 ClusterManager의 .. 2022. 12. 16. [Spark] Spark Job 이번 포스팅에선 스파크의 작업에 대하여 알아보겠습니다. 먼저 스파크 작업은 어떻게 이루어져 있는지를 알아보고 , 어떤 방식으로 실행될 수 있는지를 알아볼게요! Job의 구조 spark에서 수행되는 작업은 job, stage, task 로 구성됩니다. job : spark app에 제출된 작업을 의미합니다. stage : 단위에 따라 구분하는 작업으로 job을 여러 개의 stage로 쪼갤 수 있습니다. task : 익스큐터에서 실행되는 실제 작업의 단위로 가장 작은 단위의 객체입니다. Spark Application의 구조 spark application 은 driver, executor process로 실행되는 프로그램입니다. application 에는 작업을 관리하는 dirver와 작업이 실행하는 노드.. 2022. 12. 15. [Spark] Spark Evalution Spark 에는 크게 두 가지 종류의 연산이 존재합니다. Transformation 과 Action 인데요, 두 가지로 나눠진 이유와 그 역할은 무엇인지 알아보겠습니다. 연산 분류 이유 두 가지 종류의 연산이 존재하는 이유를 이해하기 위해선 먼저 Spark 의 특징인 Lazy Evalution 의 개념을 알고 가야 합니다. Lazy Evalution 을 한국어로 번역하자면 게으른 연산이라고 해석할 수 있는데요. 게으른 연산 기법으로 인하여 Spark 는 연산 실행 계획 최적화가 가능합니다. 사용자가 입력한 연산들을 즉시 수행하지 않고 메타데이터에 연산이 요청되었다는 사실만 기록하고 연산의 가장 최적의 수행 방법을 수립해둡니다. action 함수가 호출되기 전까지는 실제 데이터 로딩 혹은 연산이 이루어지지.. 2022. 12. 13. 이전 1 2 3 4 다음 728x90