본문 바로가기
IT 상식

IT 상식 : 데이터가 만들어지는 3가지 방식

by 리플러스 2021. 2. 2.
728x90

 

UI 디자인과 설계를 다루는 사람이라면, 데이터에 대한 이야기를 많이 하게됩니다. 다만 우리가 사용하는 데이터와, 실제로 보이지 않는 지점에 있는 데이터. 이 두가지를 구분하는건 쉬운 일이 아닙니다. 대체 우리가 다루는 데이터라는건 어떻게 만들어지는걸까요? 이 부분을 굳이 나누자면 크게 세가지 정도가 될 수 있을 것 같습니다.

 

-  크롤링, API 연동을 통해 외부에서 가져온 데이터
-  사용자가 직접 입력해 만들어낸 데이터
-  기존의 데이터들을 알고리즘, 필터링을 통해 가공한 데이터

 

 

1-1. 크롤링을 통해 봇이나, 사람이 직접 긁어온 데이터

대부분의 서비스는 사용자가 알고싶어하는 정보를 보여주는 용도로 사용됩니다. 예를 들어 주가 가격이나, 환율, 오늘의 날씨 등과 같은 정보들은. 항상 새로운 정보를 생산해내는 곳이 따로 있습니다. 환율은 국가별 중앙은행이 주로 다루고. 주가는 국가별 거래소가 다루며. 날씨는 날씨 전문 기업이나, 기상청 등의 기관들이 데이터를 생산합니다. 이 내용을 다시 가져와, 사이트에서 재배치, 편집해 보여주는 방식이죠. 그래서 데이터의 내용에 사용자가 영향을 줄 수 없거나. 거의 내용을 확인하는 정도로 사용되는게 대부분입니다. 

 

크롤링 : 봇이 사이트의 내용을 훑어서, 원하는 내용만 가져오게 만드는 방식

 

여기서 첫번째 방식인 크롤링은 웹사이트에 봇이나, 사람이 직접 접속해, 표기된 내용을 복사해오는 방식을 이야기합니다. 예를 들어 포탈 사이트에서 정보를 가져와, 다른 사람들에게 계속 보여주고싶은데. 아직 서비스 초기라 이 서비스가 실제로 성공할 수 있을지 아닐지 모른다면. 비용을 들여 API를 연결하는 것보다, 크롤링으로 단순하게 구현하는 것도 한가지 방법입니다.

 

물론 API를 별도로 제공하지 않는 서비스의 데이터나, 마케팅 목적으로 크롤링을 사용하는 경우도 있습니다. 이런 경우 데이터를 여러곳에서 가져와, 한 곳에 모아서 새로운 데이터를 만들어내기도 합니다. 이런 크롤링 봇은 파이썬 등의 언어를 통해 손쉽게 구현할 수 있고. 실제 다양한 서비스의 초기 버전에서 자주 사용되는 편입니다.

 

좀 더 원시적인 방법으로는. 매일 개별 사이트에 직접 들어가 스크린샷을 찍거나. 주어진 값을 직접 엑셀시트 등에 입력해 데이터를 모으는 방식도 있습니다. 실제 많은 서비스들이 초기에는 이런 원시적 방식으로 데이터를 구축하고. 이후에 점차 표준화된 API를 구축하는 경우가 많습니다. (예 : 가계부, 영수증 관련 정보)

 

 

 

 

1-2. API를 통해 가져오는 데이터

API라는건 간단 히 말해서, 복잡한 정보를 단순하게 연결해주는 정보 창구입니다. 다른 사람이 만들어둔 서비스에서, 내가 원하는 정보만 끌어다가 사용할 수 있게 오픈해놓은 것이 API라고 생각하시면 됩니다. 예를 들어 우리가 지도 모듈을 서비스에서 넣고싶다고 하면. 우리는 지도를 처음부터 새로 만들어야할까요? 아닙니다. 그냥 그 나라에서 사용할 수 있는 지도 서비스를 끌어다가 가져오면 됩니다. 이런 식으로 다른 사람이나, 기관, 단체가 만들어둔 서비스에서. 내가 원하는 정보만 끌어다 사용하는 것이 API 방식입니다.

 

