[빅데이터 기초1] - 빅데이터의 배경, 정의 그리고 특성

- 들어가며  

  안녕하세요. 이번포스팅에서는 빅데이터의 배경과 빅데이터란 무엇인지 그 정의와 특성에 대해서 알아보도록 하겠습니다. 작성된 글은 제가 학교에서 배운내용들과 관련 서적들을 읽으면서 정리한 것들을 기반으로 저의 생각을 곁들여서 정리해보았습니다.

  비전공자분들도 편하게 읽으실 수 있도록 최대한 풀어서 설명하기 때문에 간단한 내용이지만 글이 길어 질 수 있다는 점 양해부탁드릴게요!

  우선 빅데이터는 DB를 빼놓고는 얘기할 수 없기 때문에 DB에 관한 내용을 알고 계신분들은 지금 이 글을 읽으시는데에 문제가 없겠지만 DB를 모르는 분들을 위해서 간단하게 설명을 드리자면

 DB(Database)란 데이터들을 일정하게 규격화하여 모아놓은것(마치 엑셀처럼)이라고 생각하시고 글을 읽어주시면 될 것 같습니다. 그리고 이 DB관련된 용어들로는 DBMS, SQL 등이 있는데요.

 DBMS(DataBaseManagementSystem)는 데이터베이스를 관리하기위한 툴(tools)이라고 생각하시면 좋겠습니다.

SQL은 DBMS의 구성중의 하나라고 볼 수 있는데요, DB에 저장된 데이터들을 조회하거나 새로운 데이터를 삽입하거나 또는 필요한 데이터를 추출하는 등 DBMS가 DB에게 이와 같이 조회,삽입,추출과 같은 작업 요청을 보낼 때 사용하기위한 질의어 즉, Language입니다.

그럼 DB에 관한 간단한 설명을 드렸으니 이제 빅데이터에 대한 이야기를 하도록 하겠습니다.

1. 빅데이터의 배경

 1990년 이후 인터넷이 확산되면서 정형데이터와 비정형 데이터가 무수히 발생하면서 정보 홍수개념이 등장

이것이 오늘날의 빅데이터 개념으로 이어졌습니다. 당연히 빅데이터는 갑자기 나온 신기술 같은 것이 아닙니다.

 기존의 데이터를 저장하고 관리하기 위해서 다루고 있던 도구들 즉, 데이터베이스에서 파생된 각 기술인 SQL이나 DBMS, DW, ETL 등과 같은 기존의 데이터 저장,처리 관련기술에 컴퓨터공학, 통계, 수학이 결합하여 경영, 과학, 정치, 문화 등 사회전반에 영향을 미치는 것을 빅데이터라고 할 수 있기 때문에 다학적인 개념입니다.

 컴퓨터 및 스마트 기기의 사용이 보편화되어 다양한 곳에서 엄청난 양의 데이터가 생성되는데

* 구글, SNS 등 인터넷 서비스 활용 정보, 페이스북 등 매달 20억건 이상의 사진

* 통화 및 문자메시지, 다양한 스마트 센서로부터 발생하는 데이터

* 새로운 IT 기술 및 기기의 출현(RFID, NFC 리더기, 네비게이션 등)으로부터 발생하는 데이터

 이외에도 교통분야에서는 차세대 ICT 기술도입으로 발생하는 무수한 데이터생산 등등

데이터 홍수속에서 살고 있다고해도 과언이 아닙니다.

그에 따라 디지털 데이터단위도 그 사용폭이 넓어졌습니다.

 컴퓨터는 2진수를 처리하기 때문에 가장 작은 데이터의 단위는 당연히 0과 1로만 표현하는 bit 단위가 가장작고

8bit가 모이면 1Byte(바이트)

1024byte가 모이면 1KB (킬로바이트)

1024kb가 모이면 1MB (메가바이트)

1024MB가 모이면 1GB (기가바이트)

1024GB가 모이면 1TB (테라바이트)

 

 이렇게 TB단위 까지는 우리가 컴퓨터에 조금 관심있거나 컴퓨터에 용량이 크신분들은 한번쯤은 보셨을 법한 단위입니다.

 하지만 위에서 언급한 것처럼 데이터가 셀 수 없을 정도로 많아지면서 TB정도로는 표현하기 힘든 만큼의 양인데요

테라 바이트단위 이후의 단위를 보면 다음과 같습니다.

페타 바이트(PetaByte) 2^50 바이트

엑사 바이트(ExaByte) 2^60 바이트

제타 바이트(ZettaByte) 2^70 바이트

