우리는 종종 Apache Spark가 하둡 에코시스템에 어떻게 적합한지, 그리고 기존 하둡
클러스터에서 Spark를 어떻게 실행할 수 있는지에 대한 질문을 받습니다.
이 블로그는 이러한 질문에 답하는 것을 목표로 합니다.
첫째, Spark는 Hadoop 스택을 대체하는 것이 아니라 향상시키기 위한 것입니다.
Spark는 처음부터 HDFS는 물론 HBase 및 Amazon의 S3와 같은 다른 스토리지
시스템에서 데이터를 읽고 쓸 수 있도록 설계되었습니다. 따라서 사용자는 Spark를
MapReduce, HBase 및 기타 빅데이터 프레임워크 결합하여Hadoop 처리 기능을
강화할 수 있습니다.Hadoop
둘째, 모든 Hadoop 사용자가 Spark의 기능을 최대한 쉽게 활용할 수 있도록
지속적으로 노력해 왔습니다. Hadoop 1.x를 실행하든 Hadoop 2.0(YARN)을
실행하든 상관없이, Hadoop 클러스터 를 구성 할 수 있는 관리자 권한이 있는지
여부에 관계없이 Spark를 실행할 수 있는 방법이 있습니다. 특히 하둡 클러스터에
Spark를 배포하는 방법에는 독립 실행형, YARN 및 SIMR의 세 가지가 있습니다.
독립 실행형 배포: 독립 실행형 배포를 사용하면 하둡 클러스터의 모든 컴퓨터 또는 하위 집합에
리소스를 정적으로 할당하고 Spark를 Hadoop MR과 나란히 실행할 수 있습니다.
그런 다음 사용자는 HDFS 데이터에서 임의의 Spark 작업을 실행할 수 있습니다.
단순성으로 인해 많은 Hadoop 1.x 사용자가 이 배포를 선택합니다.
Hadoop Yarn 배포: Hadoop Yarn을 이미 배포했거나 배포할 계획인 Hadoop 사용자는
사전 설치 또는 관리 액세스 없이 YARN에서 Spark를 실행하기만 하면 됩니다.
이를 통해 사용자는 Spark를 Hadoop 스택에 쉽게 통합하고 Spark의 모든 기능과
Spark에서 실행되는 다른 구성 요소를 활용할 수 있습니다.
SIMR(Spark In MapReduce): 아직 YARN을 실행하지 않는 Hadoop 사용자의 경우
독립 실행형 배포 외에 SIMR을 사용하여 MapReduce 내에서 Spark 작업을 시작하는 것이
또 다른 옵션입니다. SIMR을 사용하면 Spark로 Experiment 시작하고 다운로드 후 몇 분 안에
셸을 사용할 수 있습니다! 이렇게 하면 배포 장벽이 크게 낮아지고 거의 모든 사람이 Spark를
사용할 수 있습니다.
Spark는 Hadoop뿐만 아니라 다른 인기 있는 빅데이터 기술과도 상호 운용됩니다.