-
Spark 설치 과정 - hadoop, hive, mariadb 의 관계CS 2022. 6. 12. 16:19
docker에 spark 설치를 위해 다른 것들을 설치하는 과정을 거쳤는데, 어떠한 역할인지 간단 정리해본다. (DS의 관점에서 활용도를 정리)
원래 spark만 설치해도 되는데, hive 와 spark를 연결하고 싶었기 때문이다. (db와 spark 연결)
우선 비구조화된 데이터를 열구조향 데이터로 전환하는 것이 필요한데 이것을 수행하는게 hadoop/spark
- hadoop : 대규모 분산시스템을 구축하기 위한 플랫폼.
docker에서 여러 node를 만드는데, 이를 연결해주는 역할인 것 같다.
- hive: 쿼리 엔진(쿼리를 map reduce 프로그램으로 바꿔줌)
단, 배치 처리 등에 최적화 되어있음. 리소스를 고려하는 대신, 배치 처리에 적합하기 때문에 더 대용량 가능하나, 느림
- mariadb : 데이터 저장소
하이브에서 데이터 처리 후 만들어지는 데이터를 저장할 수 있는 저장소.
(-presto : 대화형의 쿼리엔진.
배치 작업이 아닌 대화형이기 때문에 가용가능한 리소스를 한번에 사용)
- spark : 하둡과 독립되어, mapreduce 대체하는 분산시스템을 활용한 프로그래밍 환경
가능한 많은 양을 메모리에 올리고, 디스크에는 올리지 않음.
- 대규모 배치 처리 및 대화형 쿼리 가능, 실시간 스트리밍도 가능함
- hive의 데이터 구조화 + presto SQL 실행
- hadoop vs spark
- 하둡과 스파크
- -https://www.ciokorea.com/news/27798
- 하둡은 분산 스토리지. 노드에 분산
- 스파크는 인메모리 컴퓨팅 하드디스크 대신 메모리에서
Reference :https://seoyoungh.github.io/data-science/distribute-system-1/
'CS' 카테고리의 다른 글
yaml 파일이란? (0) 2022.07.18 [linux] root directory ('/') vs home directory ('~') (0) 2022.07.03 jenkins 에서 작업한 파일을 github 연동하기 (0) 2022.06.28 python 실행 vs module 실행/ jupyter notebook 실행 vs shell 실행 self check (0) 2022.06.17 Airflow vs. Jenkins vs. cron (0) 2022.06.06