본문 바로가기

Tableau Desktop/[인프런] 웰컴 투 태블로 월드

[인프런] 웰컴 투 태블로 월드 - 0. 태블로, 첫 걸음을 내딛다.

개요

이번 포스팅은 [인프런] 웰컴 투 태블로 월드 강의 첫 번째 '태블로, 첫 걸음을 내딛다' 색션 내용을 아래 순서로 정리한 글입니다. 

  • 데이터 연결하기
  • 데이터 준비하기
  • 데이터 작업하기

 

대시보드 개발을 위한 여러 가지 BI 툴이 있지만, 저는 국내외로 가장 많이 상용화되어 있는 Tableau를 먼저 선택하였습니다. Tableau는 2가지 버전(Desktop, Public)이 있으며, 다음과 같은 차이점이 있습니다. 

 

  •  Desktop
    • 유료 (2주 간 무료 사용기간)
    • 제작한 워크북을 로컬 머신에 저장 가능
    • DB에 저장된 데이터를 불러올 수 있음
    • Tableau Server에 게시된 데이터 연결 가능
    • 저장된 데이터 원본 연결 가능
  • Public
    • 무료
    • 제작한 워크북 로컬 머신에 저장 불가
    • DB에 저장된 데이터를 불러올 수 없음
    • Tableau Server에 게시된 데이터 연결 불가
    • 저장된 데이터 원본 연결 불가

 

저는 고민 끝에 일단 Desktop 버전을 2주 간 무료로 사용하면서 최대한 많은 기능을 익히기로 계획을 세웠습니다. 이후에 Public 버전도 사용해본 이후에 필요하다면 Desktop 버전을 유료로 사용해보려고 합니다. 

 

참고한 링크는 다음과 같습니다.

 

본문

1) 데이터 연결하기

최초 Tableau Desktop 버전을 실행하면, 화면 좌측에 Tableau에 데이터를 연결하는 3가지 방식으로 '파일에 연결', '서버에 연결', '저장된 데이터 원본'을 확인할 수 있습니다.

 

파일에 연결

  • 로컬에 저장된 데이터를 Tableau에 연결할 때 사용합니다. 
  • Excel, 텍스트(ex: CSV), JSON, PDF, 공간 파일(shape), 통계 파일(R, SPSS, SAS) 등을 연결할 수 있습니다.

 

저장된 데이터 원본

  • Tableau에서 기본적으로 제공하는 샘플 데이터입니다. 
  • Sample - Superstore 선택 시, 데이터 준비 창을 생략하고, 곧바로 데이터 작업창으로 넘어갑니다.

데이터 작업창

 

서버에 연결

  • 클라우드 서버에 저장된 데이터를 Tableau에 연결할 때 사용합니다. -> 실무에서는 주로 클라우드 서버 환경을 사용하므로, 가장 많이 활용될 것이라 생각합니다.
  • Tableau Desktop 버전에서만 사용 가능합니다. 
  • Google Drive, OneDrive, Google BigQuery, PostgreSQL 등에 저장된 데이터를 읽어올 수 있습니다. => 일부 서버는 따로 드라이버를 설치해야 합니다. 
  • '자세히'를 누르면 연결할 수 있는 추가 서버 목록이 출력됩니다.
  • 원하는 서버가 없으면, '기타 데이터베이스(ODBC)' 선택합니다.

 

  • (예시) 구글 드라이브에 저장된 .csv 파일 가져오기
    • 1. 서버에 연결 -> Google Drive 선택
    • 2. 구글 계정 선택 후, 허용 선택
    • 3. Tableau에서 저장된 .csv 파일 선택 후, 연결
    • 4. 선택한 .csv 파일을 연결하여 데이터 준비 창에 로드합니다.

 

 

2) 데이터 준비하기

데이터 준비 과정의 예시로 서로 다른 저장 공간에 저장된 데이터(Sample - Superstore)를 불러와서 join을 수행합니다. 

 

먼저, Tableau에서 기본적으로 제공하는 저장된 데이터 원본의 Sample - Superstore 데이터를 연결합니다.

  • 데이터 준비 창으로 이동한 후, Sample - Superstore의 최초 1000개 데이터를 출력합니다. 

 

 

현재 데이터 준비 창에서 로컬에 저장된 Sample - Superstore.xls 데이터를 연결하기 위해 아래 절차를 수행합니다.

  • 데이터 준비창 좌측 상단 '연결' 옆 '추가'를 선택합니다.
  • 파일에 연결의 Microsoft Excel를 선택합니다.
  • 로컬에 저장된 Sample - Superstore.xls을 선택합니다.

 

