Wrangler를 사용해서 파이프라인을 배포해볼 것이다.
Wrangler
자동 또는 반자동화 도구로 데이터를 쉽게 사용할 수 있도록 데이터를 사용하기 좋은 형태로 변경하는 사람을 데이터 Wrangler라고 한다.
Data Fusion에선 이런 랭글링 작업을 간편하게 할 수 있다.
샘플 고객 데이터를 가져와 정리, 변환, 처리하여 타겟팅 캠페인의 후보를 선택할 수 있는 데이터 파이프라인을 만들어볼 것이다.
샘플 고객데이터 클릭
파싱
body가 여러 열로 분할디었고 이름, 주소, 도시, 등등 속성별로 나뉘어졌다. 이제 기존의 body열은 필요없으니 삭제해주자
스키마 설정
열 갯수만큼 ,로 나누어서 지정할 스키마 이름을 넣어준다.
데이터 필터링
캘리포니아, 오리건 또는 워싱턴에 거주하는 고객만 표시하도록 데이터를 필터링
이렇게 하려면 이들 3개 주 이외의 값이 포함된 행을 모두 삭제해야 한다.
value matches regex를 조건으로 필터링 해주고 아래의 조건식을 넣어준다.
(regex는 regular expression 즉, 정규식을 뜻한다.)
정규식에 ^(California|Oregon|Washington)$를 입력.
State가 California/Oregon/Washington만 표시가 된다.
만약 했던 작업을 취소하려면 여기서 실행했던 작업을 그냥 x 눌러주면 된다.
그리고 애비뉴에 거주하는 사람만 표시하도록 필터링할 것이다.
위의 화면에서 ignore case를 체크하면 대소문자를 무시하겠다는 뜻이다.
아래와 같은 파이프라인 화면이 나온다.
Wrangler의 속성을 들어가면 우리가 Transform 해줬던 것을 확인할 수 있다.
또한 Wrangle을 누르면 다시 이 전에 Wrangler 페이지로 돌아가서 작업을 추가할 수 있다.
State 이름 축약
배송 차량의 내비게이션 시스템은 약어로 된 주 이름(California가 아니라 CA)이 포함된 주소만 인식하는데, 현재 고객 데이터에는 주 전체 이름이 포함되어있다.
공개 빅쿼리 state_abbreviations 테이블에는 주 전체 이름이 있는 열 1개와 축약된 주 이름이 있는 열 1개가 있다.
이 테이블을 사용하여 고객 데이터의 주 이름을 업데이트 해볼 것이다.
output schema에 스키마를 가져온 것을 확인할 수 있다.
데이터 소스 2개 join
고객 데이터와 주 이름 축약 데이터 소스를 조인하여 고객 데이터와 축약된 주 이름이 포함된 output을 생성
화살표로 아래와 같이 연결해준다.
Fields를 아래와 같이 바꿔준다.
주 전체 이름이 아닌 축약된 주 이름으로 하고 싶으므로 체크를 해제하고 축약된 주 이름이 있는 빅쿼리의 데이터 소스에서 abbreviation만 체크한 뒤 Alias를 State로 바꿔준다
Outer join으로 해주고 Wrangler 선택, 조인 조건에서 Wrangler의 State 열을 BigQuery의 name 열과 조인하도록 조건을 설정한다.
그리고 그 결과에 대한 스키마를 가져온다
파이프라인 결과는 BigQuery 테이블에 저장할 것이다.
데이터를 저장하는 위치를 싱크라고 한다.
빅쿼리 속성으로 들어가서 아래와 같이 설정해준다.
선을 아래와 같이 모두 연결해주고 파이프라인 배포 및 실행
빅쿼리에서 파이프라인이 작동하여 출력값이 테이블로 적재된 것을 확인할 수 있다.