We-Co

[We-Co] Apache Spark 본문

Spark

[We-Co] Apache Spark

위기의코딩맨 2021. 7. 23. 19:00
반응형

안녕하세요. 위기의코딩맨 입니다.

요즘 데이터의 중요성이 많이 오르고 있습니다!

빅데이터는 이제 많은 사업에도 사용되고 있습니다.

그래서 오늘은 이러한 빅데이터를 처리하기위한  Apache Spark에 대해 알아보도록 하겠습니다.

대학생때 Apache Hadoop 에 관해 조금 공부한 적이 있지만, 

Apache Spark는 처음 접하는 부분이라 천천히 알아가보도록 하겠습니다.

 

Apache Spark

[ Apache Spark ]

먼저, 간단하게 말하면 빠른 속도로 작업을 수행하며,

범용적으로 설계가 가능한 클러스터용 연산 플랫폼입니다.

 

범용적이란 무엇인가?  

여러 분야, 용도로 널리 쓰이는 것이라는 의미를 갖고있습니다.

 

 

[ 속도 측면 ]

★ 맵리듀스 모델을 대화형 명령어, 쿼리, 스트리밍 처리등 가능하도록 확장

★ 연산 작업을 메모리에 직접 수행하여 작업 속도를 높임

★ 메모리가 아닌 디스크로 작업을 진행해도 기존 하둡보다 속도가 높음 ( 하둡은 디스크에 작업을 할당 )

 

[ 범용적 측면 ]

☆ 기존에 분리된 분산 시스템에서 실행되던  반복 알고리즘, 배치 애플리케이션, 스트리밍, 대화형 쿼리와 같은 작업을 동시에 커버할 수있도록 설계 되었음

☆ 서로 다른 형태의 작업을 쉽고 저비용으로 연계 가능, 유지보수 비용 감소

 

 

Spark는 밀접하게 연동된 여러 개의 컴포넌트로 구성되어있다. 컴포넌트는 간단하게 재사용이 가능한 각각의 독립된 모듈을 뜻으로 해석하면 됩니다.

 

아무튼, 여기서 Spark는 다수의 작업이나, 클러스터 위에서 돌아가는 연산 작업을 분배하고 스케줄링, 감시하는 역할을 합니다. 또한, 서로 다른 데이터 처리 모델을 하나로 합쳐서 깔끔하게 하나의 애플리케이션을 만들 수 있다는 장점이 잇습니다.

 

Spark 기본구성

Spark의 기본 구성을 정말 간단하게 설명해 보겠습니다!

 

[ Spark Sql ]

◆  정형 데이터를 처리하기 위한 Spark의 패키지입니다. 여기서 정형 데이터란 데이터베이스에서 정해진 룰에 맞도록 저장되어 사용되는 데이터로 생각하시면 됩니다.

 

[ Spark Streaming ]

◆  실시간 데이터 스트림을 처리 가능하도록 해주는 스파크의 컴포넌트 입니다. 여기서 데이터 스트림이란 순차적으로 들어오는 데이터 흐름을 의미합니다.

 

[ MLlib ]

◆  Spark는 일반적인 머신러닝 기능을 갖고 있는 라이브러리를 함께 배포한다고 합니다. 그 라이브러리를 의미합니다.

 

[ Graph X ]

◆  Spark에서 그래프를 다루기 위한 라이브러리를 의미하며, 병렬 연산을 수행합니다.

 

 

 

[ Spark Core ]

◆  작업 스케줄링, 장애 복구, 메모리 관리 등 기본적인 기능을 구성하고 있으며, 탄력적인 분산 데이터 셋(RDD)을 정의하는 API 기반이 된다. 여기서 RDDSpark의 아주 중요한 역할을 하는 부분이라 다음에 자세히 알아보도록 하겠습니다.

 

[ Cluster Manager ]

Spark는 하나의 노드에서 수 많은 노드까지 최대한 효과적으로 성능을 확장 가능하도록 만들어졌습니다. 유연성을 극대화하며, 이를 달성하기 위해 하둠의 Yarn, Apach Mesos, Standalone Scheduler 등 다양한 클러스터 매니저 위에서 동작합니다.

 

 

오늘은 Apach Spark에 대해 간단하게 알아보았습니다.

나름 재미 있을 것 같기도하고..?

반응형

'Spark' 카테고리의 다른 글

[We-Co] groupBy(), groupByKey(), cogroup() - Spark  (0) 2021.08.24
[We-Co] RDD 생성  (0) 2021.08.11
[We-Co] SparkContext  (0) 2021.08.11
[We-Co] Word Count - Spark 예제  (2) 2021.08.06
[We-Co] Spark RDD  (0) 2021.07.23