최종 Tableau에서 제공하는 Sample - Superstore와 로컬에 저장된 Sample - Superstore 2개의 파일이 Tableau에 연결된 것을 확인할 수 있습니다.

 

마지막으로, 위 2개의 Sample - Superstore 데이터에 대한 join을 수행합니다. 즉, Tableau는 다른 저장소에 저장된 DB 테이블 간의 join이 가능합니다. 예를 들어, Tableau에서 제공하는 Sample - Superstore의 Orders 테이블과 로컬에 저장된 Sample - Superstore의 Returns 테이블의 공통 필드(=칼럼)인 Order ID를 기준으로 join을 수행합니다. 

  • 최종 join을 수행한 결과 테이블에 Order ID 필드가 중복되므로, 한 개 Order ID 필드를 삭제해서 사용합니다.

 

'연결' 방식: 라이브 vs 추출

데이터 준비 창 우측 상단에서 아래 이미지와 같이 라이브 또는 추출 두 가지 연결 방식을 선택할 수 있습니다. 해당 기능은 Tableau desktop 버전에서만 사용 가능합니다.

라이브 vs 추출 두 가지 연결 방식

 

  • 라이브: DB를 향해 쿼리를 날리는 방식
    •  장점
      • DB가 실시간으로 업데이트될 때마다 내가 만든 화면에서 새로고침을 통해 신속하게 반영할 수 있습니다.
    •  단점
      • DB에 부하가 걸릴 수 있습니다.
      • 추출 방식에 비해 상대적으로 처리 속도가 느립니다.
  • 추출: DB 상태를 스캔본으로 떠서 로컬 PC에 저장해두고, Tableau에서 이를 로드하여 쿼리를 날리는 방식
    •  장점
      • 라이브 방식에 비해 상대적으로 처리 속도가 빠릅니다. -> DB 상태 스캔본으로 쿼리를 날리기 때문
      • Tableau의 모든 기능을 사용할 수 있습니다. -> DB 상태 스캔본을 Tableau에서 로드하기 때문
    •  단점
      • 라이브 방식에 비해 상대적으로 실시간으로 업데이트 된 DB를 화면에 반영하는 주기가 느립니다.
      • 업데이트 된 DB를 화면에 반영하려면 추출을 다시 수행해야 하는데, Tableu Server를 이용하면, 최소 15분 주기로 DB 스캔본 생성이 가능합니다.

결론적으로, 어떤 화면(실시간으로 수집되는 데이터 시각화 등)을 만들 것인지, 사용하는 DB가 무엇인지, DB 크기 등에 따라 라이브 또는 추출 방식을 선택합니다. 

 

필터

데이터 준비 창 우측 상단에서 아래 이미지와 같이 필터 기능을 확인할 수 있습니다. 해당 필터는 대용량 데이터를 취급할 때, 적절하게 사용 가능합니다.

 

 

예를 들어, 위에서 불러온 Sample - Superstore의 Orders 테이블의 Order Date 필드가 2020년인 데이터만 필터링할 경우, 아래 절차로 수행합니다. 

  • 1) 추가 버튼 클릭
  • 2) OrderDate 선택
  • 3) 선택
  • 4) 2020년 선택
  • 5) 확인

 

결론적으로, 아래와 같이 Order Date가 2020년인 데이터만 필터링을 수행할 수 있습니다.

 

 

3) 데이터 작업하기

마지막으로, 준비한 데이터를 실제로 분석 및 시각화를 수행하는 데이터 작업창의 다양한 기능을 소개합니다. 마찬가지로, Tableau에서 제공하는 Sample - Superstore를 샘플 데이터를 사용합니다. 

 

데이터 탭

최초 데이터를 Tableau에 연결하면, 데이터 작업창 좌측 데이터 탭에서 테이블과 매개 변수를 확인할 수 있습니다. 또한, 각 테이블은 차원측정값을 포함하고 있습니다.

 

각 의미를 가볍게만 살펴봅니다.

  • 차원: 측정값을 어떤 관점으로 바라볼 것인가?
  • 측정값: 숫자

Tableau Desktop 2020.4 기준

 

샘플 갤러리 & 데이터 작업창 살펴보기

