Tableau 설정 1일차

Tableau 설정 1일차
Tableau: Business Intelligence and Analytics Software
Tableau is visual analytics software for business intelligence. See and understand any data with Tableau.

회사에서 신규 서비스를 론칭했습니다. 기존에 사용하고 있던 Metabase에서는 Third Party 데이터와 서비스 데이터베이스를 연결해 지표를 발라 볼 수 없기에 새로운 BI 툴 세팅이 필요했습니다. 마지막에 선택한 BI 툴은 Tableau이고 Tableau를 설정하는 과정에서 Self-Host / Tableau Server (On-premises or Public cloud)에서 Tableau Online (Fully hosted by tableau)으로 바꾸게 된는 과정을 담았습니다.

서비스 초기 개발 단계에서는 지표 확인용 툴로 Metabase를 선택했습니다. Metabase를 선택한 이유는 필요한 핵심 기능들은 모두 제공하고 비 개발자가 다루기 쉬운 점이 장점이 있었기 때문입니다. 또한 모던한 디자인은 시각화한 자료를 보는데 즐거움을 주었습니다. 하지만 마케팅 사이드에서 사용하는 외부 데이터와 서비스 데이터를 조합하는 기능을 지원하지 않았습니다. 외부 데이터를 정제 후 서비스 데이터와 같은 데이터베이스에 저장하여 필요한 정보를 조합하여 조회할 수는 있었지만 이와 같은 작업을 하기에는 리소스가 부족하다고 판단하였고 다른 방법을 찾아보기로 했습니다.

BigQuery 또는 RedshiftData Warehouse에 정제된 데이터를 저장하여 Metabase로 시각화하는 것도 고려해보았습니다. 하지만 지식이 부족하여 비용을 예측할 수 없었고 도입에 이점을 찾을 수 없었습니다.

Don’t use Hadoop - your data isn’t that big
우리에 데이터는 아직 작다.. 😅

Tableau는 이미 서비스 초기 개발 단계에서 언급된 적 있었습니다. 처음부터 Tableau를 도입하지 않은 이유는 큰 비용이 들 것이라는 생각과 리드할 수 있는 사람의 부재였습니다. 비용을 알아보고 큰 비용이 들지 않는다는 것을 알게 되었고 팀원들을 통해 좋은 툴이라는 얘기를 들어 사용하기로 하였습니다. 다양한 라이선스가 있지만 크게 직접 운영하는 Self Host 방식과 Tableau에서 제공하는 서버를 사용하는 Online 방식이 있었습니다. 서비스 데이터베이스는 Private VPC 안에 속해 있어서 Self Host 방식으로  Private VPC 안에 Tableau 서버를 구성하기로 하였습니다.

Tableau Sever를 설치하기 위해 t3a.medium (2 vCPU / 8GB Memory) 인스턴스를 생성하였습니다. 생성된 인스턴스에 설치하는 과정에서 최소사양과 권장 사양이 있다는 것을 알게 되었습니다.

최소 최대
4 Core CPU / 16GB Memory 8 Core CPI / 32GB Memory
vCPU 경우 Core 2배 (8, 16 Core)

테스트를 위해 최소사양으로 인스턴스를 생성 후 설치하였습니다. 하지만 알 수 없이 느린 속도, 빈번히 발생하는 에러로 이번에는 권장 사양으로 인스턴스 생성 후 설치하였습니다. 그런데 권장 사양인 c5a.4xlarge 비용 0.688 * 16 * 20 = $220.16 은 자동 스케줄링으로 하루에 16시간씩 20일을 제한적으로 사용하더라도 부담스러운 금액이었습니다. 예상하는 Tableau 사용자는 1~2명 정도기로 해당 가격만큼 기능을 제공하는지 다시 알아볼 필요가 있었습니다.

하루 동안 설정 및 사용해본 결과 가격에 비해 부족한 기능으로 Self Host를 포기하기로 하였습니다. 이와 같은 결정을 내린 데에는 제공하는 기능들을 정확하게 알아보지 않고 막연하게 "이런 기능도 제공하겠지?"란 기대를 했기 때문입니다. 기대가 큰 만큼 실망도 컸습니다. Third Party 데이터 수집 및 정제할 수 있는 기능과 정제한 데이터를 저장할 수 있는 Data Warehouse 기능을 기대하였지만, Tableau Server는 그러한 기능들을 제공하지 않았습니다.

서비스 데이터를 사용하기 위해선 매번 데이터베이스 연결 정보를 입력해야 했습니다. 그렇지 않으려면 서비스 데이터 조회 Query를 Data Source로 저장하는 방법과 Data Management 라이선스를 추가 구매하는 방법밖에 없었습니다. 또한 서버에서 제공하는 웹에서 사용할 수 있는 기능과 데스크톱에서 사용할 수 있는 기능에 차이가 있는 것도 Self host 서버를 사용해 모든 기능을 웹에서 사용하려는 계획에 걸림돌이 되었습니다.

현재로선 월 30만 원에 비용을 추가로 지불하면서 까지,  Self Host를 선택할 이유가 없습니다. 그래서 Online으로 변경하기로 하였습니다. Tableau Online 대역에서만 접근할 수 있게 AWS 설정과 데이터베이스 유저 권한을 설정했지만 외부에서 접근 가능하다는 점에서 오는 찜찜함은 남아 있습니다. 혹시 제가 모르는 기능이나 30만 원 이상에 가치를 지닌 기능이 있다면 댓글로 알려주세요. 아직 블로그에 댓글 기능은 없지만요. 하하