Shaper - SQL로 데이터 시각화 및 공유 가능한 DuckDB 기반 Metabase 대체제
(github.com/taleshape-com)- 모든 분석을 SQL만으로 작성할 수 있는 DuckDB 기반 오픈소스 데이터 대시보드 플랫폼으로,
- 비즈니스 인텔리전스, 임베디드 분석, 자동 보고서 생성 기능을 포함하며, 자체 호스팅(Self-Hosted) 지원
- Git 기반 워크플로, JWT 기반 행 단위 보안, React SDK를 통한 iframe 없는 임베딩 등 개발자 친화적 구조 제공
- PDF, PNG, CSV, Excel 형식의 보고서 생성과 예약 알림 및 비밀번호 보호 링크 공유 기능을 지원
- MPL-2.0 라이선스로 공개되어 있으며, Docker 실행만으로 빠르게 체험 가능해 스타트업 및 데이터팀의 경량 BI 도구로 유용함
Shaper 개요
-
Shaper는 DuckDB를 기반으로 동작하는 SQL 중심 데이터 시각화 및 공유 도구
- 사용자는 SQL 쿼리만으로 대시보드와 차트를 생성 가능
- 예시 쿼리에서는
date_trunc,count(),BARCHART_STACKED등을 사용해 주간 세션 수를 시각화함
- 오픈소스로 제공되며, 자체 호스팅이 가능
- 공식 문서는 taleshape.com/shaper/docs에서 제공
주요 기능
-
비즈니스 인텔리전스
- SQL-First 접근과 AI-Ready 구조를 갖춤
- Git 기반 워크플로를 통해 버전 관리 및 협업 지원
- 여러 데이터 소스 간 쿼리 실행 가능
-
임베디드 분석
- 화이트라벨링과 사용자 정의 스타일 지원
- JWT 토큰 기반 행 단위 보안(Row-level security) 제공
- JS 및 React SDK를 통해 iframe 없이 임베딩 가능
-
자동화 보고
- PDF, PNG, CSV, Excel 형식의 보고서 자동 생성
- 예약 알림 및 보고서 발송 기능 제공
- 비밀번호 보호 링크를 통해 안전한 공유 가능
빠른 시작 (Quickstart)
- 설치 없이 Docker 명령으로 바로 실행 가능
- 명령어:
docker run --rm -it -p5454:5454 taleshape/shaper - 브라우저에서 http://localhost:5454/new 접속으로 사용 시작
- 명령어:
- Getting Started Guide와 Production Deployment Guide 문서 제공
지원 및 호스팅
- Shaper는 완전한 무료 오픈소스
-
Taleshape에서 관리형 호스팅 및 기술 지원 서비스를 별도로 제공
- 관련 정보는 Plans and Pricing에서 확인 가능
라이선스 및 기술 구성
- Mozilla Public License 2.0 (MPL-2.0) 적용
- 주요 언어 구성: Go (48.8%) , TypeScript (48.1%) , Python (1.0%) 등
요약
- Shaper는 Metabase나 Superset과 유사한 SQL 기반 BI 대시보드 도구로, DuckDB의 경량성과 속도를 활용
- 개발자 친화적 구조, 간단한 배포, 오픈소스 라이선스로 인해 스타트업 및 데이터 분석팀에 적합한 대안임
Hacker News 의견들
-
이 프로젝트가 정말 멋짐, 특히 PDF 리포트 생성 기능이 인상적임
이제는 어떤 제품이든 대시보드를 직접 만드는 게 어리석게 느껴짐
엔터프라이즈 고객들은 어차피 ERP에 통합되길 원함
나는 항상 고객이 직접 시각화를 만들 수 있도록 읽기 전용 DB 연결을 제공해야 한다고 주장해왔음
이런 접근은 10년 전부터 표준이 되었어야 했고, 지금처럼 LLM이 보편화된 시대에는 그 필요성이 더 커졌음
고객도 결국 사람임을 잊지 말아야 함
누구도 또 다른 계정을 관리하고 싶어하지 않음
분석과 알림은 푸시 기반이어야 하고, 자동으로 생성된 리포트가 메일로 발송되며, 고객이 직접 대시보드를 구성할 수 있는 선택지가 필요함
기본값도 중요하지만 위치(context) 역시 중요함- 30년 전쯤에는 그런 접근이 오히려 표준이었음
그때는 Crystal Reports가 널리 쓰였고, 소프트웨어에 번들로 포함되곤 했음
다만 공유 SQL 쿼리 저장소가 없어서, 데이터 모델을 잘 모르면 시간을 낭비하거나 동료에게 직접 받아야 했음
이후 SAP에 인수된 뒤로는 써본 적이 없음 - 1999~2000년쯤 내가 일하던 회사에서도 SAP 도입 후 주요 사용자들에게 HR을 제외한 읽기 권한을 부여했음
그 덕분에 전사 프로세스가 한눈에 보였고, 부서 간 협업 속도가 엄청나게 빨라졌음
지금은 이런 권한을 가진 사람은 거의 없음 - 복잡한 엔터프라이즈 앱이라면 읽기 전용 복제본(read-replica) 을 제공하는 게 필수라고 생각함
고객은 이를 통해 커스텀 리포트 작성, 데이터 웨어하우스 보관, 알림·감사·규제 대응 등 다양한 작업을 수행함
그래서 나는 반쪽짜리 내장 분석 UI나 제한적인 REST API보다 이런 패턴을 선호함
고급 고객은 인증, 모델링, 쿼리를 직접 처리할 수 있음
선택적으로 PostgREST, Hasura, Microsoft DAB 같은 Data API를 제공하면 좋음
AI 에이전트가 데이터 소비 주체가 되는 시대에는 직접 읽기 접근이 필수임
고객 데이터 접근에 요금이나 제한을 두는 시대는 끝났다고 봄 - “산업이 길을 잃었다”는 말에는 공감하지만, 대부분의 엔터프라이즈 앱에서는 트랜잭션 DB를 데이터 웨어하우스로 쓰면 안 됨
푸시 기반 동작은 트랜잭션 환경에서 분석 환경으로 데이터를 옮기는 데만 써야 함
단순한 정적 리포트 수준이라면 웨어하우스는 과함 - Shaper 개발자로서, 나도 리포트 전송 중심 접근에 동의함
많은 사용자가 Shaper를 데이터 필터링 UI로 쓰고 PDF, PNG, CSV로 내보냄
현재는 이 파일들을 Shaper의 task 기능으로 메시지 형태로 자동 전송하는 기능을 개발 중임
- 30년 전쯤에는 그런 접근이 오히려 표준이었음
-
이 제품이 Metabase 대체재인지 궁금했음
나는 Metabase를 많이 쓰는데, 이 제품은 완전히 다른 느낌임- 우리는 Definite에서 여러 Metabase 계정을 대체했음
DuckDB + DuckLake 기반의 내장 레이크하우스를 갖추고 있어서 “DuckDB 기반 Metabase 대체재”라 부를 만함
Snowflake, Fivetran, BI 도구를 따로 사서 연결하지 않아도 되는 임베디드 BI를 지향함 - Shaper 개발자로서 설명하자면, Metabase는 비기술 사용자도 쉽게 대시보드를 만들 수 있는 셀프서비스 BI에 강점이 있음
반면 Shaper는 모든 구성을 SQL 코드로 정의함
설정은 단순하지만, SQL 중심 워크플로우를 선호하는 사람에게는 매우 생산적임
- 우리는 Definite에서 여러 Metabase 계정을 대체했음
-
멋진 작업임
예전에 Jorin을 밋업에서 만났을 때는 단순한 아이디어였는데, 이렇게 꾸준히 발전한 걸 보니 놀라움 -
좋은 도구임, 비슷한 접근의 SQLPage도 함께 언급할 만함
SQLPage는 UI 생성에 초점이 있고 DuckDB를 사용하지 않음
Shaper는 분석·대시보드 중심이며 PDF 생성 기능과 DuckDB를 사용함 -
Metabase도 DuckDB와 잘 호환됨
MotherDuck의 metabase_duckdb_driver 덕분임 -
쿼리 → 리포트 생성 과정을 독립 실행형으로 돌릴 수 있는지 궁금함
HTML만 출력하거나 React 컴포넌트를 직접 프로젝트에 쓸 수 있으면 좋겠음
나는 VSCode 확장을 만들고 있어서 참고하고 싶음 -
MPL 라이선스라니 정말 멋짐, 고마움
-
DuckDB는 써봤지만 Shaper는 처음이라, 무엇에 쓰는 도구인지 궁금했음
README에는 자세한 설명이 부족함- Shaper 개발자로서 설명하자면, SQL만으로 데이터를 시각화하고 대시보드를 만들 수 있음
SQL은 DuckDB에서 실행되므로 모든 DuckDB 기능을 활용 가능함
코드 기반으로 일하고 싶은 사람에게 적합한 미니멀한 도구임
내부용 대시보드나 고객용 임베디드 대시보드 모두 구축 가능함
- Shaper 개발자로서 설명하자면, SQL만으로 데이터를 시각화하고 대시보드를 만들 수 있음
-
우리 회사는 고객용 Metabase 대시보드 대체로 Shaper를 통합했음
단순함이 정말 마음에 듦 -
나도 비슷한 걸 만들고 있었는데, DuckDB의 크기 때문에 포기했었음
하지만 결국 써야 할 것 같음