도움말 탭 -> 샘플 갤러리를 선택하면, 작업 샘플을 로드할 수 있습니다. (단, 제가 사용하고 있는 Tableau desktop 버전에서 강의에서 사용하는 샘플을 갤러리를 로드하지 못하여 동일한 열, 행, 필터, 마크 값을 저장했습니다.)

  • (참고) '마크' -> '예측 표시기' 저장 방법
    • 시각화 차트(=비주얼리제이션) 우클릭 -> 예측 -> 예측 표시 선택

 

이제 위 데이터 작업창을 하나씩 살펴봅니다. 

  • 열 선반(Column Shelf) & 행 선반(Row Shelf)
    • 열과 행에 대입할 차원 및 측정값을 올립니다.
    • 초록색은 연속형 데이터를, 파란색은 불연속형 데이터를 의미하고, 서로 변경 가능합니다.
    • '선반' 이외에도 '필터', '마크'에 차원과 측정값을 올릴 수 있습니다.

 

  • 새 워크시트: 새로운 워크시트를 생성합니다. 

 

  • 새 대시보드: 새로운 대시보드를 생성합니다.
    • 대시보드: 여러 개의 시트를 조합하여 하나의 화면에 출력한 것입니다.

 

  • 새 스토리: 새로운 스토리를 생성합니다.
    • 스토리: 여러 개의 시트와 대시보드가 조합된 스토리 라인 (PPT와 유사)
    • 캡션을 추가해가면서 작업을 수행합니다.

 

다음으로, 작업 메뉴를 살펴봅니다.

 

  • 태블로 마크: 데이터 연결 창으로 곧바로 이동합니다.
    • 데이터 연결 창으로 이동후에 다시 데이터 작업창으로 돌아가려면, ESC를 입력합니다.

 

  • Undo & Redo: 이전 & 이후 작업으로 돌아갑니다.
    • 단축키
      • Undo: ctrl+z (Windows) / cmd+z (Mac) 
      • Redo: ctrl+y (Windows) / cmd+shift+z (Mac)

 

  • 새 데이터 원본: 데이터 작업창에서 곧바로 새로운 데이터를 연결할 수 있습니다. 

 

  • 시트 지우기: 작업창을 초기 상태로 되돌립니다.
    • (참고) 시트를 잘못 초기화했다면, Undo 버튼을 눌러서 이전 작업으로 돌아갈 수 있습니다.

 

  • 행과 열 바꾸기: 행 선반과 열 선반에 올린 필드를 서로 바꿉니다(Transpose).

 

  • 오름차순 & 내림차순: 집계 데이터를 기준으로 오름차순 또는 내림차순으로 정렬합니다.

 

  • 마크 레이블 표시: 차트 상단에 데이터 레이블을 출력합니다.

 

  • 화면 크기 고정: 시트에 시각화할 차트 크기를 조절합니다.

 

 

  • 프레젠테이션 모드
    • 시각화 차트(비주얼리제이션)를 프레젠테이션 모드로 전환합니다.
    • 이전 편집 모드로 돌아가려면, ESC를 입력합니다.

 

  • 표현 방식: Tableau에서 제공하는 빠르게 차트를 그릴 수 있는 기능입니다.
    • (ex) 표현방식 메뉴를 차트 그리기
      • Region 필드를 클릭하고, 동시에 ctrl 키를 누른 채로 Sales 필드를 클릭합니다. 
      • 이 상태에서 표현 방식 메뉴를 확인하면, 위에서 선택한 두 개의 필드로 시각화할 수 있는 차트를 활성화해줍니다. -> 활성화되지 않은 차트는 선택한 두 개의 필드만으로는 그릴 수 없음을 의미합니다.

 

 

마무리

이번 포스팅에서는 Tableau desktop 버전을 기준으로 기본적인 3가지 창(데이터 연결 창, 데이터 준비 창, 데이터 작업창)의 기능을 정리하였습니다. 데이터 연결 창에서는 3가지 방식(로컬 데이터 연결, 클라우드 서버 데이터 연결, Tableau 기본 제공 데이터 연결)으로 Tableau에서 데이터를 연결할 수 있습니다. 데이터 준비 창에서는 Tableau에 연결한 데이터를 확인할 수 있으며, 이기종 저장소에 존재하는 각 데이터 테이블을 하나의 테이블로 join 할 수 있습니다. 마지막으로, 데이터 작업창에서는 기본적으로 '시트' 단위로 시각화 차트를 그릴 수 있으며, 대시보드, 스토리 형태로도 그릴 수 있습니다. 

 

다음 포스팅에는 본격적으로 Tableau를 사용하여 시각화할 수 있는 차트에 관하여 글로 정리할 예정입니다.

감사합니다 :)