📌 Tableau Server
태블로 서버는 클라우드 환경에서 데이터셋이나 워크시트를 공유하고 협업하기 위해 사용한다.
관리자는 태블로 서버에 업로드 된 파일들에 대한 권한을 관리할 수 있다.
📌 데이터 연결
🤔 태블로와 연결 가능한 데이터 형식
- Microsoft Excel(xlsx)
- Text file(csv)
- JSON file(json)
- PDF file(pdf)
- Spatial file(지리적 데이터)
- Statistical file
- SQL 서버
📌 메타데이터
태블로는 데이터에 연결할 때마다 해당 데이터에 대한 데이터, 즉 메타데이터를 유지한다.
메타데이터 창을 통해 데이터 구조를 한 눈에 확인하고, 필드 이름을 바꾸거나 필드들을 숨길 수 있다.
📌 필드 나누기
태블로는 자동으로 식별자를 구분해 하나의 필드를 두개의 필드로 나눠주는 기능을 제공한다.
단, 사용자가 지정해서 필드를 나누는 것도 가능하다.
📌 데이터 해석기와 피벗
데이터 해석기는 태블로가 제공하는 데이터 준비 도구로,
데이터 해석기를 통해 정리를 수행한 뒤 Review the results를 통해 진행한 작업들에 대해 확인할 수 있다.
피벗은 여러개의 열을 하나의 열로 묶는 작업이다.
🤔 데이터 해석기가 작동하지 않는 경우
- 데이터 소스가 이미 태블로가 해석할 수 있는 형식인 경우
- 데이터가 2000개 이상의 열을 가지거나, 150개 이상의 열과 3000개 이상의 행을 가지는 경우
- 지원되지 않는 형식의 데이터 소스인 경우(xls, xlsx, csv, pdf, 구글 시트 이외의 형식)
📌 조인
조인은 두 테이블을 공통적인 값을 가지는 열인 키를 사용하여 하나의 테이블로 결합하는 방법이다.
🤔 조인 방식
- Inner : 두 테이블 모두에 매칭되는 데이터가 있는경우만을 포함한 테이블 반환
- Left : 기존 테이블의 모든 데이터를 포함하면서, 조인 대상 테이블에 매칭되는 데이터가 없는 경우는 Null로 처리한 테이블 반환
- Join : 조인 대상 테이블의 모든 데이터를 포함하면서, 기존 테이블에 매칭되는 데이터가 없는 경우는 Null로 처리한 테이블 반환
태블로에서는 최대 32개의 테이블까지 조인 가능하며,
데이터 원본을 추가하여 서로 다른 데이터셋간의 조인이 가능하다.
태블로의 조인 과정에서, 조인에 사용할 키를 계산식을 통해 지정할 수 있다.
📌 관계
관계는 여러 테이블의 데이터를 결합하는 새롭고 동적인 방법으로,
테이블을 직접 결합하는 조인과 달리 테이블들이 어떻게 연관되어 있는지를 정의하는 방법이다.
🤔 태블로의 데이터 모델
- logical layer : 관계를 통해 데이터를 연결
- physical layer : 조인과 유니온을 통해 데이터를 연결
logical layer는 physical layer들을 담은 컨테이너와 같다.
📌 유니온
유니온은 서로 다른 테이블들을 수직으로 결합하여 행을 늘리는 방법이다.
📌 블렌딩
블렌딩은 여러 데이터 원본의 데이터를 결합하는 방법으로, 기존의 데이터는 파란색 Primary data source,
새롭게 결합되는 데이터는 주황색 Secondary data source로 표기하며, Left join을 사용하는 방법이다.
조인은 데이터를 결합한 후에 집계하지만, 블렌딩은 데이터를 집계한 후에 결합한다.
📌 데이터 추출
추출된 데이터는 성능 향상을 위해 만들어진 원본 데이터의 부분 집합이다.
🤔 추출된 데이터의 새로고침 옵션
- full refresh : 추출된 데이터를 모두 교체
- incremental refresh : 변화된 데이터만 교체
🤔 데이터 추출의 장점
- 아주 큰 데이터 사용을 지원
- 성능 향상을 도움
- 추가 기능 지원
- 오프라인 데이터 접근 제공
🤔 hyper 추출의 장점
- 더 큰 규모의 추출이 가능
- 추출된 데이터 생성 및 새로 고침 가속
- 더 나은 성능 제공
조인된 테이블이 개별 테이블보다 훨씬 많은 행을 가진다면 다중 테이블을 사용한 추출에 적합하다.
이 경우 쿼리가 진행될 때마다 조인이 수행되며, 시간이 단축된다.
📌 성능을 고려한 데이터 결합
🤔 데이터 결합간 고려할 요소
- 워크북 파일에 연결된 데이터 원본의 수
- 데이터 원본들간의 관련성
- 데이터의 레코드 수
- 만들려는 시각화의 종류
대부분의 경우 조인이 최선의 선택이며, cross-DB 조인이 차선책, 그 다음이 블렌딩이다.
🤔 데이터 결합 방법 고려사항
- 서로 다른 데이터 원본들은 cross-DB 조인 권장
- 게시된 데이터는 cross-DB 조인을 사용하기 위해 추출 권장
- 결합되는 데이터의 양이 많은 경우 블렌딩 권장
- 조인은 1:1 관계인 경우 권장
데이터 원본의 수를 최소한으로 유지하되,
많은 테이블에 접근해야 하는 경우 각 시나리오에 맞게 데이터 원본을 만드는 것이 좋다.
고유한 차원값을 가지는 경우는 블렌딩을 피하는 것이 좋다.