# 기본 용어
- 데이터 웨어하우스 : 여러 소스 시스템들의 데이터를 한 군데로 구조화해 모으는 저장소
-> 기업의 의사결정 체계가 직관 기반에서 데이터 기반으로 변화
- 클라우드 데이터 플랫폼 : 모든 유형의 데이터를, 거의 무제한의 장소에서 비용 효과적인 클라우드 네이티브 방식으로 수집, 통합, 변환, 분석, 관리되는 데이터 플랫폼
-> 기존 방식의 문제 3가지 3V : 데이터 규모Volume, 데이터 다양성Variety, 데이터 속도Velocity
# 데이터 웨어하우스 관련 동향
1. SaaS의 활용이 폭발적으로 증가. 비정형, 반정형 유형의 데이터가 생성됨
2. 마이크로서비스 아키텍처로의 변환
3. 기존 정형 데이터 분석만으로는 얻을 수 없는 데이터를 얻기 위해 원시 데이터를 직접 액세스하는 경향이 늘고 있다
# 전통적인 데이터 웨어하우스의 한계
1. 데이터의 다양성
데이터 웨어하우스는 정형화된 데이터만 다루도록 설계돼 있고, SaaS 공급 업체들의 예고 없는 스키마 변경에 유연하게 대응할 수 있는 구조를 갖고 있지 않다. JSON 형식으로 API를 제공하는 SaaS 업체가 늘어나고 있지만, 반정형 형태이기 때문에 특별한 예고 없이 스키마의 변경이 동반된다. 기존 데이터 웨어하우스를 활용해 데이터를 처리할 때에는 반드시 웨어하우스에서 제공하는 SQL 엔진과 저장 프로시저 언어만을 사용해야하는 제약이 있다. 이런한 구조적인 특성은 새로운 데이터 형식이나 새로운 처리 방식이 필요한 경우 한계점으로 작용한다. SQL은 쿼리 언어로는 유수하지만 ETL 툴이 효율적으로 처리할 수 있는 데이터 형식의 유형에 한계가 있기도 하다. SQL에서 테스팅, 추상화, 패키징, 공통 로직을 위한 라이브러리 등을 제공하지 않기 때문이다.
- ETL : Extract, Transform, Load
2. 데이터 규모
급증하는 데이터 규모를 기존 관계형 데이터 웨어하우스에서 수용하려면 더 큰 용량의 CPU, MEM, DISK를 가진 서버가 필요하다. 서버와 스토리지 증설을 쉽게 결정할 수 없다.
3. 데이터 속도
실시간 분석 요구들이 늘어나고 있다. 수집한 스트리밍 데이터를 처리해야하는 필요성이 증가하고 있을 뿐만 아니라, 거의 준 실시간으로 분석해야 하는 수요도 증가하고 있다.
기존 데이터 웨어하수으는 배치 중심 처리 방식이다. 주로 야간에 데이터를 스테이징 영역에 적재한 후, 비즈니스 로직을 적용하고 그 결과를 테이블에 적재했다. 스트리밍 데이터는 파일 형식의 데이터보다 빠르게 처리 가능하지만, 데이터가 도당할 때마다 각각의 데이터를 처리해야만 한다.
# 인공지능과 머신러닝의 부상
인공지능과 머신러닝이 부상하면서 데이터의 3가지 V가 화두로 떠올랐다. 머신러닝 모델을 진행하려면 데이터가 반드시 필요한데, 가능한 많은 양의 데이터를 확보해야 한다. 데이터 과학자가 모델을개발할 때 데이터 웨어하우스처럼 정형화되고 큐레이션된 데이터를 필요로 하기도 하지만, 데이터 웨어하우스에서는 다루지 못하는 다양항 유형의 원시 소스 파일 데이터도 필요하다.
데이터 과학자들에게 다양한 유형의 대용량 데이터를 언제든지 액세스할 수 있게 하면서도 다른 사용자들의 작업에 영향을 덜 주는 방법을 찾을 수 있따면, 이들이 훨씬 고도화된 분석을 할 수 있는 환경을 제공할 뿐만 아니라, 잘 활용하면 비용 절감까지 기대할 수 있을 것이다.
# 데이터 레이크
- 데이터 레이크 : 나중에 사용하기 위해 가공하지 않은 방대한 양의 데이터를 한 곳에 모아둔 스토리지 저장소
데이터 레이크 개념은 기존 데이터 웨어하우스가 처리할 수 없는 데이터 형식의 증가, 데이터 규모, 데이터 속도의 증가를 처리할 수 있는 방법이 절실히 필요한 상황에서 출현했다. 데이터 레이크는 정형 ,비정형, 반정형, 바이너리 등 모든 유형의 데이터를 다양한 소스로부터 가져와 보관할 수 있는 장소였는데, 확장성 있게 데이터를 저장, 처리할 수 있었다.
## 하둡
데이터 레이크는 하둡이라는 오픈 소스 소프트웨어 유틸리티 생태계와 동의어처럼 사용됐다. 하둡은 분산 스토리지 기술과 수많은 컴퓨팅 자원들의 네트워킹을 묶는 기술 기반으로 빅데이터 처리 소프트웨어 프레임워크를 제공했다. 이를 통해 대량 데이터 처리와 컴퓨팅 자원을 필요로하는 문제를 해결하는데 널리 사용됐다.
### 하둡의 특징
1. 데이터의 다양성 : 데이터 웨어하우스는 schema on write 방식임에 반해 하둡은 schema-on-read 방식을 사용한다. 이는 어떤 형시의 파일도 시스템에 즉시 저장할 수 있으며, 나중에 처리된다는 것을 의미한다. 정형 데이터만 처리할 수 있었던 데이터 웨어하우스와 다르게 하둡을 활용하면 거의 모든 유형의 데이터를 처리할 수 있다.
2. 데이터의 규모 : 하둡 시스템은 저렴한 분산 범용 하드웨어를 활용한 분산 서버, 분산 스토리지 구조다. 필요 시 언제든지 적은 비용으로 스로리지와 서버를 증설할 수 있다. 스토리지 비용도 절감할 수 있고, 많은 서버 간에 워크로드를 분산시킬수 있어서 쉽고 빠르게 대용량의 데이터를 처리할 수 있다.
3. 데이터의 속도 : 스트리밍이나 실시간 처리를 해야 할 경우, 하둡을 활용하면 스트리밍 데이터를 수집 ,저장, 처리하기 용이하며 비용도 저렴하다. 여기에 하이브, 맵리듀스, 스파크 같은 제품을 함꼐 활용해 약간의 코딩으로 실시간 처리도 추가할 수 있다.
하둡을 통해 저렴한 방식으로 방대하고 다양한 유형의 데이터를 저장하고 처리할 수 있게 됐으며, 오늘날 데이터 자산의 다양성 ,규모, 속도의 증가를 다룰 수 있는 솔루션을 만들어가는데 중요한 발판이 됐다. 거의 과거 10년 동안 데이터 센터의 데이터 레이크에 대한 실질적인 표준이었다.
### 하둡의 단점
1. 데이터 센터에 여러 가지 컴포넌트들이 통합된 매우 복잡한 시스템이다. 유지보수하기가 쉽지 않기 때문에 시스템 운영을 안정적으로 하기 위해서는 고도의 기술역량을 가진 엔지니어 팀이 필요하다.
2. 데이터를 활용하는 사용자들에게는 쉬운 시스템이 아니다.
3. 사용하기 매우 유연해보이지만, 반대로 각 컴포넌트 간 결합력이 약하다. 그래서 잘 사용하려면 많은 노력이 필요하다. 언어, 라이브러리, 유틸리티들을 선택해 하둡 프레임워크에 설치해야 했다.
4. 스토리지와 컴퓨팅이 분리돼 있지 않다. 스토리지와 컴퓨팅을 동일한 하드웨어상에 구성할수 있지만 고정된 비율로 구성해야만 효과ㅓㄱ이다. 비용 관점에서의 제약이 되었다.
5. 시스템을 확장하기 위해 하드웨어를 추가 및 변경하는 작업은 수개월이 걸린다.
이러한 장점은 살리고, 단점을 보완해서 시스템 설계자들에게 유연성을 훨씬 더 가져다주는 솔루션이 클라우드에 등장했다.
'DEV > Data Platform' 카테고리의 다른 글
데이터 플랫폼 설계와 구축 | 1장 데이터 플랫폼 소개 (0) | 2024.03.30 |
---|---|
데이터 플랫폼 설계와 구축 | 03. 빅3의 활용과 확대 | 수집, 저장, 처리, 메타데이터 계층 설계시 고려사항 (1) | 2023.11.06 |
데이터 플랫폼 설계와 구축 | 02. 데이터 웨어하우스만이 아닌 데이터 플랫폼인 이유 | 데이터 플랫폼에서의 데이터 수집,처리,엑세스 방식 (1) | 2023.11.04 |
데이터 플랫폼 설계와 구축 | 02. 데이터 웨어하우스만이 아닌 데이터 플랫폼인 이유 | 데이터 웨어하우스와 데이터 플랫폼의 차이 (1) | 2023.11.01 |
데이터 플랫폼 설계와 구축 | 01. 데이터 플랫폼 소개 | 하둡 이후 퍼블릭 클라우드의 활용 (1) | 2023.10.31 |