API 방식은 크게 공개 API와, 비공개 API가 있습니다. 말 그대로 '우리는 이 서비스 정보를 우리만 사용할거야. 남들에겐 공개하지 않아' 라고 말하는 곳도 있고. 금액을 내거나, 일정 조건을 채우면 공개해줄게. 라고 말하는 곳도 있다는 겁니다. 위에서 다룬 크롤링이 필요해지는 이유도. 이런 데이터를 공개하는 조건이 까다롭거나, 비용이 비쌀 경우. 혹은 하루에 한번 정도만 체크하면 되는 데이터의 경우. 굳이 API를 연결하지 않고 크롤링으로 대체를 하기도 합니다.

 

API는 생각보다 굉장히 다양한 기능이 있는데. 국가에서 공개하는 공공 데이터에서부터 시작해서. 도로 및 교통 상황, 지도, 환율이나 본인인증, 등. 거의 대부분의 정보들이 API화 되어있습니다. 그래서 이런 데이터들을 잘 모아 꾸리기만 해도 훌륭한 서비스를 만들 수 있습니다. 물론 이런 데이터들은 API를 공개한 쪽이 주인이기 때문에, 데이터 공개 범위를 마음대로 정할 수가 없습니다. 심지어 그들이 내부 정책을 바꾸거나. 서비스를 중단하는 경우, 더이상 데이터를 얻을 수 없다는 위험성도 안고 있습니다.

 

 

 

 

2. 사용자가 직접 만들어내는 데이터

세상에 있는 대부분의 서비스들은 주어진 정보를 보기만 하는 서비스들입니다. 개인이 아니라 기관이나, 단체, 기업 등에서 만들어내는 데이터를 갖고 결과를 보여주죠. 그러나 SNS나 블로그 같은 서비스들은 상황이 다릅니다. 기업은 플랫폼만 제공할 뿐. 실제 데이터는 사용자들이 직접 만들어내죠. 글이나 사진을 찍어 내용을 작성하고, 댓글을 달며, 내용을 공유해 자신의 공간을 채워나갑니다. 

 

SNS 서비스 : 사용자가 직접 데이터를 입력하는 대표적인 사례 

 

설문조사 서비스나, 초기의 가계부 같이. 사용자가 직접 데이터를 입력하는 방식으로 이뤄지는 서비스들이 있습니다. 물론 시간이 갈수록 자동화 되거나, AI 기반으로 대체되고는 있지만. 새로운 서비스가 나오는 상황일수록, 사용자의 입력은 꼭 필요합니다. 이런 과정을 돕기 위해 CMS (컨텐츠 제작관리 시스템 )나, 편집기 (Editor) 개념의 모듈형 서비스들도 등장하게 됩니다. 이런 편집 시스템은 초기에는 전문가들이 다루던 전문 도구들이었지만. 시간이 지나면서 일반 사용자들에게 더 쉽게 배포되기 위해 개발되고있습니다.

 

좀 더 깊게 들어가면, 우리가 구글 검색을 하거나. 개별 서비스를 사용하면서 남은 이용기록 등도, 사용자가 직접 만들어낸 데이터입니다. 물론 사용자가 선택한건 몇가지 옵션과, 실제 이용한 서비스 후기를 남기는 정도겠지만. 그 과정에서 만들어진 사용 패턴이나, 선호도 등이 그 사용자의 이름으로 남게 됩니다. 구글의 검색기록이나, 쇼핑의 구매기록 등도 마찬가지죠. 표면적으로 보면 이런 이용기록을 사용자가 삭제할 수 있습니다. 하지만 서버에는 여전히 그 내용이 남아있죠. 

 

이렇게 만들어진 사용자 데이터들은 다시 한번 가공되어 재사용되거나. 다른 비즈니스를 위한 분석자료가 되기도합니다. 심지어는 이런 데이터들을 모아 다른 회사에 판매하기도 합니다죠. 사용자가 만들어낸 데이터라는건 그만큼 시장과 밀접한 관계가 있고. 그들의 욕망을 알 수 있는 좋은 자료가 되어줍니다. 빅데이터나 AI 기반 분석이라는 말도, 결국 이렇게 쌓여올려진 데이터들 속에서. 어떤 비즈니스적 관점을 뽑아낼 수 있는지에 대한 연구인거죠.

 

 

 

3. 기존의 데이터들을 알고리즘, 필터링을 통해 가공한 데이터

