Hadoop
오픈소스 빅데이터 처리 플랫폼이며, 분산 파일 시스템인 HDFS와 분산 병렬 처리 시스템인 Map Reduce의 두가지 핵심기능을 제공한다.
데이터 처리, 분석, 시각화 등 다양한 기능을 가진 툴들과 함께 시스템을 이루는 경우가 많은데, 이를 Hadoop Ecosystem이라 부른다.
결함 허용의 특징이 있으며, 데이터 블록의 복사본을 중복 저장하고 유지한다.
Big Query
구글 클라우드 스토리지와 함께 사용하는 대용량 데이터 처리 엔진이다. 클라우드 서비스로, 자체적인 SW 설치나 운용이 필요 없다.
분석할 데이터를 구글 시스템에게 전송한 후, BigQuery API를 사용하여 질의하는 방식이다. 최대 2TB까지 무료로 데이터를 업로드하고 분석할 수 있다.
SQL 언어를 사용하며 구글 클라우드 인프라를 통한 대규모 지원과 빠른 성능을 가진다.
Spark
UC버클리의 AMP랩에서 개발한 In-Memory방식의 분산 처리 시스템이다. 메모리 사용으로 반복적 작업이나 스트리밍 데이터를 효율적으로 처리한다. 이러한 특성 떄문에, 머신러닝 알고리즘을 통한 처리에 효율적이다.
배치 처리, 스트리밍 처리가 가능하며 SQL 기반 쿼리 수행이 가능하다.
스칼라 쉘을 제공하여 사용자와 대화형으로 데이터를 관리할 수 있다.
스칼라 언어로 구현되어있지만 파이썬, 자바 등의 다양한 언어를 지원하는 SDK(Software Development Kit)를 가지고 있다. HDFS, Amazon S3, Apache Cassandra 등 다양한 데이터 스토리지와 연동이 가능하다.
https://www.redhat.com/ko/topics/cloud-native-apps/what-is-SDK
SDK의 개념, 플랫폼, 차이점, 개발, 사용언어 및 사용법
SDK는 하드웨어 플랫폼, 운영 체제(OS)나 프로그래밍 언어 개발사가 제공하는 툴이며, 이 툴을 사용하여 다른 플랫폼, 시스템, 언어에 따라 애플리케이션을 개발합니다.
www.redhat.com
Python Library
데이터처리와 머신러닝을 위한 강력한 파이썬 패키지가 많이 개발되었다.
Pandas
데이터 프레임 추상화 객체를 사용하며 데이터 처리 및 분석을 할 수 있다.
Numpy
N차원 배열 객체, 선형대수, 푸리에 변환 등 강력한 기능을 제공한다.
SciPy
연산과 최적화를 수행하는 핵심 라이브러리이다.
matplotlib
데이터 시각화에 주로 사용되는 2D 차트 생성에 활용된다.
NLTK
텍스트 마이닝과 자연어 처리에 사용된다.
R
통계 분석, 예측 분석 및 시각화를 위한 개발환경을 제공하는 언어이다.
대화식 프로그램 수행, 자유로운 분석환경 제공, 패키지를 추가함으로써 기능 확장 가능, 강력한 그래픽 지원, 객체지향 방법론 지원, 다양한 사용자 운영환경(Windows, Linux, MacOS 등) 지원의 특징이 있다.
'데이터 엔지니어링 > 빅데이터' 카테고리의 다른 글
빅데이터 처리 시스템 HW (0) | 2022.05.09 |
---|---|
빅데이터 처리 방식 (0) | 2022.05.02 |
빅데이터 처리 인프라 (0) | 2022.05.02 |
빅데이터 처리 프로세스 (0) | 2022.05.02 |
Hadoop 클러스터 동작방식 (0) | 2022.05.02 |