View Categories

DuckDB 데이터베이스를 안전한 REST API로 노출하는 방법

읽는 데 12분 소요

DuckDB 로고 덕DB REST API

DuckDB 쿼리를 안전한 방식으로 변환하세요 REST API — httpserver 확장 프로그램이 없으면 호스팅할 서비스가 없습니다.

DuckDB는 서버 프로세스나 내장 인증 기능이 없는 빠르고 파일 기반의 분석 엔진입니다. SQL 쿼리를 저장하여 데이터를 분석하세요. .duckdb 파일을 생성하고, 수신자별 API 키를 발급하고, 파트너에게 실제 JSON 엔드포인트를 제공하는 등의 작업은 필요하지 않습니다. http서버 확장 기능을 노출할 필요도 없고, FastAPI 래퍼를 빌드할 필요도 없고, 데이터베이스 파일을 배포할 필요도 없습니다. 관리되는 읽기 전용 파일만 있으면 됩니다. DuckDB REST API 몇 분 안에.

실행할 서버가 없습니다 수신자별 키 읽기 전용 강제 적용 배포할 항목이 없습니다

Query Streams는 저장된 모든 DuckDB 쿼리를 파트너가 바로 사용할 수 있는 REST API 엔드포인트로 변환하는 안전한 실시간 데이터베이스 통합 플랫폼입니다. 수신자별 키, 읽기 전용 적용, 전체 감사 추적 기능을 제공합니다. 라이브 방송을 시청하세요 DuckDB REST API 서버를 실행하지 않고 설치하는 것 http서버 확장 프로그램이나 데이터베이스 파일 전송에 대해 알아보세요. QueryStreams.com에서 더 자세히 알아보세요. 그리고 무료로 가입하세요 DuckDB 엔드포인트를 몇 분 만에 게시하세요.

DuckDB 데이터베이스를 REST API로 공개하는 이유는 무엇일까요?

DuckDB가 뛰어난 이유는 서버가 없기 때문입니다. 프로세스 내에서 실행되며 단일 디스크에서 데이터를 읽습니다. .duckdb 서버리스는 파일(또는 Parquet, CSV, JSON 형식의 데이터를 직접 쿼리)을 처리하고, 노트북이나 cron 서버에서 컬럼 스토어 속도로 분석 워크로드를 처리합니다. 하지만 팀 외부의 누군가가 해당 데이터가 필요할 때, 예를 들어 클라이언트가 실시간 피드를 원하거나, 파트너의 앱이 집계 데이터를 읽어야 하거나, 분석가가 대시보드에서 집계 데이터를 필요로 할 때, 서버리스의 강점은 오히려 걸림돌이 됩니다. 연결할 포트도 없고, 제공할 로그인 정보도 없습니다. 일반적인 해결 방법들은 모두 비효율적입니다. 이메일을 보내는 수밖에 없죠. .duckdb (이제 당신의 데이터 전체 복사본이 다른 사람의 드라이브에 저장되어 있습니다.) 당신은 커뮤니티를 일어서게 됩니다. http서버 확장 프로그램이나 FastAPI 래퍼를 사용하면 (이제 HTTP 서비스, 인증 및 TLS를 소유하게 됩니다) 또 다른 CSV 내보내기를 예약할 수 있습니다. DuckDB REST API 깔끔한 버전입니다. 파트너는 파일이 아닌 URL과 토큰을 받습니다. Query Streams는 저장된 쿼리와 키를 함께 제공합니다.

서버 없음, 열린 포트 없음

DuckDB에는 네트워크 리스너가 없으며, 추가할 필요도 없습니다. 네트워크 에이전트가 사용자의 네트워크 연결을 읽습니다. .duckdb 로컬에 파일을 저장하고 외부로 전화를 걸면, 수신 전화는 해당 외부 연결을 통해 다시 연결됩니다.

수신자별 API 키

모든 수령인은 각자 하나씩 받습니다. qsapi_* 키. 다른 키는 건드리지 않고 하나만 취소할 수 있습니다. 복구해야 할 파일도 없고, 변경해야 할 암호도 없습니다.

본래 읽기 전용으로 설계되었습니다.

에이전트는 DuckDB를 읽기 전용으로 열고 유효성 검사기가 SELECT 문이 아닌 모든 문을 거부합니다. 없습니다. 설치하다, 복사, 또는 붙이다 API를 통한 경로.

SQL 쿼리와 파일은 비공개로 유지됩니다.

수신자는 엔드포인트 URL, JSON 응답 및 노출된 필터를 볼 수 있지만 SQL, 스키마 또는 기타 정보는 절대 볼 수 없습니다. .duckdb 파일 자체.