요타 바이트(YottaByte) 2^80 바이트

2. 빅데이터의 정의

 물론 빅데이터가 단순히 많은 양의 데이터를 의미하는 것은 당연히 아닙니다.

빅데이터에 대해서 이렇다 할 사전적 정의는 없지만 이제까지 제가 공부하면서 읽었던 자료들을 되새기며 정의한다면 다음과 같이 정의 할 수 있습니다.

 "데이터양의 증가 데이터 종류의 다양성 그리고 데이터의 생산속도처리속도의 증가 때문에

기존의 있던 저장, 관리, 분석기법으로는 데이터를 처리하는데 한계에 부딪혀 이를 해결하기 위한 새로운 기술과 인프라 및 인적인프라 등을 빅데이터라 한다." 라고 정의하는게 어떨까 합니다.

 IDC에서는 "다양한 종류의 대규모 데이터로부터 저렴한 비용으로 가치를 추출하고, 데이터의 빠른 수집, 발굴, 분석을 지원하도록 고안된 차세대 기술 및 아키텍처"라고 정의한바도 있습니다.

3. 빅데이터의 특성

 빅데이터의 특성은 제가 공부했던 바로는 5개정도로 볼 수 있었습니다.

흔히들 3V와 5V를 말하는데 이 글에서는 5V에 대해서 알아보도록 하겠습니다.

1. 데이터의 양

 : "일반적으로 수십 테라바이트에서 혹은 수십 페타바이트 이상의 범위에 해당하는 것이 빅데이터의 특징이다"라고 정의 해놓은 글을 본적이 있습니다. 데이터의 양이 엄청나서 한대의 서버, 한대의 컴퓨터가지고는 도저히 저장하거나 처리할 수 없는 양의 데이터가 바로 빅데이터가 가지는 양적인 특성을 보여줍니다.

2. 데이터의 속도

 : 오늘날 디지털 데이터는 매우 빠르게 생성됩니다. 여러분이 지금 핸드폰을 꺼내서 제 블로그에 들어오신 것만으로도 벌써 웹에 log 데이터, 쿠키 등 사용기록과 관련된 데이터가 생겼습니다. 이렇듯 데이터의 생성속도가 매우 빠르기 때문에 데이터의 수집, 저장, 분석 등이 실시간으로 처리되어야 한다는 것이 빅데이터의 속도면에서의 특징이라고 볼 수 있습니다.

3. 데이터의 종류

 : 데이터는 정형화 정도의 따라 정형, 반정형, 비정형 데이터로 나눌 수 있습니다.

 정형데이터는 엑셀의 시트에 있는 표처럼 고정된 필드에 저장될 수 있는 데이터를 의미하며, 일정한 형식, 기준을 갖추어서 저장할 수 있는 데이터들을 말합니다.

 예를 들면, KT나 SKT와 같은 이동통신사에서는 휴대폰 단말기의 통화건수, 통화시간과 같은 정형데이터를 통해서 통신요금을 산출할 수 있는 것처럼 수치데이터를 데이터베이스에 저장하고있는데요. 바로 이러한 수치데이터들은 정형 데이터의 예시라고 볼 수 있습니다.

 물론 문자로된 데이터도 일정한 형식을 갖춘다면 예를 들어

엑셀에 '국가'라는 필드(열:Column)가 있고 그 필드에는 한글로만 적힌 국가명만 저장한 데이터라면 그 또한 일정한 형식과 기준에 맞추어 저장한 데이터이므로 정형데이터라고 할 수 있습니다.

 정형데이터는 지금까지 기업에서 많이 다루고 있는 DB에 저장된 데이터, 엑셀에 저장된 데이터 이러한 데이터들을 정형데이터라고 보시면 될 것 같습니다.

 

 반정형 데이터는 고정된 필드로 저장되지는 않지만, XML이나 HTML 같이 메타데이터나 스키마등을 포함한 데이터라고 보시면 될 것 같습니다. (메타데이터 : 데이터를 설명하거나 관리 하기위한 데이터)

XML 파일

  위 그림에서 볼 수 있는 것처럼 XML파일을 엑셀에 저장하려고 한다고 생각해봅시다.

