소프트웨어 엔지니어 더 정확히 말하면 프로그래머의 수명은 몇 살까지일까? 외국에는 백발의 할아버지 프로그래머들도 활동한다지만, 우리나라는 40대 중반 정도가 평균인 것 같다. 그런데 내가 벌써 40대 중반을 넘어갔다.
처음 프로그래밍에 대해 열정적으로 빠져들었을 때, 참 많은 것을 짧은 시간에 배운 것 같다. 그렇게 한번 불꽃처럼 타오른 뒤 , 그 열정은 서서히 식어가고 있었다. 20년 동안 젊을 때 익혔던 기술과 지식으로 잘 버텨왔는데, 어느새 세상이 확 바뀌어 버리고 말았다.
몇년 전부터 빅데이터, Hadoop, Map-Reduce, Machine Learning, Deep Learning 등의 듣도보도 못한 용어들이 튀어나오기 시작하더니, 예전에는 구현되기 어려울 것이라 생각했던 지능적이고 고도화된 서비스들이 튀어나오기 시작했다. 그리고 이들 서비스들을 제공하는 업체들이 세계를 지배하게 되었다.
이제 우리 시절의 기술들은 그냥 기본인 것이 되었고, 오픈소스로 다 구현되어 마치 완공된 사회간접자본 같은 것이 되어 버렸다. 여기서 한단계 점프하지 못하면 정말로 치킨집으로 수렴되고 말 것이라는 두려움이 나를 지배하기 시작했다. 뭔가 하지 않으면 안되는데... 도대체 어디서 시작해야 한다는 말인가?
학생일 때 "열심히 공부하라"는 어른들의 잔소리가 그렇게 싫었는데, 나도 내 아들에게 그러고 있다. 정말 마흔이 넘어가니 뭘 공부한다는게 참 어렵다. 책도 한권 보기가 어려우니 말이다. 그래서 좀 강제적이고 동기부여가 되는 코스를 찾다가 발견한 것이 coursea.org 이다.
그 중에서 UC(University of California)에서 만든 "Big Data Specialization"라는 코스가 맘에 들었다. 영어 강의에 돈도 좀 들지만, 일정이 정해져 있고 수료하면 자격증도 준다고 하니 근사해 보인다. 게다가 퀴즈도 계속 봐야 하고, 실제 프로젝트 과제까지 진행해야 하는 5개 과정에 7개월에 이르는 대장정이기도 하다. 만일 내가 이것을 무사히 마친다면 치킨집으로 내몰리지 않을 것이고, 새로운 기회를 가질 수 있을지도 모른다.
어쨌든 강의를 들으면서 배웠던 내용들을 간단하게 정리해서 연작으로 남길까 한다. 그래야 다시 떠올릴 수 있을테니까.
빅데이터 소개
빅데이터가 하고자 하는 것은 "미래를 예측함으로서 현재의 문제를 해결"하는 것이다. 빅데이터를 얘기할 때는 비지니스와 기술 그리고 빅데이터 아키텍쳐까지 같이 봐야 한다.
이 코스에서는 빅데이터의 기술과 구성요소들, 빅데이터의 개념 그리고 빅데이터를 보다 실용적이고 쓸모있게 만드는 기반(Infrastructure)들을 위주로 알아본다. 빅데이터 기반에 있는 거대한 양의 데이터를 어떻게 분석할 수 있나? 다른 타입의 데이터로부터 어떻게 더 깊은 통찰(deeper insight)을 얻어낼 수 있나? 데이터의 실제 의미를 어떻게 알아낼 수 있나? 에 대한 해답을 얻을 수 있고, 이를 통해 데이터에 의한(data-driven) 의사결정과 행동을 할 수 있다.
빅데이터는 수집(Gather) - 저장(Store) - 가공(Manipulate) - 가치 발견(Untapped Value)의 프로세스를 가진다. 빅데이터의 수집은 센서, 인공위성, TV, 전자상거래, 소셜 미디어 등 다양한 곳에서 이루어지는데, 이들을 모아 연결(correlate)하여 저장한다. 저장된 데이터는 각종 분석과 예측을 통해 어떤 통찰(insight)로 귀결된다. 예를 들어 소비자의 구매 습관, 종 다양성 경향, 전염병 경로, 기후 예측 등의 활용 분야가 있다.
데이터는 얼마나 되고, 그걸 다룰 수 있나?
데이터는 다양한 소스로부터 발생하는데, 그것을 어떻게 보관할 수 있을까? 그런데 그것보다 더 어려운 문제는 그것을 어떻게 사용하느냐이다. 이것은 단순한 기술이 아니고 오래된 기술과 새로운 기술을 모두 필요로 한다.
그렇다면 데이터는 얼마나 많이 만들어지는 걸까? 놀라지 마라. 전세계 데이터 중 90% 이상은 최근 2년 동안 만들어진 것들이다. 전세계 데이터는 2009년 0.8 ZB(Zettabyte)였는데, 2020년에는 35 ZB가 될 것이라 예측된다. 빅데이터를 다루려면 테라를 넘어서서 페타, 엑사, 제타까지 사고를 확장시켜야 한다.(Giga - Tera - Peta - Exa - Zetta)
도대체 데이터 세계에 무슨 일이 있을길래 이렇게 폭증하게 되었을까? 요즘 증가되는 대부분의 데이터들은 체계가 없는 데이터(unstructured data)들이다.
지금까지 IT인들은 체계가 있는 데이터(structured data)들을 주로 다루어 왔다. RDBMS에 저장된 데이터들은 스키마라는 체계를 지키는 것들이다. 반면 체계가 없는 데이터들은 인간이 만들어내는 텍스트(페이스북, 트위터 등의 소셜미디어), 사진, 음성 등으로 매우 다양하다. 이제 우리들은 온실 속의 화초처럼 정형화된 데이터만을 다루는 것이 아니라, 거친 야생의 세계에서 마치 인간이 하듯 자연과 생명이 만들어내는 비정형 데이터들을 다루어야 하는 도전에 직면해 있다.
데이터의 소스는 GPS, 스마트 미터, 핸드폰, RFID, 결재단말기(Point of Sale)과 같은 정형적인 것 뿐 아니라 소셜 미디어로 대표되는 비정형 데이터로 크게 한번 점프를 했다. 생각해 보면 스마트폰이 나와 보급되기 시작한 것은 불과 5년밖에 되지 않는데, 사람들은 스마트폰을 들고 다님으로서 24시간 온라인에 연결되는 상태가 되었다. 언제든 알림을 받고, 트위터를 하고, 사진을 찍어 페이스북에 올린다. 심지어 그냥 걷기만 해도 위치 정보 데이터가 생성된다.
여기에 보태서 사물인터넷(internet of things)로 일컬어지는 흐름으로 인해, 각종 센서들이 중요 포인트마다 설치되고 정보가 수집되기 시작했는데 이 때문에 데이터들은 숫자면에서 비약적인 증가를 하게 되었다.
비정형 데이터의 폭증에 대해서 설명하는 근거로 "인터넷에서 1분 동안 일어나는 일(What happens on the internet in one minute)"이라는 주제를 많이 언급한다. 아래 그림과 같이 아주 많은 데이터들이 만들어 진다.
빙산의 일각(tip of the iceberg)도 빅데이터에서 많이 인용되는 그림이다. 깊은 통찰은 수면 아래의 거대한 빅데이터 더미에서 발견될 수 있다는 것이다.
코스의 처음인 만큼 유명한 프리젠테이션들을 인용해서 일반적인 내용들만 있다. 그렇다고 방심해서는 안된다. 이러다 갑자기 쑤욱 들어가는 수가 있다.
사실 이런 설명들은 아래 프리젠테이션을 보면 한방에 다 이해된다. 하용호씨의 멋진 프리젠테이션을 보자.
빅데이터가 하고자 하는 것은 "미래를 예측함으로서 현재의 문제를 해결"하는 것이다. 빅데이터를 얘기할 때는 비지니스와 기술 그리고 빅데이터 아키텍쳐까지 같이 봐야 한다.
이 코스에서는 빅데이터의 기술과 구성요소들, 빅데이터의 개념 그리고 빅데이터를 보다 실용적이고 쓸모있게 만드는 기반(Infrastructure)들을 위주로 알아본다. 빅데이터 기반에 있는 거대한 양의 데이터를 어떻게 분석할 수 있나? 다른 타입의 데이터로부터 어떻게 더 깊은 통찰(deeper insight)을 얻어낼 수 있나? 데이터의 실제 의미를 어떻게 알아낼 수 있나? 에 대한 해답을 얻을 수 있고, 이를 통해 데이터에 의한(data-driven) 의사결정과 행동을 할 수 있다.
빅데이터는 수집(Gather) - 저장(Store) - 가공(Manipulate) - 가치 발견(Untapped Value)의 프로세스를 가진다. 빅데이터의 수집은 센서, 인공위성, TV, 전자상거래, 소셜 미디어 등 다양한 곳에서 이루어지는데, 이들을 모아 연결(correlate)하여 저장한다. 저장된 데이터는 각종 분석과 예측을 통해 어떤 통찰(insight)로 귀결된다. 예를 들어 소비자의 구매 습관, 종 다양성 경향, 전염병 경로, 기후 예측 등의 활용 분야가 있다.
By Ron Kasabian, Intel, Unlocking the Intelligence in Big Data |
데이터는 얼마나 되고, 그걸 다룰 수 있나?
데이터는 다양한 소스로부터 발생하는데, 그것을 어떻게 보관할 수 있을까? 그런데 그것보다 더 어려운 문제는 그것을 어떻게 사용하느냐이다. 이것은 단순한 기술이 아니고 오래된 기술과 새로운 기술을 모두 필요로 한다.
By spinnakr.com |
By Jim Harris |
지금까지 IT인들은 체계가 있는 데이터(structured data)들을 주로 다루어 왔다. RDBMS에 저장된 데이터들은 스키마라는 체계를 지키는 것들이다. 반면 체계가 없는 데이터들은 인간이 만들어내는 텍스트(페이스북, 트위터 등의 소셜미디어), 사진, 음성 등으로 매우 다양하다. 이제 우리들은 온실 속의 화초처럼 정형화된 데이터만을 다루는 것이 아니라, 거친 야생의 세계에서 마치 인간이 하듯 자연과 생명이 만들어내는 비정형 데이터들을 다루어야 하는 도전에 직면해 있다.
By Fran Navarro, Oracle, Hardware and Software Engineered to Work Together |
여기에 보태서 사물인터넷(internet of things)로 일컬어지는 흐름으로 인해, 각종 센서들이 중요 포인트마다 설치되고 정보가 수집되기 시작했는데 이 때문에 데이터들은 숫자면에서 비약적인 증가를 하게 되었다.
By Sara Gardner, Hitachi, Capitalize on Big Data |
By Goodywebs |
By Business Analytics |
사실 이런 설명들은 아래 프리젠테이션을 보면 한방에 다 이해된다. 하용호씨의 멋진 프리젠테이션을 보자.
댓글 없음:
댓글 쓰기