호스팅하거나 패치할 사항이 없습니다.

아니요 http서버 확장 기능을 통해 노출하는 방식이며, FastAPI 앱이나 리버스 프록시가 필요하지 않습니다. 엔드포인트는 관리형 기능으로 실행되므로 배포 파이프라인이나 TLS 로테이션을 직접 관리할 필요가 없습니다.

영구적, 만료 예정 또는 자체 파괴 가능

엔드포인트를 영구적으로 유지하거나, 특정 날짜에 만료되도록 설정하거나, 설정된 요청 횟수 후 자동으로 삭제되는 고정 호출 예산을 지정할 수 있습니다.

DuckDB에 REST API를 배포하는 일반적인 방법과 그 문제점

여기에는 여러 가지 실제적인 옵션이 있으며, 각 옵션마다 장점이 있습니다. 하지만 모든 옵션에는 인프라를 직접 관리하거나, 데이터의 전체 복사본을 제공하거나, 또는 둘 다를 해야 한다는 단점이 있습니다. 특정 파트너가 특정 결과 집합을 읽을 수 있도록 하는 것이 목표일 때, 일반적인 접근 방식과 Query Streams 공유 엔드포인트를 비교 분석해 보겠습니다.

우려 httpserver 확장 프로그램(자체 호스팅) DIY FastAPI + duckdb .duckdb 파일을 전송하세요 쿼리 스트림
네트워크 노출 HTTP 서버를 실행하고 공개합니다. 당신은 서비스를 운영합니다 없음 — 하지만 데이터는 당신의 통제 범위를 벗어납니다. 발신 전용 에이전트 - 수신 포트 없음
수령인이 소지하고 있는 것 기본적으로 임의의 SQL 쿼리를 실행하는 URL 서비스로 연결되는 URL 데이터베이스 전체 사본 하나의 쿼리에 사용되는 단일 목적 키
데이터/스키마 노출 전체 데이터베이스, 모든 테이블 직접 코딩하는 모든 것 모든 것, 영원히 저장된 쿼리 하나, 그 외에는 아무것도 없습니다.
수신자별 키 + 취소 내장되어 있지 않음 직접 만들어 보세요 공유되면 불가능해진다 내장형
모든 통화에 대한 감사 로그 직접 추가하세요 직접 추가하세요 전혀 보이지 않음 내장형
TLS를 운영/패치/로테이션합니다. 네, 영원히 네, 영원히 실행할 것이 없습니다 관리해 드립니다
데이터는 실시간으로 유지됩니다. 보내는 순간 효력을 잃어버립니다. 모든 통화에서 실시간으로 진행됩니다.

httpserver 확장 프로그램 없이 HTTP를 통해 DuckDB를 제공하고 싶으신가요?

커뮤니티 http서버 확장 기능은 사용자가 제어하는 머신에서 임시 쿼리 엔드포인트를 실행하는 데 유용합니다. 하지만 임의의 SQL 쿼리를 실행하고 수신자별 키, 할당량 또는 감사 추적 기능이 없으므로 파트너에게 제공하기에는 적합하지 않습니다. 지정된 파트너에게 자체 키를 가진 관리형 읽기 전용 결과 집합을 제공하고 서버를 실행할 필요가 없도록 하려면 Query Streams가 바로 그 역할을 수행합니다.

Query Streams를 사용하면 DuckDB 쿼리를 REST API로 변환할 수 있습니다.

DuckDB 파일 옆에 네트워크 에이전트를 설치하고 커넥터를 구성한 후에는 저장된 쿼리를 공유 REST 엔드포인트로 승격하는 데 약 3단계가 소요됩니다. Excel, Google Sheets 또는 MCP 서버용 쿼리 스트림을 이미 사용하고 있다면 에이전트와 커넥터가 이미 설치되어 있으므로 2단계부터 시작할 수 있습니다.

1

에이전트가 DuckDB 파일을 가리키도록 설정하세요.

사용자 데이터가 저장된 컴퓨터에 네트워크 에이전트를 설치하십시오. .duckdb 파일을 열고 DuckDB 커넥터를 추가합니다. 에이전트는 파일을 읽기 전용으로 열고 Query Streams에 대한 아웃바운드 TLS 연결을 설정합니다. 인터넷에는 아무것도 노출되지 않습니다.

2

SQL 쿼리를 저장하세요

쓰세요 선택 DuckDB 연결을 사용하는 쿼리 빌더에서 집계, 윈도우 함수, 첨부된 Parquet, CSV 또는 JSON 파일에 대한 읽기 등 모든 작업을 수행할 수 있습니다. 이름을 지정하고 저장하세요.

