[사용해봐요 Dataprep] 1편 – Dataprep 간단 소개 및 시작하기

[사용해봐요 Dataprep] 1편 – Dataprep 간단 소개 및 시작하기 목차

  • Dataprep 소개
  • 준비
    • 권한 허용
    • 기본 저장소 설정
    • 용어 설명
      • Flows
      • Jobs
      • Library
      • Recipe
    • Flow 생성
    • 데이터 import

Dataprep 소개

Dataprep은 데이터 유형도 뒤죽박죽, 값도 군데군데 비어있는 엉망진창 원천 데이터를 깨끗하게 정제해주는 제품이라고 생각하시면 됩니다.

UI가 직관적으로 갖추어져 있기 때문에, 시각적으로 데이터의 어느 row에 문제가 있는지, 데이터를 변환하면 어떻게 되는지, preview도 즉시 보여줍니다.

또한 복잡한 코드를 쓸 필요 없이 사용자가 클릭 몇번만으로 데이터를 정제할 수 있게 해줍니다.

“(Dataflow와)유사하게 데이터를 깨끗하게 해주는 구글 제품이 Dataprep이다. Dataprep은 UI가 잘 구현되어 있어서 좀 더 쉽게, 마우스 클릭을 통해 할 수 있다.” 

-박기철 구글 클라우드 APAC Instructor

Dataprep 준비

권한 허용

Dataprep은 BigQuery와 같은 BigData 제품군에서 메뉴 맨 아래에 위치해 있습니다.

Dataprep을 처음 시작하면, 아래와 같이 약관 동의와 권한을 허용하는 절차가 몇번 있습니다. 모두 allow하고 진행하시면 됩니다.

기본 저장소 설정

기본 저장소 설정 단계에서 Dataprep이 Storage에 버킷을 자동으로 생성해둔 버킷으로 기본 저장소가 설정되어 있습니다.

continue를 클릭합니다.

저장소를 설정하면 보이는 화면은 아래와 같습니다.

용어 설명

  • Project : 현재 작업하고 있는 GCP의 프로젝트
  • Flows : 각 Flow(변경 작업 세트)들 목록
  • Library : 각 Flow에 사용한 원천 데이터들 목록
  • Jobs : Flow 1개에 쓰인 Recipe 작업들 목록

예를 들어보겠습니다.

A데이터를 B데이터로 변환했습니다.

B데이터를 C데이터로 변환했습니다.

C데이터를 D데이터로 변환했습니다.

Flows

A데이터에서 D데이터로 순서대로 변환한 작업들을 한 세트로 묶어서 Flow라고 부릅니다.

만일 위 Flow를 ‘Alphabet’이라고 명명한다면, 

Flows메뉴에서는 Alphabet 이 있는 것을 볼 수 있습니다.

그리고 Alphabet을 클릭하면 A → B → C → D 와 같은 흐름도를 보실 수 있습니다.

Jobs

Jobs 메뉴에서는

  • C → D : processing
  • B → C : Completed
  • A → B : Completed

와 같은 각 Recipe들의 현재 상태를 보실 수 있습니다. 

Library

Library에서는 원천 데이터인 A데이터를 보실 수 있습니다.

Recipe

Recipe는 A데이터에서 B데이터로 변화시키는 데 필요한 세부 절차를 하나로 묶어서 부르는 것이라고 생각하시면 됩니다.

<짭잘하게 맛있는 달걀후라이 만드는 방법>이 있다고 합시다. 이 방법은 아래의 순서로 이루어져 있습니다.

  1. 깬 달걀을 후라이팬에 익힌다.
  2. 그 위에 소금을 뿌린다.
  3. 4분동안 익힌다.

그럼 이렇게 비유할 수 있습니다.

  • 원천 데이터 : 달걀, 소금
  • A데이터 : 깬 달걀
  • B데이터 : 달걀 후라이
  • Recipe(A→B) : 
    • 깬 달걀을 후라이팬에 익힌다.
    • 그 위에 소금을 뿌린다.
    • 4분동안 익힌다.
  • Flow: <짭잘하게 맛있는 달걀후라이 만드는 방법>
  • Job : Recipe대로 실행하는 과정

위 설명을 손그림으로 그리면 아래와 같습니다.

이제 본격적으로 Flow를 생성해보도록 하겠습니다.

Flow 생성

우측 상단의 Create Flow를 클릭합니다.

Flow의 제목을 입력합니다.

Import & Add Datasets 를 클릭합니다.

데이터 import

현재(2020년 5월 23일) 기준으로 Dataprep에 데이터를 업로드할 수 있는 경로는 

  • Upload : 로컬(사용자의 컴퓨터)
  • GCS : Google Cloud Storage
  • BigQuery

입니다. 저는 제 컴퓨터에서 올려보도록 하겠습니다.

올리는 데이터는 birthday.csv 와 information.csv 입니다.

혹시 따라서 실습해볼 분들은, 구글드라이브에 공유파일을 올려두었으니 아래에서 다운 받으시면 됩니다.

데이터를 올리면 위와 같이 우측에 datasets가 import된 것을 확인하실 수 있습니다.

import & Add to Flow를 클릭합니다.

위와 같은 화면을 확인할 수 있습니다. Add new Recipe 를 클릭합니다.

Edit Recipe를 클릭합니다.

information.csv가 Dataprep에 올라간 것을 확인할 수 있습니다.

이때, id 열에서는 빨간색 표시가 보이고, like 열에서는 검은색 표시를 볼 수 있습니다.

빨간색 표시는 데이터 유형에 맞지 않는 데이터가 있다는 뜻이고, 검은색 표시는 데이터가 없는 행이 있다는 뜻입니다.

이제 Dataprep 을 실행할 준비가 모두 끝났습니다.

다음 포스팅 [사용해봐요 Dataprep] 2편 – Dataprep 기본 기능 에서 뵙겠습니다.