-
Redash란?
데이터 시각화&대시보드 플랫폼으로 데이터 소스를 연결해서 쿼리를 실행하고 결과 값을 시각화 할 수 있다. RDB 이외에도 스프레드 시트나 빅쿼리 같은 데이터 소스도 연결 할 수 있어서 편리하게 사용 할 수 있고, 사용자 관리가 용이해서 사내 데이터 공유용으로 Redash를 사용하고 있다.
Redash 꿀팁
보통 타팀에서 보고 싶은 데이터 요청이 오거나 R&D 본부 내부에서 신규 기능이 개발되었을 때 대시보드를 제작한다. 사용량 추이나 많이 사용하는 유저들의 계약유지 여부, 어떤 카테고리를 많이 쓰는지 등등 여러 쿼리를 만들고 이를 대시보드로 한번에 모아서 전달하면 편하게 데이터를 공유 할 수 있다. 쿼리만으로 되지않는 데이터를 원할때가 있는데 이럴땐 ETL 작업도 하지만 ETL 까지 하기엔 애매한 작업인 경우가 있다. 특히 데이터 소스가 다른 경우 쿼리로 합칠 수가 없어서 난감한 경우가 있는데 리대시에서는 쿼리 결과끼리 JOIN 할 수 있는 기능을 제공한다.
리대시에는 우리가 만든 쿼리나 대시보드들을 저장하기 위한 리대시 자체 DB(postgresDB)가 있다. 쿼리를 작성하고 저장하면 리대시 DB에 'query_번호' 이런 형식으로 쿼리 결과가 저장이 된다. 데이터 소스에 미리 Query Result DB를 연결 해놓고 쿼리 작성시 데이터 소스를 연결해둔 Query Result DB를 선택해서 사용한다. 결과를 가져오고 싶은 쿼리 결과의 쿼리 번호를 확인해서 from 절에 쓰면 해당 쿼리 결과가 불러와진다. 이를 이용해 여러 쿼리 결과를 마치 테이블 처럼 사용 할 수 있다. (리대시 DB를 사용하는 만큼 부하가 좀 걸리는 편이고 느려서 결과 값이 큰 경우에는 사용하는 것은 자제하고 있다.)
쿼리번호 877 select * from query_877
877 쿼리와 850 쿼리를 합치고 싶다면 아래와 같이 작성 할 수 있다.
select * from query_877 t1 inner join query_850 t2 on t1.id=t2.id
데이터 소스가 다른 경우 특히 유용하게 사용할 수 있는 팁이다.
'데이터 엔지니어링' 카테고리의 다른 글
카프카를 통한 실시간 데이터 파이프라인 구축기 (0) 2023.09.27 간단 카프카 정리 (0) 2023.07.08 firebase + BigQuery 이벤트로그 쿼리 Tip (0) 2023.06.19 Airflow execution date와 실행시간에 대하여 (0) 2023.05.10 Elastic Search & Logstash (0) 2023.04.12 댓글