3

홍보하고 핵심 정보를 공유하세요

설치 탭을 열고 엔드포인트 유형(영구, 만료형 또는 통화 예산)과 출력 형식을 선택한 다음 이메일로 수신자를 초대하세요. 수신자는 매직 링크 클레임과 자신의 계정을 받게 됩니다. qsapi_* 열쇠.

하나의 저장된 쿼리, 다양한 표면

저장된 DuckDB 쿼리를 사용하여 Excel 새로 고침, Google Sheets 사이드바, Claude 또는 Cursor 대화를 실행할 수 있습니다. MCP 서버, 그리고 동시에 파트너에게 제공되는 REST 엔드포인트도 생성할 수 있습니다. 쿼리는 한 번만 작성하면 되고, Query Streams가 모든 인터페이스를 처리합니다.

실행할 서버도 없고, 전달할 파일도 없습니다.

팀들이 다른 방식 대신 이 방식을 선택하는 이유는 바로 보안 모델 때문입니다. http서버 확장자 또는 공유 파일. DuckDB 파일은 사용자의 컴퓨터를 벗어나지 않으며, 파일 경로는 네트워크의 에이전트 구성 내에만 존재합니다. DuckDB 클라우드로 전송되지 않으며 수신자에게 노출되지 않습니다. DuckDB 자체는 읽기 전용 모드로 열리며, 네트워크의 유효성 검사기가 SELECT 문이 아닌 모든 문을 거부합니다. 읽기 전용 위반 실행되기 전에.

읽기 전용 정책 시행 외에도, 동일한 아웃바운드 전용 에이전트(포트 443의 HTTPS, 인바운드 포트 또는 VPN 미사용)가 모든 엔드포인트의 수신자별 제어 기능을 지원합니다. 여기에는 IP 및 CORS 허용 목록, 2단계 속도 제한, 그리고 공유하기 전에 강화할 수 있는 선택적 바이트 할당량이 포함됩니다. 발신 전용 연결 및 수신자별 안전장치 작동 방식 →

DuckDB REST API를 호출하세요

수신자는 다른 REST API와 마찬가지로 베어러 토큰과 URL을 사용하여 엔드포인트를 호출합니다. 노출된 저장된 쿼리 매개변수는 호출별로 설정할 수 있으며, 쿼리 문자열에 설정할 수도 있습니다. 얻다 또는 JSON 본문에 우편에이전트는 해당 값을 문자열 연결이 아닌 적절한 준비된 문 매개변수로 바인딩하므로 수신자가 필터를 우회하여 SQL을 삽입할 수 없습니다.

필터 매개변수를 사용한 GET 요청
# 수신자가 DuckDB 기반 엔드포인트에 대해 호출합니다. -시간 “권한 부여: Bearer qsapi_K7…ZmQ” \ “https://api.querystreams.com/v1/endpoints/revenue-by-month?year=2026&region=EMEA”

호출별로 출력 형식을 선택하세요. 수용하다 헤더(또는 ?형식= 쿼리 매개변수): JSON 단일 배열의 경우, CSV 스프레드시트 및 팬더스의 경우, 또는 스트리밍 엔드포인트에서, NDYSON (한 줄에 하나의 JSON 행)은 파이프라인에서 파싱을 즉시 처리하는 데 유용하며, DuckDB가 생성하도록 설계된 대규모 분석 결과 세트에 적합합니다. 대역폭에 민감한 사용자는 이 옵션을 선택하세요. LZ4 페이로드 압축 Accept-Encoding: lz4압축되지 않은 응답도 표준을 따릅니다. gzip 자동으로 네트워크를 통해 전송됩니다. 정적 모드와 스트리밍 모드, 네 가지 네트워크 조합, OpenAPI 3.1 생성에 대한 자세한 내용은 다음을 참조하십시오. SQL 데이터베이스를 위한 즉시 사용 가능한 REST API 가이드.

사용량에 따라 요금이 부과되는 방식

API 플랫폼은 모든 Query Streams 플랜에 포함되어 있으며 별도의 구독이 필요하지 않습니다. Accept-Encoding: lz4 실제로 이동한 압축된 바이트에 대한 청구서를 발행합니다. API 플랫폼 사용량 측정 방식 →

Power BI, Tableau 등 JSON 파일을 읽을 수 있는 모든 프로그램에 연결하세요.

