본문 바로가기

Data Engineering/Data Platform

(6)
빅데이터를 지탱하는 기술 - Chapter6 빅데이터 분석 기반의 구축 스키마리스 데이터의 애드 혹 분석 주피터와 Spark에 의한 애드 혹 분석의 예시를 설명한다. 분산스토리지는 MongoDB로 JSON 데이터를 가공 집계 시각화한다. 스키마리스 데이터 수집 MongoDB에 JSON형식의 데이터를 구축 해놓는다 대화식 실행 환경의 준비 주피터 노트북을 가동하여, MongoDB에 있는 데이터를 가져와 데이터 프레임 형식으로 전환한다. 환경을 구축할 때 도커를 통해 가상머신을 구축하면 편하다. Spark에 의한 분산 환경 데이터양의 증가에 따라, Spark를 사용하여 분산 처리한다. pyspark의 실행으로 대화식으로 실행. Spark는 마스터/슬레이브 형의 분산 시스템으로 클라이언트로부터 마스터에 명령을 보냄으로서 프로그램 실행하며, 클라이언트를 드라이버 프로그램이라고 부른..
빅데이터를 지탱하는 기술 - Chapter5 빅데이터의 파이프라인 워크플로 관리 워크플로 기초 정의 정해진 업무를 정해진 스케줄에 따라 자동으로 실행하는 구조를 워크플로로 관리라고 한다. 워크플로 관리 도구 정기적인 태스크의 실행 비정상적인 상태 감지와 해결 태스크 데이터 파이프라인의 과정은 데이터가 이동하는 과정이다. 이때 이동하면서 이뤄지는 개별 처리를 태스크라고 한다. 빅데이터 파이프라인에 워크플로 도구가 필요한 이유 복잡해지고, 많은 수의 태스크에 오류가 생긴다면 복구하는 과정이 어렵다. 정기적인 태스크 수행과 보고. 태스크 간의 의존 관계 설정과 정해진 순서의 실행. 태스크 실행 결과의 보관과 오류 시 재실행. 모든 태스크를 일원 관리하는 것이 빅데이터에서 워크플로 관리 도구의 역할이다. 워크플로 관리 도구의 종류 - 선언 형, 스크립트 형 선언형 XML, Y..
빅데이터를 지탱하는 기술 - Chapter4 빅데이터의 축적 벌크 형과 스트리밍 형의 데이터 수집 - 4.1 객체 스토리지 빅데이터는 확장성이 높은 분산스토리지에 저장하지만, 기본은 대량으로 파일 저장을 위한 객체스토리지이다. ex)HDFS, Amazon S3 다수의 컴퓨터를 사용하여 파일을 여러 디스크에 복사 → 데이터의 중복화 부하분산 실현 네트워크를 통해 읽기 때문에 작은 파일을 자주 읽고 쓰는건, 통신 오버헤드가 크다. 데이터의 수집 시계열 데이터는 적당히 모아서 하나의 큰 파일로 만든다. 너무 큰 파일을 나눠서 처리한다. 단순 수집이 아닌 처리하기 쉽도록 위의 규칙을 지킨다. 수집 - 가공 - 구조화 - 분산스토리지의 장기적인 저장이 데이터 수집이다. 벌크 형 데이터 전송 생성 파일 서버, 웹 서비스에서 다양한 방식(SQL, API)으로 정리해 데이터를 ..
빅데이터를 지탱하는 기술 - Chapter3 빅 데이터의 분산 처리 대규모 분산 처리의 프레임워크 구조화 데이터 테이블의 칼럼, 데이터형, 테이블 간의 관계를 스키마라고 정의한다. 스키마가 명확한 데이터를 구조화된 데이터라고 한다. 비구조화 데이터 텍스트, 이미지 등 SQL로 집계 불가능한 데이터 보통 데이터레이크에 저장 후, 분산 시스템에서 처리한다. → 가공하면서 스키마 정의 & 구조화 스키마리스 데이터 CSV, JSON, XML, 파킷 등 서식은 있지만, 스키마가 없는 경우. JSON을 예시로 들자면, 다운로드 시 스키마를 정의하는건 효율적이지 않아 분석에 필요한 필드만을 따로 추출한다. 데이터 구조화의 파이프라인 데이터 소스 → 분산 스토리지(구조화가 필요한 상황) → 열 지향 스토리지 열 지향 스토리지는 MPP DB 전송 혹은 Hadoop 상에서 변환하면서 이루..
빅데이터를 지탱하는 기술 - Chapter2 빅데이터의 탐색 2-1 크로스 집계의 기본 크로스 테이블 : 행과 열이 교차하는 부분에 숫자 데이터가 들어간다 트렌젝션 테이블 : 행방향으로 데이터가 추가되는 기본적인 데이터베이스 구조 룩업 테이블 : 새롭게 속성을 추가하는 것이 아닌 key를 이용하여 속성 값을 연결 크로스 집계 방법 피벗 테이블 : 가장 쉬움 BI도구 : 자주 반복해야 할 경우 사용 SQL : 데이터가 큰 경우, SQL로 먼저 집계 후, 시각화 도구를 결합 데이터를 수백만건 이하로 줄일 수 있다면, 시각화도구에 한번에 업로드 가능하기에 특별한 시스템이 필요없다. 그게 아니라면 지연이 적은 데이터마트를 사용해야한다. 2-2 열 지향 스토리지에 의한 고속화 메모리가 부족할 대량의 데이터를 집계할 때는,미리 집계에 유리한 형태로 데이터베이스를 만들어 놓는..
빅데이터를 지탱하는 기술 - Chapter1 빅데이터의 기초 지식 [빅데이터를 지탱하는 기술 - Chapter1을 요약한 내용입니다] [하둡이란] 기존 DW에서 적재/처리 모든 기능을 맡았다면, 하둡이 처리 프로세스 대신 부담해준다. [데이터파이프라인의 구축] ETL이란? 데이터가 생성되고, 목적에 맞게 가공되어 적재되는 일련의 프로세스를 통틀어서 말한다. 다양한 형태가 있지만 큰 틀에서는 간단하게 설명 할 수 있다. 데이터가 생성 혹은 가공 된다. 실시간으로 DB에 적재되거나, 일정량을 채운 후 적재 시킨다. 적재된 DB를 바로 사용하거나 DW등 더 큰 DB에 저장한다. 위 프로세스를 목적에 맞게 반복하거나, 데이터를 활용해 산출물을 낸다. 애드혹 분석 or 대시보드도구 DB에서 일회성 분석을 목적으로 데이터를 가져오거나, 대시보드 도구를 이용해서 정기적으로 가져온다..