PLAY PODCASTS
177: Vector Databases
Episode 177

177: Vector Databases

Programming Throwdown

November 4, 20241h 28m

Audio is streamed directly from the publisher (s3.amazonaws.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.

Show Notes

Intro topic:  Buying a Car

News/Links:

Book of the Show


Patreon Plug https://www.patreon.com/programmingthrowdown?ty=h


Tool of the Show

Topic: Vector Databases (~54 min)

  • How computers represent data traditionally
    • ASCII values
    • RGB values
  • How traditional compression works
    • Huffman encoding (tree structure)
    • Lossy example: Fourier Transform & store coefficients
  • How embeddings are computed
    • Pairwise (contrastive) methods
    • Forward models (self-supervised)
  • Similarity metrics
  • Approximate Nearest Neighbors (ANN)
  • Sub-Linear ANN
    • Clustering
    • Space Partitioning (e.g. K-D Trees)
  • What a vector database does
    • Perform nearest-neighbors with many different similarity metrics
    • Store the vectors and the data structures to support sub-linear ANN
    • Handle updates, deletes, rebalancing/reclustering, backups/restores
  • Examples
    • pgvector: a vector-database plugin for postgres
    • Weaviate, Pinecone 
    • Milvus

★ Support this podcast on Patreon ★

Topics

Programming ThrowdownProgramming LanguagesCCJavaPythonObjective C