EDITOR'S NOTE
현재 디이프에서는 다양한 헬스케어 데이터를 식품 데이터와 의미론적으로 연결한 데이터들을 보유하고 있습니다. 따라서 활용할 수 있는 다양한 데이터들이 있는데요. 아무리 많은 데이터가 있더라도 데이터에서 정보를 얻지 못하면 그 데이터들은 의미가 없는 데이터가 됩니다. 오늘은 이러한 데이터에서 정보를 얻기 위해서 데이터를 확인하고 분석할 수 있는 도구인 Redash에 대해 알아보고자 합니다.
대시보드는 연결된 데이터베이스로부터 정보를 가져와 데이터 시각화를 위해 사용되는 정보관리 도구입니다. 대시보드는 다양한 데이터들을 분석하고, 이를 일목요연하게 정리하기 위해 사용하곤 합니다. 또한 대시보드는 의사결정 도구로서 큰 역할을 해내기도 합니다. 분석한 데이터들을 시각화해서 의사결정에 도움을 줄 수 있는 것인데요, 이를 DDDM(Data-Driven Decision Making)이라고 합니다. 데이터 분석의 결과를 통해 다음에 진행할 일을 설계할 수 있게 되는 것입니다.
이러한 대시보드를 제작하기 위해서 가장 중요한 것이 무엇일까요? 바로 실제 대시보드를 사용하는 사람의 니즈를 파악하고, 이에 맞추어 대시보드를 제작하는 것입니다. 그러기 위해서는 어떠한 데이터를 활용하는지, 어떠한 지표를 핵심 지표로 볼 것인지, 어떻게 인사이트를 도출할 것인지를 잘 고민해야 합니다.
이러한 고민에 맞추어 그동안 다양한 Dashboard Tool 들이 개발되어 왔습니다. 흔히 잘 알려진 애플리케이션들로는 Microsoft Power BI, Tableau, Redash 등이 있습니다. 이러한 앱들은 비교적 쉽게 대시보드를 구축하고, 쉽게 시각화할 수 있는 다양한 도구들을 제공해줍니다.
디이프에서는 Redash라는 어플리케이션을 통해서 데이터를 시각화하고 분석합니다. 다양한 도구 중에서 Redash를 이용한 것은 Redash만의 다양한 장점이 있기 때문입니다. 먼저 구축이 어렵지 않고, 가격이 무료라는 점이 가장 큰 장점입니다. Redash의 구축 방법은 Redash의 공식 홈페이지(https://redash.io/)에 자세하게 소개되어 있습니다. 물론 Redash도 단점이 있습니다. 쿼리를 운용하기 위해서 SQL(Structured Query Language)을 사용해야 한다는 점입니다. 하지만, SQL을 사용할 줄 안다면 그만큼 데이터를 처리하고 시각화하기에 좋은 도구입니다.
Redash에서 사용할 수 있는 기능들은 매우 다양합니다. 아래에서 Redash의 다양한 기능들을 소개해 드리겠습니다.
다양한 시각화 도구들
Redash에서 제공하는 시각화 도구들은 매우 다양합니다. 익숙한 차트에서도 막대그래프(Barplot)나 꺾은선 그래프(Distribution plot) 이외에도 파이차트나 산 점도(Scatter plot), 히트맵(Heatmap) 등을 작성할 수 있습니다. 하지만 차트를 그리는 것만으로는 부족한 경우가 많죠. Redash는 코호트(cohort), 피벗 테이블(Pivot table), 그리고 심지어 워드 클라우드(Word Cloud)까지 구현해낼 수 있습니다. 다양한 그래프들을 표현할 수 있는 강력한 툴이라는 것이 Redash의 가장 매력적인 점 중 하나입니다.
스케줄러 기능
간혹 데이터가 가변적이거나 시계열 데이터이기 때문에 내용이 변화하는 경우가 있습니다. Redash에는 자체 스케줄러 앱이 있어서, 특정 시간마다 해당하는 데이터를 갱신해줄 수 있는 기능이 있습니다. 굳이 새로고침을 하지 않아도 알아서 데이터를 갱신시켜줄 수 있다는 것이죠.
메일 기능
Redash는 자체적인 메일 서버를 구동해서 메일을 보내는 것이 가능합니다. 유저 가입 권한을 설정하는 것부터 시작해서 앞서 만든 스케줄러 기능과 연동하여 해당하는 내용을 주기적으로 메일로 받아볼 수 있는 기능까지 가능합니다. 대시보드 설정을 잘한다면 뉴스레터를 받아보듯이 데이터에 대한 개요를 주기적으로 확인할 수 있습니다.
다양한 Plugin extension
Redash는 다양한 DB와 연결할 수 있다는 장점뿐만 아니라 다양한 plugin의 추가를 통해 툴들을 추가할 수 있다는 점들이 장점으로 뽑힙니다. 예를 들어 Python 플러그인을 넣는다면 내부에서 Python 기반의 코드 작성이 가능합니다. 이러한 플러그인의 장점은 사용하는 언어에 맞게 다양한 방식으로 쿼리를 조합할 수 있다는 점입니다. 그뿐만 아니라 잘 활용할 경우, 여러 개의 query 결과들을 혼합해서 새로운 결과를 내고, 분석할 수 있습니다.
디이프는 다양한 데이터를 수집하여 만든 iFÒCore(Insilico Food Core)를 기반으로 음식 및 식품 추천을 진행합니다. 이러한 추천을 진행함에 있어 가지고 있는 데이터의 현황을 파악하고, 분석을 통한 추천 시스템의 개선은 서비스의 유지에 있어 가장 중요한 부분입니다. 대시보드를 통해 데이터를 빠르게 분석해내고, 얻은 인사이트를 기반으로 서비스를 개선해 나감으로써 더욱 서비스를 발전시킬 수 있을 것입니다. 아울러 데이터가 흐르는 조직을 만들고 싶은 디이프의 니즈에 맞추어, Redash의 도입은 데이터 분석을 통한 워크플로우 확립에도 큰 도움이 될 것이라고 예상합니다.