[태블로] 태블로 월별로 여러 데이터셋 집계하기
·
데이터 분석 Data Analysis/Tableau
두시간동안 삽질하다가 알아냈다.. 또 까먹을 수 없어서 급히 쓰는 글 나는 지금 여러가지 데이터셋을 연결해서 월별로 집계된 차트를 만들고 싶다 근데 나에게 주어진 데이터 상황 !! - 7개 데이터셋의 날짜 범주가 다 다르다 (어떤건 1월부터 6월까지, 어떤건 2월부터 7월까지 이럼) Try 1. 이런 모양으로 데이터셋을 만들어봤다 사실 연결 방법에 대해 딱히 고민 없이 그냥 만듬 ㅋㅋㅋ (나는 당연히 어떻게든 연결고리가 있다 = 태블로가 알아서 연결해줄거라고 생각함) 근데 아니었다!! 그래서 이 차트를 가지고 집계 그래프를 그리면 날짜서식 기준으로 연결이 안 된 것들은 null 이 뜨게 되는데 그 이유는 중간에 연결되는 부분에 어떤 월이 비어있다면 그 후순위 연결부터는 해당 월이 연결고리 자체에서 생략되..
[태블로] 태블로 데이터 refresh 하는 법 3가지
·
데이터 분석 Data Analysis/Tableau
태블로 작업을 하다 데이터의 형태는 똑같은데 데이터의 내용물이 바뀌어 새로 갈아끼워넣어야할 때가 있다. 이때, 태블로 상에서 새로운 데이터를 가져와서 그 자리에 올려두더라도 태블로는 그 두개 데이터를 다른 아이라고 인식하고 어떻게든 컬럼명에 구분을 줄것이다 ex) 원래 쓰던 데이터의 컬럼명: name 갈아끼운 데이터의 컬럼명: name(sheet2) 이런식으로 태블로는 원본 데이터를 지우더라도 어떻게든 두 데이터를 다른 아이라고 인식한다. 그렇게 된다면 시트에서 사용되는 모든 로직의 데이터 이름을 바꿔주어야 하는 불상사가 일어난다... 이를 방지하기 위해 똑똑하게 데이터를 refresh 하는 방법을 알아보자 방법1. 태블로 데스크탑을 사용하는 경우 태블로 상에서 데이터를 누르면 이렇게 파일 이름 옆에 저..
[태블로] 태블로 날짜 월별로 예쁘게 나타내기 (jan, feb, mar...)
·
데이터 분석 Data Analysis/Tableau
태블로 잡기술만 점점 늘어나는 중... 아니 태블로가 이런게 된다니..!!! 역시 태블로의 의도와 다르게 만들어서 쓰는 사람들이 있었군 *여기서 P_날짜범위는 파라미터다. 날짜 파라미터로 쓰기 위해 추가된 것  여튼 이 양식을 복사해서 dimension 으로 만들고, 그걸 행으로 추가해주면 끝 IF [P_날짜 범위 + Total] != 'Total' and DAY([Date]) = 1 THEN STR(MONTH([Date])) + '/' + STR(DAY([Date]))ELSEIF [P_날짜 범위 + Total] != 'Total' THEN STR(DAY([Date]))ELSEIF MONTH([Date]) = 1 THEN 'Jan'ELSEIF MONTH([Date]) = 2 THEN 'Feb'ELSEIF..
[SQL] 변화하는 유저 DB 관리, 어떤 sql 문법을 써야할까? (feat. SCD)
·
데이터 엔지니어링/SQL
유저 DB, 경영정보 테이블 등 변동이 심한 DB 는 어떻게 관리하면 좋을까? 예를 들어, 어떤 회사의 A 직원이 개발팀에서 근무하다 마케팅팀으로 옮겼다면? DB 정보를 업데이트하고 지우기 위해서 단순히 INSERT INTO 라던지 DELETE 구문을 이용해 개발팀_table 과 마케팅팀_table 의 DB 를 수정한다면 인원이 늘어남에 따라 관리가 복잡해짐은 물론이며, 과거의 데이터를 트래킹하기 어렵다는 치명적인 한계가 있다. 이럴 때 사용하는 SQL 로직으로 SCD (Slowly Changing Dimension).. 라는 녀석이 있다. 데이터 엔지니어링 분야에서 자주 쓰이는 로직과 문법인데, SCD type 1 - 6 까지 경우에 따라 다양하게 적용할 수 있다. 지금부터 SCD 로직을 적용하는 경우..
[DE] SQL 에서 틀린 데이터 갈아끼우기 (update, upsert)
·
데이터 엔지니어링/SQL
데이터를 다루다 보면 과거의 데이터를 수정할 일이 생긴다. 에어플로우에서 이 작업을 할 수 있게 도와주는걸 backfill 이라 부르고 catchup 기능으로 이걸 구현할 수 있는데, DB 를 직접 sql 구문을 이용해 수정하기도 한다. 이때 사용되는 몇가지 sql 구문들을 살펴보자 1. upsert 방법 upsert 는 말 그대로 update + insert 방법이다. 스키마의 key 값을 검사해 중복이 있다면 업데이트, 중복이 없다면 insert 를 해주는 방법인데, 이 문법으로 구현할 수 있다 INSERT INTO [TABLE] #업데이트 할 테이블 ( [COLUMN1] #업데이트 할 컬럼 , [COLUMN2] , [COLUMN3] ) VALUES ( [VALUE1] #업데이트 될 값 , [VALU..
[Airflow] Airflow 랑 GCP 연동시키기 (초보자용 세팅 설명)
·
데이터 엔지니어링/airflow
* 해당 게시글은 airflow 설치와 local 에서 작동이 잘 되고있는 상태라고 가정하고 작성한 글입니다. 혹시 설치부터 막힌다면 이전에 포스팅한 글을 참고해주세요! 에어플로우로 데이터 처리 자동화 작업을 해보려 한다. 에어플로우는 웬만한 3rd party 제품과의 연결을 지원하는데, 나는 익숙하게 사용하는 GCP 를 이용해보려고 한다. 먼저 gcp 에 가입을 해준다. 뭐라도 쓰려면 일단 무료 평가판을 구매해야 하는데, 실습을 위한 용량은 충분히 제공하기 때문에 걱정하지 않아도 됨. GCP > BigQuery 에 들어와서 데이터 세트 만들기를 눌러준다 아이디를 설정하고 세트를 만들고 나면 다음과 같은 화면이 뜬다 점 세개를 누르면 정보들을 확인할 수 있다 이번에는 클라우드 스토리지 > 버킷 으로 넘어..
Noa | 당신의 AI PM
Growth Vibes Only