어떻게 저장해야할까요? XML을 공부한다음에 각 XML파일의 내용들을 확인하고 파일들을 식별할 수 있는 기준을 찾아서 그 기준을 필드로(Columne)으로 지정해서 그 필드 값에 해당 XML의 모든 내용을 복붙해서 넣어야할까요? 그렇게 한다면 상당히 비효율적이고 그걸 의미있게 사용할 수 있을지도 의문입니다.

 이렇듯 엑셀과 같은 어떠한 필드에 저장하기 어려운 데이터들이지만 XML문서는 일정한 규칙(xml문서는 마크업언어 문법에 따라 작성되었기 때문에)에 의해서 작성된 문서이기 때문에 정형데이터 보다는 덜 정형화 되어있다는 뜻에서 반정형데이터라고합니다. 그래서 정형데이터와는 다른 DB종류를 사용하죠.

 마지막으로 비정형 데이터는 우리가 페이스북이나 트위터 등 SNS에 게시한 글, 블로그에 게시한 글, 사진, 동영상, 댓글, DM으로 나눈 대화, 카톡메시지, 스마트폰 GPS 위치정보 등 고정된 필드에 형식을 갖춰서 집어 넣을 수 없는 종류의 데이터들을 비정형데이터라고 하며 빅데이터에서는 이 비정형데이터가 주관심사입니다.

 여기서 의문이 드실 수 있는데 "아까 분명히 문자데이터는 정형 데이터가 될 수 있다 했는데 facebook, twitter등 SNS의 게시글이나 댓글은 문자아냐?" 라고 생각하실 수 있습니다.

 하지만 다시 설명드리자면, 정형데이터에서 '국가'라는 필드에 한글로된 국가명만와야한다는 일정한 규칙과 기준이 있었습니다. 

그런데 우리가 SNS에 올리는 댓글과 게시글들을 엑셀에 일정한 규칙과 기준에 따라 저장할 수 있을까요?

 

SNS에 올리는 댓글이나 게시글은 일정한 규칙과 기준이 없기 때문에

일정한 규칙과 기준에 따라 엑셀에 저장하려고 한다면 그 규칙과 기준을 세우는 것이 보통 쉽지 않을겁니다.

 

따라서 이런 비정형데이터를 저장하는 다른 방법을 사용해야겠죠.

 이러한 정형, 반정형, 비정형 데이터를 구분하는 기준은 DB화하기 얼마나 간단한가?로도 볼 수 있겠습니다.

정형데이터는 데이터가 형식과 규칙을 갖추었기 때문에 저장하기 편해서 기존의 SQL DB로도 DB화 가능한 반면 반정형 데이터는 SQL DB로 DB화 시키기는 어렵기 때문에 다른 DB종류를 사용하며,

그 반정형 데이터들을 다루는 DB로도 DB화시키기 어려운 비정형 데이터들이 존재하는 것입니다.

4. 데이터의 정확성

 : 빅데이터의 데이터는 현황분석 보다는 미래 예측, 판별 결과의 정확성등에 초점을 두는 데이터들이 많기 때문에 데이터의 품질이 좋아야 하는데 워낙 데이터의 종류가 다양하고 특히 비정형 데이터들에 대한 데이터 품질을 높이는데 어려움을 동반하기 때문에 이러한 측면에서 볼 때 데이터의 품질이 중요합니다.

5. 데이터의 가치

 : 빅데이터는 80%이상이 비정형 데이터인데 이러한 데이터들로부터 데이터의 가치를 파악하는 것이 중요해졌지만 데이터 전체를 파악하기는 어렵기 때문에 일정한 패턴을 파악하고 의미를 분석하여 가치를 파악하는 것이 중요해졌습니다.

 여기까지 빅데이터의 배경과 정의 그리고 빅데이터의 특징에 대해서 알아보았습니다.

이를 통해 빅데이터가 무엇인지 어떠한 특징을 가지고 있는지 알게 되었는데요.

 

그렇다면 이러한 빅데이터들을 어디서 어떻게 구해서 어떻게 처리하고 분석해서 쓸모가 있게,

즉 데이터속에서 어떻게 가치를 찾을 수 있는지 그 과정과 관련된 기술들에 알아보는게 필요하겠죠?​

다음 포스팅부터는 이러한 빅데이터가 어떻게 처리되어지고 관련기술들은 무엇인지에 대해서 알아보도록 하겠습니다.

 그래서 이어지는 빅데이터 기초2 포스팅에서는 빅데이터의 처리과정과 빅데이터의 수집방법론에 대해서 살펴보도록 하겠습니다.

이번 포스팅은 여기서 마무리짓고, 추가적으로 글이 이런점에서 개선되었으면 좋겠다

아니면 어떤 내용이 더 궁금하다, 이러한 부분이 부족한거 같다라는 피드백을 주시면

글을 개선하는데 큰 도움이 될 것 같습니다.

아무튼 모쪼록 이글이 도움이 되셨으면 좋겠습니다.