데이터 유형 | 데이터 종류 | 수집 기술 |
---|---|---|
정형 데이터 | RDB, 스프레드시트 등 | ELP, FTP, Open API |
반정형 데이터 | HTML, XML, JSON, 웹문서, 웹로그, 센서 데이터 | Crawling, RSS, Open API, FTP |
비정형 데이터 | 소셜 데이터, 문서(워드, 한글), 이미지, 오디오, 비디오, IoT | Crawling, RSS, Open API, Streaming, FTP |
수집대상 데이터를 추출, 가공하여 데이터 웨어하우스(DW) 및 데이터 마트(DM)에 저장하는 기술
TCP/IP 기반으로 파일을 송·수신하는 응용계층 통신 프로그램
솔루션 제조사 및 3rd party 소프트웨어로 제공되는 도구
시스템 간 연동을 통해 실시간으로 데이터를 송·수신하는 인터페이스 기술
데이터베이스 시스템 간 데이터를 동기화하거나 전송하는 기능을 제공하는 기술
원격으로 파일과 디렉터리를 동기화하는 응용 프로그램 활용 기술
관계형 데이터베이스와 하둡 간 데이터 전송 기능을 제공하는 기술
➡ 파일을 가지고오는 형태 Rsync, FTP
➡ 자동화해서 사용하는 방식 ETL, API, DBToDB, Sqoop
🔍 Apache Sqoop
스쿱은 구조화된 관계형 데이터 베이스(RDBMS)와 아파치 하둡(Hadoop Flie System)간의 대용량 데이터들을 전달하기 위해 효율적으로 변환하여 주는 명령 줄 인터페이스 애플리케이션
정형 데이터만 전달해줄수 있는 기능
다양한 웹 사이트로부터 데이터를 직접 수집하는 기술
웹 크롤링
웹사이트 모든 링크 방문-> 데이터 인덱션 만듦-> 데이터베이스 저장하게끔 만들어줌
웹스크레핑
웹사이트 데이터-> 웹스크래퍼 통해 긁어옴->데이터 베이터에 저장하거나 SQL, XML,엑셀이라는 형태로 저장
XML 기반으로 정보를 배포하는 프로토콜을 활용하여 데이터를 수집하는 기술
✅ RSS는 표현방법
컨텐츠를 보여주는 방법
뉴스나 블로그 같이 매일 주기적으로 생산이 되는 컨텐츠를 보여주는 방식
RSS가 없다면 뉴스나 블로그 보기 위해서 웹페이 방문해야 하는데 정보수집에 오래 걸림. Without RSS 직접 방문해서 데이터를 가져와야 한다
RSS 보유하고 있다면? RSS Reader를 이용해서 내 컴퓨터에서 자동적으로 보내주는 피드를 받아 그자리에서 바로 확인을 할 수 있기에 상당히 빠르다
공개된 API를 이용하여 데이터를 수집하는 기술
Scrapy 파이썬 언어 기반으로 크롤링하여 데이터를 수집하는 기술
대용량 실시간 로그 처리를 위한 분산 스트리밍 플랫폼 기술
데이터를 센서로부터 수집 및 생성된 데이터를 수집하는 기술
센서 데이터, 미디어 데이터를 실시간으로 수집하는 기술
로그데이터를 Event와 Agent를 통해 자동화해서 수집하는 기술
flume의 뜻이 통나무(로그)를 쉽게 이동시키기 위한 수로라는 뜻을 가지고 있음
✅ 아파치 플룸
많은 양의 로그 데이터를 효율적으로 수집, 취합, 이동하기 위한 분산형 소프트웨어
로그데이터를 실시간으로 수집하는 기술.
페이스북에서 개발된 대규모의 서버로부터 실시간으로 스트리밍 로그 데이터 수집을 위한 애플리케이션
Agent와 Collector 구성을 통해 데이터를 수집하고 하둡에 저장하는 기술
분산되어 있는 노드들의 로그 데이터를 수집하고, 수집된 데이터를 저장하며 분석하기 위해 만들어진 오픈소스 프로젝트