jsonscraper
시장
저널로 돌아가기

Cloudflare AI Search, D1 행을 SQL 쿼리로 색인

베타 연동을 통해 SQLite 데이터베이스에서 선택한 레코드를 검색 문서로 만들고, 일정에 따라 색인을 업데이트합니다.

편집 정책 오류 제보

Cloudflare D1에 콘텐츠를 저장하는 팀은 이제 별도의 중간 내보내기 과정 없이 선택한 레코드를 AI Search로 전달할 수 있습니다. 2026년 11월 12일, Cloudflare는 서비스 베타 버전의 데이터 소스로 D1을 추가했습니다. 개발자가 읽기 전용 쿼리를 설정하면 AI Search가 반환된 각 행을 문서로 만들고 일정에 따라 색인을 업데이트합니다.

기사: Cloudflare AI Search, D1 행을 SQL 쿼리로 색인
요약: 11월 12일부터 Cloudflare AI Search가 D1 데이터를 가져올 수 있습니다. 개발자가 읽기 전용 쿼리를 설정하면 반환된 각 행이 개별 문서가 됩니다. 대시보드, REST API, Workers 바인딩을 통해 연결할 수 있으며, 기능은 아직 베타 버전입니다.
이미지 역할: 표지 — 핵심 아이디어
섹션: 
시각적 주제: 인쇄된 데이터베이스 표가 깔끔하게 정리된 검색 가능 문서로 변하는 편집용 사진
SQL 쿼리로 선택한 D1 행은 검색 색인에서 각각 별도의 문서가 됩니다.© jsonscraper · AI 생성

무엇이 달라졌나

이전에는 AI Search가 R2 객체나 웹 콘텐츠 등 다른 유형의 데이터 소스를 제공했습니다. 이제 D1은 테이블의 데이터를 색인으로 직접 전달할 수 있습니다. 예를 들어 게시된 기사, 상품 카탈로그, 지식 베이스 레코드가 해당합니다. Cloudflare는 11월 12일 변경 로그 항목에서 새 기능을 소개했으며, D1을 데이터 소스로 사용하는 인스턴스는 대시보드, REST API 또는 Workers 바인딩으로 만들 수 있습니다.

데이터베이스 소유자는 SQL 쿼리로 어떤 레코드를 색인에 포함할지, 어떤 필드를 문서 제목·본문·메타데이터로 사용할지 정합니다. 기사 데이터베이스라면 쿼리에서 게시된 콘텐츠만 선택하고 열에 id, title, content, meta_category 역할을 지정할 수 있습니다. 이처럼 검색용 데이터는 개발자가 정한 쿼리 결과를 바탕으로 구성됩니다.

연결 방식

D1 데이터 소스를 설정하면 AI Search가 지정된 쿼리를 실행하고, 행을 하나씩 색인한 뒤 일정에 따라 색인을 동기화합니다. REST API와 Workers 바인딩을 사용하려면 같은 Cloudflare 계정에 있는 D1 데이터베이스 ID, 서비스 토큰 ID, 그리고 id 열을 반환하는 쿼리가 필요합니다. 대시보드에서는 데이터베이스를 선택하고 쿼리를 작성한 다음, 인스턴스를 만들기 전에 단일 행의 결과를 확인할 수 있습니다. 이 절차는 D1 데이터 소스 문서에 설명되어 있습니다.

열 이름으로 각 필드의 용도를 지정합니다. title은 문서 제목이 되고, content는 본문이 되며, meta_ 접두사가 붙은 열은 메타데이터로 저장됩니다. 문서 템플릿에 따라 나머지 열은 이름이 표시된 필드로 나타날 수 있습니다. 이를 통해 SQL에서 검색에 필요한 카테고리와 필드를 선택할 수 있습니다.

지원되는 쿼리

쿼리는 SELECT 또는 WITH로 시작하는 단일 읽기 문이어야 합니다. 결과가 비어 있지 않아야 하며, id 값은 고유하고 비어 있지 않아야 합니다. 최대 행 수는 100,000개이고 쿼리 길이는 10,000자입니다. 문서에서는 바인딩 매개변수와 주석, 쓰기 작업 및 관리 명령을 포함한 여러 SQL 구문도 금지합니다. AI Search가 결과를 id 기준으로 정렬해 페이지 단위로 읽기 때문에 ORDER BY나 LIMIT은 사용할 수 없습니다.

행의 id 값이 바뀌면 AI Search는 이전 문서를 삭제하고 새 문서를 만듭니다. 따라서 동기화에는 안정적인 식별자를 선택하는 것이 좋습니다. 결과에 포함되는 각 열의 이름도 고유해야 하며, 필요한 경우 AS로 이름을 지정할 수 있습니다. 동기화는 쿼리의 전체 결과를 읽으므로 D1 읽기 사용량에 반영됩니다. WHERE 조건을 사용하면 색인 대상 레코드를 제한할 수 있습니다.

누가 활용할 수 있나

새 연동은 구조화된 콘텐츠를 이미 D1에 저장하고 있는 팀에 적합합니다. 데이터베이스 쿼리로 검색 대상 레코드를 선택한 뒤, 행을 추가·수정·삭제할 때 색인을 동기화할 수 있습니다. 예를 들어 상품 카탈로그에는 판매 가능한 상품만 포함하고, 도움말 센터에는 게시된 문서와 해당 카테고리만 포함할 수 있습니다. 각 행은 개별 문서가 됩니다.

현재 이 연동은 베타 버전입니다. 운영을 시작하기 전에 id의 고유성과 안정성을 확인하고, 필요한 열만 선택하며, 결과 크기와 동기화 일정이 D1 사용량에 어떤 영향을 미치는지 살펴보는 것이 좋습니다. 색인은 선택한 간격으로 업데이트되며, 동기화 때마다 전체 결과를 읽으므로 D1 reads가 사용됩니다.

이번 변경으로 D1을 AI Search의 데이터 소스로 사용할 수 있게 됐으며, SQL 쿼리를 통해 어떤 데이터베이스 행을 검색 문서로 만들지 지정할 수 있습니다. D1에 콘텐츠를 보유한 팀은 데이터를 색인과 직접 연결할 수 있습니다. 계획을 세울 때는 행 수 제한과 동기화 중 발생하는 데이터베이스 읽기 사용량을 고려해야 합니다.

사람들

아직 이 기사에 등록된 사람이 없습니다.

계속 읽으세요Cloudflare D1, 쿼리 응답 크기 제한: 데이터베이스 내보내기는 왜 다를까
다음 기사 읽기

읽은 내용을 실제 연동으로 구현하세요

jsonscraper 소셜 데이터 API를 살펴보고 요청을 테스트하여 다음 워크플로를 구축하세요.

API 둘러보기