turbopuffer, ANN 벡터 인덱스를 보조 인덱스로 내리는 v3 저장 구조 공개

turbopuffer, ANN 벡터 인덱스를 보조 인덱스로 내리는 v3 저장 구조 공개

  • turbopuffer가 v3에서 ANN 벡터 인덱스를 주 인덱스에서 보조 인덱스로 내리고, 자동 생성되는 내부 ID인 (segment ID, doc ID)를 새 주 인덱스로 삼는 저장 구조 개편을 진행 중임
  • v1은 ID와 벡터만 저장하는 서버리스 벡터 DB로 출발해 그래프 인덱스 대신 SPANN을 쓰고 증분 인덱싱을 위해 SPFresh로 옮겼으며, 객체 스토리지를 진실 원천으로 두고 NVMe SSD와 메모리 계층 캐시로 성능을 확보해 Cursor와 Notion을 초기 고객으로 확보함
  • v2에서 속성 필터링용 역색인과 BM25 전문 검색을 추가했지만 모든 인덱스가 ClusterId와 LocalId로 이루어진 ANN 주소를 가리키는 구조 탓에 GROUP BY와 집계 같은 쿼리 계획이 제약을 받음
  • 벡터 하나를 갱신할 때 그 문서를 가리키는 수백 개의 속성과 인덱스를 다시 써야 하는 쓰기 증폭 때문에 인덱싱 처리량 튜닝이 한계에 부딪혔고, v3는 인덱스가 행의 위치를 가리키지 않게 바꾸는 것임
  • v3는 텍스트, 정규식, 벡터 검색을 모두 빠르게 하는 동시에 더 많은 SQL 쿼리를 turbopuffer로 옮기는 토대가 되는 것을 목표로 함

Hacker News opinions

처음엔 페이지가 안 열렸다가 지금은 잘 열림. 트래픽 몰려서 그런 거면 미리 부하 테스트를 했어야지.

엔터프라이즈 검색에 순수 벡터 DB 쓸 이유가 거의 없음. 벡터 지원 있는 SQL DB 위에 검색 엔진을 올렸는데, 벡터 유사도는 전문 검색, 필터, 조인, 정렬과 나란한 쿼리 프리미티브 하나일 뿐임. ACL이나 버전, 시간 필터가 평범한 predicate가 되고, 별도 벡터 DB를 두면 갱신할 때마다 두 시스템 동기화하는 게 제일 어려움.

10년 전 Postgres vs InnoDB 논쟁이 검색에서 반복되는 것 같음. InnoDB는 보조 인덱스가 PK를 가리키게 하고 읽기에서 한 번 더 조회하는 비용을 먹었는데, 그 추가 조회가 B-tree 대신 S3 GET이면 얼마나 나올지 궁금함. 클러스터가 벡터 사본을 들고 있어서 검색은 로컬로 하고 결과 가져올 때만 간접 참조 비용을 내는 구조인지도 궁금함.

행이 있는 위치를 가리키지 않으면 인덱스는 대신 뭘 가리키게 되는 거임?

Postgres는 인덱스가 업데이트마다 바뀌는 row-id를 가리키고, MySQL은 프라이머리 인덱스 엔트리를 가리켜서 간접 참조가 하나 더 생기는 대신 안정적인 ID를 가리킴. 그래서 프라이머리 키를 안 건드리면 다른 인덱스를 다시 안 써도 됨.

MySQL이 인덱스 많을 때 유리한 건 맞지만 그게 좋은 스키마 설계에서 Postgres 아키텍처가 더 낫다는 뜻은 아님. 보조 인덱스가 프라이머리 키를 가리키면 undo 로깅이 가능해져서 vacuum이 필요 없어지는데, vacuum이 Postgres에서 제일 아픈 부분임. 프라이머리 키 인덱스는 대부분 캐시에 있어서 간접 참조 비용도 생각보다 작음.

MSSQL의 클러스터드 인덱스나 Oracle의 IOT처럼 선택하게 해주는 게 맞음. 접근 대부분이 프라이머리 인덱스로 가는 상황이면 간접 참조를 피하는 게 성능에 낫고 공간도 아낌. PG에 진짜 클러스터드 인덱스가 없는 게 아쉬움.

속성을 벡터마다 복사하는 건 이해 감. 금방 터지지. 근데 새 프라이머리 인덱스는 뭘로 잡은 거임?

자동 생성되는 내부 ID인 (segment ID, doc ID)임. 사용자가 주는 id 필드는 저장 계층에서 보조 인덱스로 내려감.

벡터 DB는 사실 벡터나 저장보다 검색에 가까운 물건이었는데 용어가 너무 잘 붙어버려서 회사들이 너무 오래 붙들고 있었음.

