# Show GN: DuckDB 위에서 dplyr 스타일 파이프라인을 실험해봤습니다

> Clean Markdown view of GeekNews topic #25584. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=25584](https://news.hada.io/topic?id=25584)
- GeekNews Markdown: [https://news.hada.io/topic/25584.md](https://news.hada.io/topic/25584.md)
- Type: show
- Author: [mrchypark](https://news.hada.io/@mrchypark)
- Published: 2026-01-06T00:07:48+09:00
- Updated: 2026-01-06T00:07:48+09:00
- Original source: [duckdb.org](https://duckdb.org/community_extensions/extensions/dplyr)
- Points: 2
- Comments: 0

## Topic Body

DuckDB를 분석 작업에 쓰면서  
SQL만으로도 충분히 많은 일을 할 수 있다고 느꼈습니다.  
  
다만 개인적으로는,  
SQL을 쓰다 보면 분석 과정이 길어질수록  
CTE를 점점 많이 쓰게 되는 패턴이 반복됐습니다.  
  
중간 상태를 이름 붙여 고정하지 않으면  
제가 어떤 생각 순서로 이 쿼리를 만들었는지를  
스스로도 놓치기 쉬웠기 때문입니다.  
  
---  
  
##### dplyr 문법이 떠오른 이유  
  
R을 오래 써온 사용자라서인지,  
`filter → mutate → group_by → summarise`처럼  
테이블을 단계적으로 다루는 dplyr 문법이  
계속 머릿속에 남아 있었습니다.  
  
SQL로도 같은 작업은 가능하지만,  
사고의 순서를 코드에 그대로 남기기에는  
조금 불편하다고 느꼈습니다.  
  
---  
  
##### 그래서 DuckDB 위에서 작은 실험을 해봤습니다  
  
R 런타임을 다시 얹고 싶지는 않았고,  
그렇다고 이 감각을 설명만으로 전달하기도 어려워서,  
DuckDB extension 형태로 dplyr 스타일 파이프라인을  
SQL로 변환하는 작은 실험을 만들어봤습니다.  
  
현재는 다음 정도만 다룹니다.  
  
* `select`, `filter`, `mutate`  
* `arrange`  
* `group_by`, `summarise`  
* 기본적인 집계 함수들  
  
조인이나 복잡한 재구조화(pivot 등)는 아직 다루지 않습니다.  
완전한 dplyr 호환을 목표로 한 프로젝트도 아닙니다.  
아직은 제 개인적인 불편함에서 출발한 실험이라,  
비슷한 고민을 해보신 분들의 의견도 궁금합니다.

## Comments



_No public comments on this page._
