DuckDB 임베딩

DuckDB 임베딩 (Embedding DuckDB)

DuckDB를 자신의 애플리케이션이나 시스템에 내장(embed)해서 쓸 때, 어떤 클라이언트를 골라야 할지 고민이 될 수 있어요. 이번 페이지는 임베딩 상황에서 CLI 클라이언트를 쓰면 안 되는 이유를 설명합니다.

출처: 공식문서

CLI 클라이언트 (CLI Client)

명령줄 인터페이스(CLI) 클라이언트는 대화형(interactive) 사용 사례를 위한 것이지, 임베딩용이 아닙니다. 그래서 악의적인 사용자에게 악용될 수 있는 기능이 더 많아요. 예를 들어 CLI 클라이언트에는 임의의 셸 명령을 실행할 수 있는 .sh 기능이 있습니다. 이 기능은 CLI 클라이언트에만 있고, 다른 DuckDB 클라이언트에는 없어요.

.sh ls

💡 팁: 임베딩할 때 셸 명령으로 DuckDB의 CLI 클라이언트를 호출하는 것은 권장하지 않습니다. Python, R, Java 등 클라이언트 라이브러리 중 하나를 쓰는 것을 권장해요.

더 알아보기 (Learn more)