- ‘서비스 활용에 필요한 데이터를 시스템의 내부 혹은 외부에서 주기성을 갖고
필요한 형태로 수집하는 활동’- 다양한 유형의 데이터(정형, 반정형, 비정형)를 수집하는 것
- 데이터 수집 기술은 빅데이터 제공 서비스의 품질을 결정하는 중요한 기술
- 데이터가 존재해도 수집할 수 있는 기술이 미비하면 빅데이터 관련 서 비스에 대한 품질을 기대하기 어려움
- 관계형 데이터베이스 시스템의 테이블과 같이 고정된 컬럼에 저장되는 데이터
- 데이터의 스키마를 지원
- 예 : RDBMS의 테이블들, 스프레드시트 데이터
반정형 데이터
- 데이터 내부에 정형데이터의 스키마에 해당되는 메타데이터를 갖지고 있음, 파일
형태로 저장- 예: URL 형태로 존재(HTML), 오픈 API 형태로 제공(XML, JSON), 로그 형태 로 제공(웹
로그, IOT에서 제공하는 센서 데이터)비정형 데이터
- 데이터 세트가 아닌 하나의 데이터가 수집 데이터로 객체화 됨
- 언어 분석이 가능한 텍스트 데이터, 이미지, 동영상 같은 멀티미디어 데이터
- 예: 이진 파일 형태(동영상, 이미지), 스크립트 파일 형태(소셜 데이터의 텍스트)
- 수집 원천 데이터의 데이터 저장소가 내부 시스템에 있는 데이터
- 데이터 제공자와 상호 협약에 의한 의사 소통 가능
- 데이터 수집 주기 및 방법은 데이터 제공자(or 기관)와의 협약을 통해 제공받음
- 수집 실패한 데이터에 대한 재 수집 구현 가능
외부 데이터
- 수집 원천 데이터의 데이터 저장소가 외부 시스템에 있는 데이터
- 데이터 제공자와 협약 된 관계가 아니면 상호 의사소통이 불가능
- 데이터 수집을 위해 수집 주기 및 방법에 관한 분석이 필요
- 외부 데이터의 인터페이스방법은 수집할 항목을 분석해 수집 시스템을 설계
- 협약이 되지않은 시스템의 경우 수집 실패에 대안을 마련 필요
- 가능한 데이터의 전처리 과정 없이 원본 데이터를 수집 후, 수집 시스템에서 처리를 할 수 있도록
인터페이스를 설계하는 것이 바람직함.
데이터 처리 아키텍처 난이도
데이터잠재적가치
- 크롤링(Crawling): 텍스트 정보를 가져오는 수집 기술
- Open API 수집기술: 웹을 운영하는 운영주체가 정보를 제공하는 수집 기술
로그/센서 수집
- 로그수집기술: 데이터 처리 에이전트의 구별을 통해 로그 수집 기술
- 센서데이터수집기술: 실시간처리가 주를 이루는 머신 정보 수집 기술
DBMS 수집
- DBMS 수집은 DB에 직접 연결해 데이터를 수집
FTP 수집
- 대용량 파일을 수집하기 위하여 클라이언트 서버간 연결 및 파일전송, FTP 보안 기능 제공
- 데이터 소유 주체가 수집을 원하는 자에게 능동적 제공
- 예: 생산관련로그, 설문조사
수동적 데이터 수집
- 데이터 소유 주체가 웹 페이지에 데이터공개, 데이터를 원하는 자가 데이터
수집- 예: 웹 로봇, 웹 크롤러
- 내부 파일시스템, DB, 센서
- ETL(Extraction, Transformation, Loading)
외부 데이터 수집
- 인터넷으로 연결된 외부에서 데이터 수집
- Crawling Engine
- 예: SNS, UCC, 온라인쇼핑, 검색 등
- 변환은 정제를 포함
- 비정형 데이터 정제, 정형 데이터에서 측정값이 빠져 있거나, 형식이 다르거나, 내용 자체가 틀린 데이터를 고침
URL(Uniform Resource Locator)
- 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약
- 컴퓨터 네트워크와 검색 메커니즘에서의 자원의 위치를 지정하는 문자열
HTTP(HyperText Transfer Protocol)
- 웹상에서 클라이언트와 서버간에 정보를 주고 받을 수 있는 통신규약(프로토콜)
- URL 문자열을 직접 입력하거나 ,하이퍼링크 텍스트 또는 이미지를 클릭하여 HTML
문서를 주고 받는데 사용- 디폴트로 80번 포트 사용
- 다른 포트번호를 사용하는 웹 서버에 요청 시 도메인명 뒤에: 기호와 함께 포트 번호 지정
- 웹 클라이언트에서 웹 서버에 HTTP 요청을 전달할 때 요청 방식 명시
- 일반적으로 2 가지 방식(GET, POST) 사용
GET 방식과 POST 방식
- GET 방식
- 브라우저에서 직접 요청하려는 페이지의 URL 문자열을 입력하여 요청
- 하이퍼링크가 설정된 텍스트나 이미지를 클릭하여 요청- <form> 태그를 통한 요청
- method 속성 값에 따라서 GET 방식 요청과 POST 방식 요청 모두 가능
크롬(Chrome) 브라우저의 개발자 도구
- 크롬 브라우저에서 URL을 입력하고 요청
- 오른쪽 상단의 ‘Chrome 맞춤 설정 및 제어’ 메뉴를 클릭한 다음 ‘도구 더보기’ 메뉴의 ‘개발자 도구’ 메뉴 클릭
- 오른편으로 개발자 도구가 출력되고, ‘Elements’ 탭을 클릭하면 브라우저에서
렌더링되고 있는 웹 페이지의 HTML 소스가 출력 됨
- 개발자 도구의 왼쪽 상단 버튼 클릭
- 찾으려는 콘텐츠에 마우스를 올리면, 콘텐츠를 담고 있는 HTML 태그 부분이 개발자
도구의 태그 영역을 표시해주어 찾고자 하는 콘텐츠의 태그를 쉽게 찾을 수 있음- 해당 태그 영역을 클릭하면, 태그의 콘텐츠 영역의 출력 내용이 웹 페이지에 렌더링된 내용과 동일함을 확인할 수 있음
- 보유하고 있는 공공데이터를 적극적으로 개방하여 국민과 공유함으로써 소통과
협력을 확대하기 위해 공공 데이터 정책 추진- 2013년 7월 공공 데이터 법을 제정하고 공공 데이터 개방을 10월부터 시행
공공 데이터 포털(https://www.data.go.kr)
- 공공기관이 생성 또는 취득하여 관리하고 있는 공공 데이터를 한 곳에서 제공하는 통합 창구
- 서울 열린 데이터 광장(https://data.seoul.go.kr/)
- 열린 시정 3.0에 의해 공공 데이터를 민간에 개방하고 소통함으로써 공익성, 업무 효율성, 투명성을 높이고 시민의 자발적 참여로 새로운 서비스와 공공의가치를 창출할 수 있도록 하는 서비스- 국가통계포털(KOSIS, Korean Statistical Information Service)
- 국내, 국제, 북한의 주요 통계를 한곳에 모아 이용자가 원하는 통계를 한번에 찾을 수 있도록 통계청이 제공하는 One-Stop 통계 서비스- 부산 공공 데이터 포털(https://data.busan.go.kr)
- 부산관광통계(https://bta.or.kr/mcboard/mn_list.php?mnid=bta&mncd=bta6)
OPEN API
- 인터넷 이용자가 웹 검색 결과 및 사용자 화면 등을 제공 받는데 그치지 않고
직접 응용 프로그램과 서비스를 개발할 수 있도록 공개된 개발자를 위한 인터
페이스대부분의 SNS 사이트들은 개발자로 등록하고 인증키를 받아 제공되는 API 사용
- 뉴스나 블로그와 같이 콘텐츠 업데이트가 자주 일어나는 웹사이트에서 업
데이트 된정보를 정해진 규격의 XML 형식으로 자동화하여 사용자에게 제
공하기 위한 서비스- RSS가 등장하기 전에는 원하는 정보를 얻기 위해 해당 사이트를 직접 방문 해야했음
- RSS 관련 프로그램(혹은 서비스)을 이용하여 자동 수집이 가능해졌기 때문에 사용자는 각각의 사이트 방문 없이 최신 정보들만 골라 한자리에서 볼 수 있음
- 조선일보 RSS(http://rssplus.chosun.com/)
- 인기 뉴스 RSS보기