Try:
Under the hood: MyVector · how a search runs, the index, speed vs recall
1 · Your browsersends the words you typed.
→
2 · App (Python)turns them into a vector of 768 numbers with nomic-embed-text-v1.5, on the CPU, no API.
→
3 · MySQL + MyVector
myvector_ann_set() walks the HNSW graph that MyVector keeps in mysqld's memory and returns the nearest movie ids. Plain SQL joins them to the movies table for titles, filters and ranking.→
4 · Kept in syncMyVector's binlog listener follows MySQL's binlog like a replica: an INSERT, UPDATE or DELETE on
movies reaches the index within a second (online=Y).The index, live from MySQL
- Loading
- …
Where these come from
Speed vs recall
Runs the query at ef_search 10 → 640 and compares each answer with an exact scan of every row.