DuckDB는 분석 엔진이므로 대부분의 경우 결과는 대시보드로 전송됩니다. 모든 엔드포인트가 표준 결과를 반환하기 때문입니다. JSON CSV 및 스트리밍 NDJSON 형식을 지원하므로 REST 피드를 읽을 수 있는 모든 도구는 별도의 설치 없이 DuckDB 데이터를 직접 사용할 수 있습니다. 파워 쿼리 Microsoft BI 스택으로 진입하는 가장 쉬운 방법은 다음과 같습니다. 파워 BI 선택하다 웹에서 데이터 가져오기 →엔드포인트 URL을 붙여넣고, 다음을 추가하세요. 권한 부여 헤더를 포함하면 Power Query가 JSON을 구문 분석하여 데이터 모델에 제공되는 새로 고침 가능한 테이블로 변환합니다. (스프레드시트 내의 실시간 데이터의 경우 기본 기능을 사용합니다.) Query Streams Excel 추가 기능 더 간단한 방법입니다. Power Query는 Power BI 모델 자체에서 데이터를 가져오려는 경우에 사용할 수 있습니다.

마이크로소프트 파워 쿼리 로고 파워 쿼리 데이터 가져오기 → 웹에서 URL과 베어러 토큰을 붙여넣고 JSON을 새로 고침 가능한 테이블로 확장합니다.
마이크로소프트 파워 BI 로고 파워 BI 동일한 Power Query 엔진을 사용합니다. 엔드포인트를 모델에 바로 로드하고 새로 고침을 예약하세요.
타블로 로고 테이블 실시간 대시보드를 위해 웹 데이터 커넥터 또는 JSON 소스를 해당 엔드포인트로 연결하세요.
우체부 로고 우편 집배원 OpenAPI 3.1 사양을 가져온 다음, 한 번의 클릭으로 요청을 보내고, 검사하고, 공유하세요.

또한 영양을 공급합니다 n8n, 퀼릭, , 파이썬 (요청 또는 pandas.read_json), Insomnia, Hoppscotch 또는 HTTP 요청을 보내고 JSON을 읽을 수 있는 모든 스크립트 또는 워크플로.

로컬 파일 및 네트워크 공유와 호환됩니다.

네트워크 에이전트는 로컬 네트워크에도 동일한 방식으로 연결됩니다. .duckdb 파일, 네트워크 공유의 데이터베이스 파일 또는 메모리 내 DuckDB 등 어떤 형식의 데이터든 에이전트를 통해 데이터를 가져올 수 있으며, Parquet, CSV 또는 JSON 파일 등 DuckDB 인스턴스에서 접근 가능한 모든 쿼리를 처리할 수 있습니다. 지연 시간을 최소화하려면 데이터가 저장된 머신 또는 그 근처에서 에이전트를 실행하세요. 하나의 Query Streams 계정으로 여러 머신과 사이트에서 에이전트를 실행할 수 있으며, 단일 엔드포인트는 어떤 에이전트가 서비스를 제공하든 동일하게 작동합니다.

DuckDB보다 더

동일한 워크플로를 통해 PostgreSQL, Microsoft SQL Server, MySQL, MariaDB, SQLite, Microsoft Access, Snowflake, Oracle 또는 BigQuery에서 저장된 쿼리를 REST 엔드포인트로 전송할 수 있습니다. DuckDB는 가장 빠르게 성장하는 시작점 중 하나입니다. 더 자세히 알아보세요. 커넥터 설정 가이드 현재 목록을 보려면.

자주 묻는 질문

