본문 바로가기
비개발자의 개발 지식 스터디/데이터

데이터의 전체 프로세스

by 열정주니어 2023. 7. 26.
반응형

개요

  • IT 회사에서 데이터는 정말 중요
    • 오프라인 매장에서 고객들이 방문하는 것과 달리 온라인은 프론트엔드(웹, 앱)등을 통해서 접근하므로 유저의 방문, 행동 등의 정보를 얻기 위해서는 해당 채널에서 데이터를 수집해야 함

  • 실제로 우리가 사용하는 대부분의 웹에서는 행동 정보를 수집하고 있음
    • 사이트에서 머무는 시간, 스크롤, 클릭 등의 유저 로그 정보들은 전부 데이터화되어 저장됨

 

데이터의 전체 프로세스

  • IT 회사에서 처리하는 데이터 프로세스는 크게 아래와 같이 정리할 수 있음
  1. 데이터 생성
  2. 데이터 수집
  3. 데이터 가공 후 저장(ETL)
  4. 데이터 시각화(BI)
  5. 데이터 분석

 

데이터 생성

  • 데이터를 얻기 위해서 가장 먼저 데이터 생성이 필요
    • 데이터 수집은 보통 유저가 사용하는 웹, 앱에서 발생
    • 결제하기 버튼을 클릭, 상품페이지 스크롤, 홈화면 접속 등이 있음
    • 유저가 버튼을 클릭하면 미리 심어진 코드가 동작하여 유저의 간단한 정보들과 무슨 행동(클릭)을 했는지 데이터를 만든 후 데이터를 처리하는 서버로 전송

 

데이터 수집

  • 프론트엔드에서 데이터 생성 -> 데이터를 수집하는 수집 서버(혹은 로그 서버)에게 해당 데이터를 전송 -> 해당 서버는 데이터를 데이터베이스에 저장 혹은 다른 서버로 데이터를 전달
  • 대표적인 데이터 수집 서버로는 Aws의 Kinesis, Apache의 Kafka 등이 존재
    • 개발자들이 더 쉽게 데이터를 수집할 수 있도록 도와주는 Segment 서비스도 많이 이용
  • 데이터의 형식에 따라 사용되는 데이터베이스는 달라질 수 있음
    • 보통 유저 로그는 데이터양이 방대하기 때문에 이에 최적화된 NoSQL, HBase 등의 데이터베이스에 저장

 

데이터 가공 후 저장

  • 비정형 데이터: 로그 서버를 거쳐 저장된 데이터는 가공되지 않고 구조적이지 않은 원형 그대로의 데이터
    • 비정형 데이터들은 바로 사용할 수 없으므로 사용 목적에 맞게 가공이 필요
    • 이 때 비정형 데이터들을 한 번 가공한다고 해서 전처리 한다고도 함
    • 전처리 후 새로운 데이터베이스에 저장
  • 정형 데이터: 전처리 후 데이터베이스에 형식에 맞게 차곡차곡 쌓이는 데이터

 

ETL

  • ETL: 비정형, 정형 데이터를 목적에 맞게 가공해서 저장하는 일련의 과정
    • ETL은 Extract(추출), Transform(변형), Load(적재)를 의미
    • 데이터베이스에서 데이터를 추출해서 목적에 맞게 변형하고 이를 새로운 데이터베이스에 저장시키는 것
  • 대표적인 ETL 처리 프로그램으로 Spark , Hadoop 등이 있음
  • 데이터 웨어하우스: 가공된 데이터들을 최종적으로 저장하는데 사용되는 데이터베이스로 수많은 데이터들을 저장하는 창고라는 의미
    • 요새 IT 기업들은 데이터 웨어하우스로 구글의 BigQuery, AWS의 RedShift를 많이 이용
    • 이들은 단순히 데이터를 저장하는 역할 뿐만 아니라 내부에서 직접 데이터를 분석할 수 있는 환경(SQL 이용)도 같이 제공을 해줌

 

ELT

  • 클라우드 기술의 출현과 발전으로 최근엔 ETL이 아닌 ELT 방식의 데이터 가공이 각광 받고 있음
    • 이는 변환(T)후 적재(L)가 아닌, 데이터를 우선 적재(Load)하고 필요에 따라 일부분을 변환(T)하여 분석하는 방식
    • 데이터 양이 많고 형식이 매우 다양한 빅데이터 처리와 신속한 데이터 분석에 유리한 접근 방식으로 인기

 

데이터 시각화

  • 가공된 데이터들이 데이터 웨어하우스에 저장되어 있지만 우리의 눈에는 복잡한 텍스트로 보임
    • 최종적으로 데이터들을 눈에 보이기 쉽게 하기 위해 데이터 시각화 과정 필요

  • 쌓여있는 데이터들을 시각화해서 보여주는 도구로 BI 툴을 많이 사용
    • BI는 Business Intelligence의 약자
    • BI는 데이터를 이용해서 더 나은 의사결정을 하는 방법을 다루므로 보통 데이터 시각화 Dashboard도 같이 제공
    • 대표적인 데이터 시각화 도구로 Tableau, Redash 등의 서비스가 있음

 

데이터 분석

  • 쌓여있는 데이터들은 최종적으로 분석해야 의미가 있음
    • 데이터를 하나하나 봤을 때는 그저 하나의 점이고 이를 다양한 분석방법을 사용해야 선으로 연결됨 
    • 이 때 통계학, 머신러닝 등의 여러가지 학문적 지식을 바탕으로 데이터 분석 진행
  • IT 회사에서 데이터 직군의 일을 크게 데이터를 뽑아내는 일과 데이터를 분석하는 일로 나눌 수 있음
    • 데이터 엔지니어: 유저로부터 데이터를 추출해서 데이터베이스에 저장하는 일을 담당
    • 데이터 분석가: 저장된 데이터를 바탕으로 분석하는 일을 담당

 

Reference

https://www.inflearn.com/course/it-%EA%B0%9C%EB%B0%9C%EC%A7%80%EC%8B%9D#

 

IT 회사에서 비개발자가 살아남기 위한 모든 개발 지식 A to Z - 인프런 | 강의

본 강의는 멤버십 구독 개념으로 한 번 구매하면 계속 추가되는 수업도 수강할 수 있습니다😃, [사진] 이 강의는!  단순히 개발 용어만을 알려주지 않습니다.IT 회사에서 개발자들이 실제로 하

www.inflearn.com

https://www.grabbing.me/IT-A-to-Z-By-1e1fbc981b7c4c03ac44943085ac8304

 

[IT 개발자와 일할 때 필요한 모든 개발지식] A to Z 자료 모음집 By 그랩

장담하건대 이 내용들만 알고 계시면 IT 개발의 전체적인 흐름은 전부 파악한다고 보셔도 무방합니다.

www.grabbing.me

 

반응형

'비개발자의 개발 지식 스터디 > 데이터' 카테고리의 다른 글

AI  (0) 2023.07.26
그로스 해킹  (0) 2023.07.26
데이터 직군  (0) 2023.07.26