앎을 경계하기

[가짜연구소3기] Data Engineer

[가짜연구소 3기] 데이터 엔지니어링 - 4 Data structures

양갱맨 2021. 8. 22. 11:54

주제

정형, 반정형, 비정형 데이터에 대한 개념을 배웠다.


정형 데이터

  • 검색과 구성하기 쉽다.
  • 행과 열로 구성된 구조(스프레드 시트)에 따라 입력된다.
  • 각 열은 특정 형식으로 정의되어 값을 입력할 수 있다.
  • 관계를 쉽게 구성할 수 있다.
  • 관계형 데이터베이스에 저장된다.
  • 데이터의 약 20%가 구조화되어있다.
  • SQL을 사용해서 데이터를 쿼리할 수 있다.

구조화된 데이터 예시

예시를 보면 말 그대로 구조화되어있다는 것을 알 수 있다.

그리고 각 열은 특정 타입으로 정해져 있다.

index는 고유한 ID의 역할을 하고 숫자형으로 데이터가 입력된다.

full_time은 논리값으로 true 또는 false 만 될 수 있으며, 1 또는 0으로 채워진다.

나머지 열들은 문자열 형태로 되어있다.

위와 같이 데이터가 구조화되어 있어서 다른 구조화된 데이블과 연결하는 것도 쉽다.

출처 : 위키독스 - 예제로 배우는 오라클 11g

반정형 데이터

  • 정형 데이터와 유사하지만 더 자유로운 형태로 데이터를 저장한다.
  • 검색과 구성이 쉽다.
  • 다른 유형을 가지고 있고 그룹화해서 관계 형성이 가능하다.
  • NoSQL 데이터베이스에 저장된다.
    • NoSQL은 JSON, XML, YAML 파일을 활용한다.

반 구조화된 데이터 

 

가상의 음악 스트리밍 회사 spotflix의 JSON 파일 예시이다."favorite_artists" 처럼 저장되는 데이터의 개수가 다를 수 있다.


비정형 데이터

  • 어떤 형식이나 모델을 따르지 않는 데이터
  • 검색과 구성이 어렵다.
  • 텍스트, 오디오, 이미지 등이 포함된다.
  • 일반적으로 데이터 레이크에 저장된다. 데이터웨어하우스나 데이터베이스에서도 저장할 수 있긴 하다.
  • 대부분의 데이터가 비구조화된 데이터이다.
  • 비정형 데이터는 매우 가치 있을 수 있다.
  • 머신러닝 모델을 통해 데이터를 활용할 수 있다.
  • 정형 데이터에서는 이러한 형태가 허용되지 않지만 반구조화된 데이터에서는 가능하다.
  • 어떤 일정한 구조 속에 데이터가 저장되어 있는 것을 알 수 있다.
  • 나머지 열들은 문자열 형태로 되어있다.
  • index는 고유한 ID의 역할을 하고 숫자형으로 데이터가 입력된다.