엄밀하게 이야기하면, 세상 대부분의 데이터들은 이미 알고리즘, 필터링을 통해 가공된 내용입니다. 그러나 좀 더 깊게 들여다보면 데이터를 다루기 위해 별도의 알고리즘이나, 필터링이 꼭 필요한 서비스들이 있습니다. 예를 들어 관리자 프로그램이 그 대표적인 사례입니다. 분명 사용자들이 만들어낸 내용을 기반으로 하곤 있는데. 실제 보이는 데이터는 방향이나, 형태가 전혀 다릅니다. 수백, 수천건이 모여서 만들어진 데이터들을 갖고, 다시 판매 통계를 내거나. 앞으로도 판매가 지속될지에 대한 비즈니스 리포트를 얻는 등. 다양한 형태의 서비스가 가능합니다.

 

지도 데이터에는 정말 여러 기관과 도시 인프라 데이터가 한 곳에 묶여있습니다

 

지도 서비스도 가공된 데이터들 중 대표적인 사례입니다. 지도는 현실의 수많은 장소들을 포함하고있고. 도로나 대중교통 등, 다양한 도시 인프라와도 연관이 깊습니다. 이런 데이터들은 사용에 따라 테러나, 사건 사고를 일으킬 위험이 있기 때문에. 모든 데이터를 공개하지 않습니다. 그래서 일반인에게 공개할 수 있는 지점만 필터링하고, 다시 다른 기관의 데이터들을 엮어 지도의 기반 데이터를 만들게 됩니다. 길찾기 서비스의 경우 더욱더 정교한 알고리즘이 필요한데. 사용자가 검색한 A to B 지점 뿐 아니라. 중간에 위치한 여러 도시 인프라. 대중교통 등을 검색해 내용을 조합해야하기 때문입니다. 

 

이외에도 우리가 사용하는 포토샵, 피그마, 엑셀, 파워포인트 등의 프로그램도. 엄밀히 말하면 수식과 계산이 들어가있는 프로그램들입니다. 단지 그것을 포인트 & 클릭, 키보드 입력 등으로 일부를 대체했을 뿐. 완벽하게 사용자가 생산해낸 데이터라고 하기는 어렵습니다. 실제로 이런 프로그램에서 만들어진 저장 파일들은 다시 텍스트 파일로 저장해 내용을 열어보면. 사용자가 이해할 수 없는 여러 함수들과 세팅값 들이 가득 들어있는 것을 확인할 수 있습니다. 사용자가 움직인것과는 전혀 상관없는, 프로그램을 위한 데이터들이죠.

 

 


 

 

우리가 알지 못할 뿐, 세상에는 온갖 종류의 데이터가 가득하다

세상에는 여러가지 종류의 데이터들이 있습니다. 그리고 다시 그것을 쪼개고, 분류하다보면 이미 모듈화 되어있는 API 서비스들과. 전문적인 기관이나 업체들이 나오게됩니다. 실제 IT 서비스를 만들 떄 쓰이는 정보들과, API들, 그리고 전문적인 기술 스택들을 체크해야하는 건 당연한 이야기죠. 서비스를 기획하는 관점에서, 이 데이터는 어디에서 오는가. 그리고 어떤 방식으로 가공되고있는가.를 질문하는 것. 어찌보면 그게 설계와 기획을 넘어, 개발의 관점을 갖는 시작점일지도 모르겠습니다.

 

처음 생각하기에는 너무 다양한 것들을 알아야해서, 머리가 아플 수도 있을겁니다. 그러나 정작 파악해보면 대부분의 서비스에서 공통적으로 쓰이는 정보 모듈이 있고. 특정 분야에서만 쓰이는 정보모듈도 따로 있습니다. 이런 것들을 하나하나 분류해나가다보면, 결국 그 데이터가 어디까지 이야기하고, 어떤 정보를 담을 수 있는지. 여기에서 다루지 않는 정보를 찾으려면 '어디를 찾아봐야하는지' 까지 생각이 이어질 거라고 봅니다. 그때는 직접 엑셀 파일을 만들거나, 크롤링을 배워보는 것도 한가지 방법이겠죠. 

 

앞으로도 데이터를 다룰 때, 어떤 정보들을 연결되어, 하나의 서비스들이 만들어지고있는지 관찰하는 습관을 들이시면 좋을거같습니다.

 

 


 

 

리플러스의 UD LAB에 대해 더 궁금하시다면, 다음 링크를 확인해보세요!

udlab.tistory.com/2

 

UD LAB - 이용안내

안녕하세요, 리플러스입니다. UD LAB (구 UI 디자인 연구소)은 UI 디자인과, IT 생태계를 집중적으로 다루고있는 커뮤니티입니다. 크게 단톡방과 디스코드 채널로 이루어져있으며, 주기적으로 디스

udlab.tistory.com

728x90

댓글