본 게시물은 '제이펍' 출판사에서 출판한 니시다 케이스케 저자의 '빅데이터를 지탱하는 기술'이라는 도서를 읽고 요약한 내용으로, 블로그 게재에 대한 출판사의 동의를 얻었음을 알려드립니다.
- 도서 구매 링크 : https://product.kyobobook.co.kr/detail/S000001916916
Chapter 1. 빅데이터의 기초지식
1-1. [배경] 빅데이터의 장착
1) 분산 시스템에 의한 데이터 처리의 고속화 : 빅데이터의 취급하기 어려운 점을 극복한 두 가지 대표기술
- '빅데이터'라는 단어가 대중화된 것은 2011년~2022년에 걸쳐 많은 기업들이 데이터 처리에 분산시스템을 도입하기 시작했을 무렵
- 빅데이터의 취급이 어려운 이유
① 데이터의 분석 방법을 모른다. ② 데이터 처리에 수고와 시간이 걸린다. (본 책이 다루는 내용)
[ 빅데이터 기술의 요구 : Hadoop과 NoSQL의 대두 ]
- RDB로는 취급할 수 없을만큼 대량의 데이터가 쌓이게 되자 기존과는 다른 구조가 필요
→ 'Hadoop', 'NoSQL' 탄생 (그림 1.1)
[ NoSQL 데이터베이스 : 빈번한 읽기/쓰기 및 분산처리가 강점 ]
- 전통적인 RDB의 제약을 제거하는 것을 목표로 한 데이터베이스의 총칭
- NoSQL 종류
① Key - Value Store : 다수의 키와 값을 관련지어 저장
② Document Store : JSON과 같은 복잡한 데이터 구조를 저장
③ Wide-Column Store : 여러 키를 사용하여 높은 확장성을 제공
- 일반적으로 RDB보다 고속의 읽기, 쓰기가 가능하고 분산처리에 뛰어남
- 애플리케이션에서 온라인으로 접속하는 데이터베이스 (Hadoop : 모여진 데이터를 나중에 집계하는 것이 목적)
[ Hadoop : 다수의 컴퓨터에서 대량의 데이터 처리 ]
- 다수의 컴퓨터에서 대량의 데이터를 처리하기 위한 시스템
- 구글 분산처리 프레임워크 'MapReduce'를 참고하여 제작 (MapReduce의 구조는 5장 참고)
- 2009년에 SQL과 같은 쿼리언어를 Hadoop에서 실행하기 위한 소프트웨어로 'Hive'가 개발 → 이후 사용자 확대
[ Hadoop과 NoSQL 데이터베이스의 조합 : 현실적인 비용으로 대규모 데이터 처리 실현 ]
- 이 둘을 조합함으로써 NoSQL 데이터베이스에 기록하고 Hadoop으로 분산처리하기라는 흐름이 2011년 말까지 정착하게 되었고, 2012년부터 일반에 널리 퍼지게 되었음.
2) 분산 시스템의 비즈니스 이용 개척 - 데이터 웨어하우스와의 공존
- 분산시스템의 발전에 따라 DW 대신 Hadoop을 사용하는 경우가 증가 → 대량의 데이터를 보존/집계하기위해서 Hadoop과 Hive를 사용하게 되었고, 이 때 사용하게된 키워드가 바로 '빅데이터'
- 전통적인 DW에서도 대량의 데이터를 처리할 수 있으며, 오히려 Hadoop보다 우수한 부분이 많지만 일부 DW 제품은 HW+SW 통합 장비로 제공되었기에 용량 증설을 위해서는 HW를 교체해야 하는 등 확장성에 제한이 있었음.
- 따라서 가속도적으로 늘어나는 데이터의 처리는 Hadoop에 맡기고, 비교적 작은 데이터, 또는 중요한 데이터만을 데이터 웨어하우스에 넣는식으로 구분하게 되었음 (그림 1.2)
3) 직접 할 수 있는 데이터 분석 폭 확대 - 클라우스 서비스와 데이터 디스커버리로 가속하는 빅데이터의 활용
- 위와 비슷한 시기부터 클라우드 서비스의 보급에 의해 빅데이터의 활용이 증가하였고, '여러 컴퓨터에 분산 처리한다.'라는 점이 빅데이터의 특징이다.
- 이를 위한 하드웨어를 준비/관리하는 일이 간단하지 않은데, 클라우드 시대인 요즘은 시간단위로 필요한 자원을 확보할 수 있음
시 기 | 이벤트 | 서비스의 특징 |
2009년 4월 | Amazon Elastic MapReduce 발표 | 클라우드를 위한 Hadoop |
2010년 5월 | 구글 Big Query 발표 | 데이터 웨어하우스 |
2012년 10월 | Azure HDInsight | 클라우드를 위한 Hadoop |
2012년 11월 | Amazon Redshift 발표 | 데이터 웨어하우스 → 클라우드 상에서 DW를 작성하는 일이 대중화 |
[ (Column) 스몰 데이터와 빅데이터의 활용 : 스몰 데이터의 기술도 중요 ]
- 스몰 데이터 : 빅데이터와의 비교로 기존 기술을 이용해서 취급할 수 있는 작은데이터로, 레코드 수로는 약 수백만에서 수천만 건, 데이터 양으로 따지면 수 GB까지
- 스몰 데이터와(EXCEL, CSV파일 등) 빅데이터 처리방법을 적재적소로 구사하는 것이 이상적
[ 데이터 디스커버리의 기초지식 - 셀프서비스용 BI 도구 ]
> 데이터 디스커버리
- 대화형으로 DW에 저장된 데이터를 시각화하여 가치 있는 정보를 찾으려고 하는 프로세스
- 셀프서비스용 BI 도구(앞으로 본책에서는 BI도구라고 한다.) : 데이터 디스커버리를 위한 셀프서비스 용도의 BI 도구
> BI도구
- 데이터 웨어하우스와 조합되어 사용된 경영자용 시각화 시스템으로 셀프서비스용 BI도구는 이것을 개인도 도입할 수 있을 정도로 단순화한 것
> 데이터 처리 발전 현황
- Map Reduce보다 효율적인 데이터 처리 : Apache Spark(3장에서 상술)와 같은 새로운 분산 시스템용 프레임워크가 보급
- 배치처리 뿐만아니라 실시간 데이터 처리를 위한 시스템도 많이 출시, 대규모 데이터 분석 업무의 기술적 제약이 없어짐
'데이터 엔지니어링 > [도서] 빅데이터를 지탱하는 기술' 카테고리의 다른 글
1-2. 빅데이터 시대의 데이터 분석 기반 (1) | 2023.06.21 |
---|