그럼 그냥 검색 엔진인데, 벡터 지원이 이미 들어간 Elasticsearch나 Vespa랑 가격, 성능, 기능으로 붙어야 함. 누가 페이지에 AI를 더 많이 쓰는지도 경쟁이고.

우리도 그 문제를 일찍 깨닫고 서버리스 검색 엔진을 처음부터 만들었음. dense/sparse 벡터, late interaction, 어휘 검색, 인덱스 정규식, 필터링, 커스텀 스코어링을 한 쿼리에서 지원함.

LanceDB를 비슷한 용도로 잘 쓰고 있음. Lance도 ANN을 보조 인덱스로 다루고 행은 fragment에 있어서 벡터 인덱스가 행을 옮기지 않음.

RAG는 잘 모르는데, DB 자체를 신경망으로 만들어버리려는 시도는 없었나? 전통 DB를 다 걷어내고 오토인코더 같은 걸 쓰는 식으로.

generative retrieval이라는 이름으로 3~4년 전부터 연구가 있음. 트랜스포머 가중치를 인덱스로 쓰고, 쿼리를 넣으면 constrained decoding으로 문서 ID를 생성하는 방식임.

Postgres를 버리고 쓰임새마다 맞춤 DB를 만들자는 얘기면 아직 그럴 때가 아님. 다만 데이터 손실 위험이 없는 검색 인덱스에서는 이미 두 회사가 그렇게 하는 걸 봤고 나도 하고 있음.