서버를 실행해야 하나요, 아니면 httpserver 확장 프로그램을 설치해야 하나요? +
아니요. DuckDB는 현재와 마찬가지로 프로세스 내 파일 기반 엔진으로 유지됩니다. 네트워크 에이전트는 사용자의 계정을 열어줍니다. .duckdb 자신의 컴퓨터에서 파일을 읽기 전용으로 설정하고 외부 TLS 연결을 설정합니다. 에이전트.쿼리스트림스.com 443번 포트에서. 없습니다. http서버 확장 프로그램을 설치할 필요도 없고, 포트를 열 필요도 없으며, 인바운드 방화벽 규칙을 추가할 필요도 없습니다.
수신자가 내 SQL 쿼리를 볼 수 있거나 내 .duckdb 파일을 다운로드할 수 있나요? +
절대 그렇지 않습니다. 수신자는 엔드포인트 URL, 응답 본문, 그리고 필터로 노출한 모든 매개변수를 볼 수 있습니다. SQL 쿼리는 쿼리 스트림 내부에 유지됩니다. .duckdb 파일은 절대 사용자의 컴퓨터를 벗어나지 않습니다. 이메일로 파일을 보내는 것과는 달리, 사용자의 데이터 사본이 수신자의 드라이브에 저장되지 않습니다.
이것은 DuckDB httpserver 확장 프로그램과 어떻게 다른가요? +
커뮤니티 http서버 확장 기능은 사용자가 제어하는 시스템을 임의의 SQL 쿼리를 실행하는 HTTP 엔드포인트로 변환합니다. 이는 빠른 내부 액세스에 유용하지만, 수신자별 키, 할당량, 감사 추적 기능이 없으며, 사용자가 직접 호스팅하고 보안을 유지해야 합니다. Query Streams는 이와는 반대로 외부 공유에 더욱 집중된 방식을 취합니다. 저장된 쿼리 하나가 하나의 엔드포인트가 되고, 각 수신자는 취소 가능한 고유 키를 가지며, 모든 호출이 감사되고, 사용자가 배포하거나 패치해야 할 것이 전혀 없습니다.
API는 어떤 출력 형식을 반환할 수 있습니까? +
JSON(기본값), CSV, 그리고 스트리밍 엔드포인트에서는 DuckDB가 생성하는 대규모 분석 결과 세트에 적합한 NDJSON 형식을 지원합니다. 수신자는 호출 시 형식을 선택할 수 있습니다. 수용하다 헤더 또는 ?형식= 매개변수. 4선 조합 및 LZ4 압축 →
DuckDB에서 Parquet, CSV 또는 JSON 파일을 읽을 수 있습니까? +
네. 저장한 모든 것. 선택 DuckDB에서 읽어올 수 있는 모든 데이터 유형(네이티브 테이블, 첨부된 Parquet 또는 CSV 파일, JSON 문서, 또는 이러한 여러 데이터를 통합한 뷰)은 엔드포인트가 될 수 있습니다. 수신자는 JSON 결과만 보게 되며, 해당 데이터가 테이블에서 왔는지 파일에서 왔는지는 알 수 없습니다.
엔드포인트가 만료되거나 자체적으로 삭제될 수 있나요? +
예, 엔드포인트는 영구적일 수도 있고, 특정 날짜에 만료될 수도 있으며, 정해진 요청 횟수 이후에는 사용이 중단되는 고정 호출 예산을 가질 수도 있습니다. 또한, 수신자의 키는 다른 수신자에게 영향을 주지 않고 즉시 취소할 수 있습니다. 엔드포인트 수명 및 키 폐기에 대한 설명 →
DuckDB 에이전트는 어디에서 실행되어야 하나요? +
DuckDB 파일에 접근할 수 있는 기기(로컬 저장소가 있는 컴퓨터 등)에서 .duckdb 파일 또는 해당 파일이 있는 네트워크 공유에 액세스할 수 있는 에이전트를 사용하십시오. 지연 시간을 최소화하려면 데이터에 최대한 가까운 위치에서 실행하십시오. 하나의 Query Streams 계정으로 여러 대의 컴퓨터와 사이트에 걸쳐 여러 에이전트를 실행할 수 있으며, 각 에이전트는 동일한 엔드포인트를 처리할 수 있습니다.
수신자에게 Query Streams 계정이 필요한가요? +
아니요. 이메일로 개인에게 공유하면 해당 사용자가 매직 링크 키를 발급받거나(무료 등급 조직이 자동으로 생성됨) 무인 기기 간 액세스를 위한 서비스 키를 발급받을 수 있습니다. 수신자별 키 vs 서비스 키 →

시작하기

DuckDB REST API를 무료로 처음 게시하세요.

가입 후 DuckDB 파일 옆에 네트워크 에이전트를 설치하고 SQL 쿼리를 저장한 다음 수신자에게 매직 링크 클레임을 이메일로 보내세요. 수신자별 키, 읽기 전용 적용, 전체 감사 추적 기능이 첫 호출부터 활성화됩니다.

관련 가이드: SQL 데이터베이스를 위한 즉시 사용 가능한 REST API | PostgreSQL을 REST API로 노출합니다 | 데이터베이스 REST API 플랫폼 | 커넥터 설정 가이드

카테고리: API 플랫폼

태그: duckdb-rest-api, duckdb, duckdb-server, duckdb-api, rest-api, expose-duckdb-as-api, httpserver-alternative, share-duckdb-data, per-recipient-keys, no-code-api, database-rest-api

메타 설명: DuckDB 쿼리를 수신자별 키를 사용하는 안전한 읽기 전용 REST API로 변환합니다. httpserver 확장 프로그램, 서버, 코드가 필요하지 않습니다.

Updated on 2026년 6월 16일

Powered by BetterDocs