본문 바로가기
IT - DATA/DATA Engineering

[데이터 엔지니어링] 01-1. 데이터 엔지니어링 개요

by 오는정 가는정 갓은정 2022. 10. 19.
반응형

 

01. 데이터 엔지니어링 필요성

 

문제 해결을 위한 가설 검증 단계

Fast Campus

 

모든 비즈니스는 동일한 데이터 분석 환경을 갖출 수 없으며
성장 단계에 따라 선택과 집중해야 하는 분석 환경이 다르다.

 

 

비즈니스 성장에 따라 갖추어야 할 3가지 고려사항

   Custom 환경
   Automation
   Data Integration

 


 

02. 데이터 아키텍쳐시 고려사항 

데이터아키텍처(DA, Data Architecture)란, 전사적인 관점에서 데이터를 수집, 저장, 통합하며 이를 체계화 하는 것이다.

 

(1) 비즈니스 모델 상 가장 중요한 데이터는 무엇인가?

 

어떤 데이터에 집중해야 하고, 어떤 가치를 만들어 내야할 것인가 가 먼저 선행되어야 하며,

데이터 비용/시간 대비 비즈니스 임팩트가 가장 높은 데이터 확보를 목표로 데이터 아키텍쳐를 진행해야한다.

 


 

(2) 데이터 거버넌스 (Data Governace)

데이터거버넌스란 데이터의 가치를 보전하고 통합 / 가용 / 보안 관리하는 목적으로 수행하는 전사 차원의 경영 체계

 

✔ 원칙
- 데이터 유지/관리하기 위한 가이드
- 보안 / 품질 / 변경 관리

 

✔ 조직

- 데이터 관리할 조직의 역할과 책임

- 데이터 관리자, 데이터 아키텍트

 

✔프로세스

- 데이터 관리를 위한 시스템

- 작업절차, 모니터 및 측정

 


 

(3) 유연하고 변화 가능한 환경 구축

 

  • 특정 기술 및 솔루션에 얽매여져 있지 않고 새로운 테크를 빠르게 적용할 수 있는 아키텍쳐를 만드는 것
  • 생성되는 데이터의 형식이 변화할 수 있는 것처럼 그에 맞는 툴들과 솔루션들도 빠르게 변화할 수 있는 시스템을 구축하는 것이 중요

 


 

(4) Real Time (실시간) 데이터 핸들링이 가능한 시스템

 

밀리세컨 단위의 스트리밍 데이터가 됬건 하루에 한번 업데이트 되는 데이터든 데이터 아키텍쳐는 모든 스피드의 데이터를 핸들링

  • Real Time Streaming Data Processing
  • Cronjob
  • Serverless Triggered Data Processing

 


 

(5) Security

 

내부와 외부 모든 곳에서부터 발생할 수 있는 위험 요소들을 파악하여 어떻게 데이터를 안전하게 관리할 수 있는지 아키텍쳐 안에 포함

 

 

(6) 셀프 서비스 환경 구축

 

데이터 엔지니어 한명만 엑세스가 가능한 데이터 시스템은 확장성이 없는 데이터 분석 환경

  • BI Tools
  • Query System for Analysis
  • Front - end data applications

 

 


 

03. 데이터 시스템의 옵션들

 

API의 시대

 

마케팅, CRM, ERP 등 다양한 플랫폼 및 소프트웨어들은 API를 통해 데이터를 주고 받을 수 있는 환경을 구축하여 생태계를 생성

 


Relational Databases

 

  • 데이터의 관계도를 기반으로 한 디지털 데이터베이스로 데이터의 저장을 목적으로 생겨남 
  • SQL 이라고 하는 Standard 방식을 통해 자료를 열람하고 유지
  • 현재 대부분의 서비스들이 가장 많이 쓰고 있는 데이터 시스템

NoSQL Database

 

  • Not Only SQL
  • Unstructured, Schema Less Data
  • Scale horizontally (예: 메신저)
  • Highly scalable / Less expensive to maintain

Hadoop / Spark / Presto 등 빅데이터 처리

 

  • Distributed Storage System / MapReduce를 통한 병렬 처리 (나눠서 저장하는 시스템)
  • Spark
    - Hadoop의 진화된 버전으로 빅데이터 분석 환경에서 Real Time 데이터를프로세싱하기에 더 최적화
    - Java, Python, Scala를 통한 API를 제공하여 애플리케이션 생성
    - SQL Query 환경을 서포트하여 분석가들에게 더 각광 (User friendly)

서버리스 프레임워크

 

  • Triggered by http requests, database events, queuing services
  • Pay as you use
  • Form of functions
  • 3rd Party 앱들 및 다양한 API를 통해 데이터를 수집 정제하는데 유용

 

 


 

 

 

다음 포스팅에서는 데이터 파이프라인, 자동화의 이해, 엔드 투 엔드 아키텍쳐 예시들, Spotify 프로젝트 데이터 아키텍처에 대해 알아보자.

 

https://make-extra-money.tistory.com/19

 

[데이터 엔지니어링] 01-2. 데이터 엔지니어링 개요

04. 데이터 파이프라인 데이터 파이프라인이란 데이터를 한 장소에서 다른 장소로 옮기는 것을 의미 API → Database Database → Database Database → BI Tool 데이터 파이프라인이 필요한 경우 다양

make-extra-money.tistory.com

 

 

 

※ 위 글은 FastCampus 강의를 바탕으로 정리한 포스팅입니다.

반응형

댓글