해커뉴스
RacketCon 2026이 10월 3일부터 오클랜드에서 열린다, 튜링상 수상자 Pat Hanrahan이 기조 발표해커뉴스 10월 Who is hiring? 공개, $230k 베이스와 YC W26 파운딩 자리까지ESP32에서 숨은 SDR 기능 발견, RX 전용 IQ 캡처로 13cm 햄 라디오 노린다레드햇 배지가 IBM으로 바뀌었다는 직원 증언, Techrights는 브랜드 단계적 소멸이라 주장Figma 원격 MCP, 화이트리스트 클라이언트만 허용해 Pi 차단. MCP 만든 사람도 "개방형 생태계가 핵심"이라 반응Cloudflare, R2 위에 구축한 서버리스 이벤트 스트리밍 K2 퍼블릭 베타 공개유출 영상: GrayKey, 아이폰 72시간 자동 재부팅을 우회해 잠긴 폰에 접근turbopuffer, ANN 벡터 인덱스를 보조 인덱스로 내리는 v3 저장 구조 공개Pi 1.0 공개: Codemode로 MCP·비LLM 모델 지원, 장기 실행용 Pi Durable도 실험 배포Cloudflare, 결정 모델 Clef와 Clef-flash 공개하고 Hugging Face에 오픈소스Rust 컴파일러, 두 달 만에 평균 4.57% 빨라져 (629개 벤치마크 중 555개 개선)FTC, OpenAI·Anthropic 등 AI 기업 제품 위험 조사 착수마이크론 CEO, 2027~2028년 메모리 공급이 2026년보다 훨씬 빠듯해질 것이라고 발언OpenAI와 Synopsys, EDA 툴을 직접 조작하는 GPT-Synopsys 발표구글, 크롬북 10년 업데이트 약속 깨고 2034년 지원 종료 통보생성형 SVG 패턴 110종 모은 Book of Shapes, Nikolaj Sokolowski가 공개Nvidia DLSS 5 신경 렌더링망을 Vulkan으로 재구현한 OpenDLSS-NR 공개, README는 LLM 생성 의혹미국 입국 시 영장 없이 휴대폰 압수·복사, 이민 활동가가 CBP 상대로 소송OpenStreetMap 편집 앱 StreetComplete, Kotlin Multiplatform 포팅으로 iOS 공개 베타 시작해커뉴스에 뜬 '밀러의 괴물', 면 124개 균일 다면체를 종이 조각 1280개로 조립단종된 CHOMPI 샘플러, 하드웨어·소프트웨어 원본 소스 전격 공개구글 다니면서 일본에서 ML 박사, MEXT 장학금으로 도쿄공대 3년 만에 마친 경험담1987년 설립된 SDF Public Access UNIX System, 셸 계정과 Mastodon 인스턴스로 해커뉴스에 다시 등장Show HN: Ledge.sh, 마크다운 노트에서 셸·SQL·AI 프롬프트를 실행하는 노트북픽셀 이전의 모듈러 산업용 대시보드, 독일·폴란드 박물관 기록Matt Keeter, Fidget 커널 기반 거리장 솔리드 모델링 IDE Halfspace 공개구글 안드로이드 개발자 인증 프로그램, APK 배포에도 $25와 신분 확인 요구56k.rip, 1996년 다이얼업 인터넷 체험 사이트가 해커뉴스에 올라와 '로딩이 너무 빠르다'는 지적까지청동기 붕괴, 가뭄이 아니라 값싼 철이 제국의 무기 독점을 끝냈다는 주장Marques Brownlee의 'Dear YouTube', 유튜브 영상 A/B 테스트 반대와 소프트웨어 제작의 최적화 비판AI가 만든 수학을 어떻게 공개할까: 수학계가 AI 랩에 독점 모델 테스트 중단과 3원칙을 요구냉전기 히치하이커 신호정보 위성 URSALA, RAQUEL, FARRAH, 40년 만에 기밀 해제버닝맨 2026년 사망 3명은 역대 최다지만, 통계로 따지면 기대치의 4분의 1Netlify, V8 아이솔레이트 걷어내고 Firecracker MicroVM으로 엣지 함수 5배 빠르게뇌 피질을 가로지르는 진행파, 나선형 소용돌이까지 확인... 평면파라는 기존 관념이 흔들린다YC S25 Magnitude, llama.cpp 능가 주장하는 에이전트용 자기 최적화 추론 엔진 공개EDG C++ 프런트엔드 소스 공개, The C++ Alliance가 비영리 관리 주체로싱가포르 정부 데이팅 앱 FirstDate, 노벨상 받은 게일-섀플리 안정 결혼 알고리즘으로 공무원 매칭구글, 프런티어 모델 Gemini 4 Argon 공개, 사이버 방어팀 우선 배포에 도입가 $2/$10TLA+ 교육자 힐렐 웨인, "LLM이 형식 검증으로 에이전트 개발을 해결한다"는 낙관론에 제동$35 후방 카메라 디스플레이의 AMT630A 역공학, ESP32 HUD용 Arduino 라이브러리로 공개Codex로 $415 로봇팔 SO-101을 세팅한 개발자, 캘리브레이션 실패와 서보 전원 한계에 부딪힘편자공에서 정비공이 된 증조부, AI 앞에 선 개발자에게 던지는 가족사LinkedIn 슬롭 게시물 탐지기를 1시간 30분 만에 만든 블로거, 컴퓨터 비전 자랑글의 실체를 지적Slug 특허 퍼블릭 도메인 공개 후 GPU 텍스트 렌더링 기법 비교: 텍스처 아틀라스, SDF, MSDF, SlugMathigon 'Mathematical Origami', 정다면체 5종과 아르키메데스 다면체 13종 접기 도안 공개블룸버그 터미널의 역사를 다룬 IEEE 스펙트럼 글, 해커뉴스는 크로미움 포크와 정보 밀도 UI를 논의아두이노 UNO Q 기반 오픈소스 3D 프린팅 데스크톱 로봇 JBR-001, STL 파일까지 공개16세 해커, MS 내부 Titan의 JWT 서명 미검증으로 17조 행 접근 가능성 발견Show HN: KCC, 2D DFT와 디더링으로 eInk 만화 화질 최적화오픈소스 3D 치과 해부 탐색기 Dental Scope 공개, 커밋 이력은 3일미국 NRC, TVA 클린치강 BWRX-300 소형모듈원자로에 첫 건설허가 발급WGSL과 Rust 구조체 레이아웃 차이, facet 런타임 리플렉션 단위 테스트로 잡는다MCP 안 쓴다던 Pi, 최신 버전에서 MCP와 Codemode를 코어에 통합Last.fm이 없앤 RSS 피드, 개인 프로젝트 lfm.xiffy.nl이 6종으로 대체이란전쟁으로 호르무즈 막히자 유가 배럴당 $66에서 $101로, 늘어난 돈은 석유회사로팩토리오 품질 확률을 행렬 방정식으로 푼 온라인 계산기 공개NYT 등 12개 출판사 법률 문서: OpenAI가 페이월 우회해 기사 긁어가, MS 임원은 "인류 역사상 최대의 노동 절도"2026년 9월 시나리오 에세이: 호르무즈 봉쇄가 기름, 비료, 감자 가격을 한꺼번에 밀어올린 경로1+1 이진 트리 과제로 시작해 C로 함수형 언어 만든 개발자, 아레나 할당자와 GC까지 구현Raschka가 짚은 Jev 열풍: bag-of-words부터 Jev까지 텍스트 분류의 계보NASA, 1999년 마지막 비행한 SR-71A 844호기를 격납고로 옮기고 전직 시험엔지니어들에게 비행 복귀 참여 제안Frostyard, 리눅스용 WSL 격 NSL 공개: 공유 VM 안에서 systemd-nspawn 컨테이너 실행밤하늘 밝기 매년 10%씩 밝아져, 도시 야외 조명 규제 필요성 제기NAND 게이트 277,248개로 CPU와 RAM, 비디오까지 만든 컴퓨터, 브라우저에서 게이트 단위로 열어본다백블레이즈 2026년 2분기 드라이브 통계: 35만 4,415대 전체 고장률 1.73%, 22TB WDC가 0.55%로 최저버몬트주가 발전소를 가정용 배터리로 대체, GMP 가상발전소가 주 최대 전력원이 됨브라우저에서 실시간 태양계 구현, 소행성 52만7천 개와 추적 위성 3만5천 개 표시Opus 5.5 너프 측정 저장소 livenerf, 78문항 고정 패널로 30일 사전등록 실험 진행USPIS, 위조 우편 라벨 510만장 판매한 LabelsBank.com 압수, 파키스탄인 기소, 피해 $126M2008년 MacKay의 Sustainable Energy without the hot air, HN에서 1차 에너지 오류와 태양광 가격 하락 논쟁'일 만들기' 스태프 엔지니어 가이드, HN에서 '요구사항 공학' 논쟁과 LLM 작성 의혹까지OpenAI, 월 $500 Pro 500 요금제 공개. 신규 Pro 200 구독은 사용량 축소PS5 탈옥 익스플로잇 Relapse 공개, 7.00부터 13.60까지 커널 r/w 확보Tcl/Tk 9.1.0 공개, Tk에 화면 읽기 접근성과 RTL 텍스트 지원 추가미국 정부 AI 안내 사이트 america.gov 공개, 25MB 페이지에 챗봇은 429OpenAI, 24시간 상시 가동 에이전트 dots 공개. GPT-6 Astra 기반, Pro와 Enterprise 플랜부터OpenAI, GPT-6.1 Sol 공개: Astra에 근접한 성능을 5분의 1 가격에godot-cpp 10과 Conan으로 Godot에 C++ 라이브러리 붙이기, flecs로 입자 10만 개 시뮬레이션1993년에 부팅한 Stratus 서버, 24년째 무중단 가동 중이지만 2017년 4월 은퇴 예정PostHog, Jev류 결정 모델에 추론을 결합한 오픈소스 'jeeves' 공개Claude 전 서비스 1시간 장애, 로그인과 파일 업로드까지 막혀 14:59 UTC 복구macOS 27 Golden Gate, 안정성 개선 내세웠지만 메뉴 바 크래시 등 버그 다수델리, 전력 손실률 50%에서 5%로 낮춤: Tata Power가 저소득 지역 물 공급과 금융 교육까지 손댄 결과미국 ICC 제재로 네덜란드, 마이크로소프트 배제하고 NixOS 기반 대안 생태계로 이동런던 역 6개월 얼굴인식 시범, 50만 스캔에 오탐 1건·체포 0건, 비용 32만 파운드대화형 AI 9곳 분석: 대화 제목·프롬프트·스크린샷이 제3자 추적기로 전달됨미국, 집에 손님 초대하는 문화 붕괴: 1975년 이후 70% 감소실리콘밸리를 25년 먼저 비판한 폴리나 보르숙, 커리어 상실 뒤 뒤늦은 재조명Show HN: Pac-Bench, 30개 모델이 원샷으로 만든 팩맨, Opus 5.5가 99/100으로 1위무관해 보이는 단어 10개로 임베딩 '원' 기하를 위조해 맥주 내기에서 이기다ESP32S3 여러 대를 묶어 1.58비트 BitNet 언어모델을 돌리는 깃허브 프로젝트 공개스코치드 어스에 원형 행성과 궤도 역학을 얹은 웹게임 'Tank Body Problem'이 해커뉴스에 공개됨1871년 Nature의 1841년 우주기상 기록, 알고 보니 오타였다1996년 온라인 서비스 감성 채팅방 lolchat.rip, Win95·System 7 데스크톱과 같은 방을 공유괴베클리 테페에서 1만 2천 년 전 매장 2기 첫 발견, 흩어진 뼈 미스터리 풀려황금비 코드로 뽑은 필로택시스 패턴, 89개 LED 조형물이 되어 소리에 반응하다캘리포니아 포도 농가, 와인 수요 급감에 판로 상실…전체 포도밭 25% 폐원엔비디아, 에이전트 통제용 Open Agent Safety Platform 공개... 네트워크 칩 Sentry와 CPU용 OpenShell 포함Show HN: 주소만 입력하면 스틱맨이 그 페이지를 부수는 'Destroy Any Website' 공개
3 alerts
New alert

My alerts

Sign in to create alerts.

All alerts

Duneby 제욱AIby 제욱해커뉴스by 성현