Why Developers Need Vector Search
The world is awash in data, but making use of it brings a host of challenges. One issue: much of the data produced today is unstructured, in the form of text, images and voice, and not well suited to relational databases.
This can especially hamper organizations that are trying to build, say, a recommendation engine for their customers — seeking similarities across data in order to surface meaningful relationships.
What’s the solution? Vector databases, and the vector searches they make possible.
And in those cases, he said in this episode of The New Stack Makers podcast, “any type of data that you would find difficult to store in a relational database or in a document database, it’s really a great candidate for storage, search and indexing inside of a vector database.”
In this episode, a trio of technologists — Liu, Yury Malkov, a distinguished software engineer at VerSe Innovation, and Nils Reimers, director of machine learning at Cohere — spoke with Heather Joslyn of TNS about the possibilities that vector databases and vector search can offer developers.
Use Cases for Vector Search
In addition to simply searching for information or creating recommendation bots, tracking down incidents of copyright infringement has historically been a major use case for vector search, according to Reimers.
“Social media companies like Facebook, they have pioneered a lot of work,” he said. “So any media you upload to Facebook, they create a vector, and then they check copyrighted vectors — like music, movies, images that are copyrighted — and then compare.”
One reason why a relational databases struggles to make use of unstructured data, Malkov said, is because it lacks “a concept of similarity. So it cannot find similar objects directly. I have to embed it in a vector space and [search for] nearest neighbor.”
An approximate nearest neighbor search, he added, “is when you relax the condition that your results have to be exact. And by relaxing this condition, you’re allowed to skip some of the computations and thus have higher efficiency at minimal loss of the needed metric. So, it’s a trade-off between accuracy and speed.”
Choosing a Solution? It Depends.
To make use of vector databases and vector search, our Makers guests urged developers to understand their particular use case, and the requirements and scale of their application.
“Oftentimes, we have folks who asked … What is the right solution for me to be able to deploy and develop my application on top of vendor search?” Liu said. “And I think the answer really depends very much on what you’re trying to go for.”
Liu also advised listeners to educate themselves about vector databases, vector search, and machine learning in order to get the most from the current ecosystem of tools.
For instance, he urged, “Dive a little bit into some of these different indexing strategies.”
One strategy in particular cited by Liu was Hierarchical Navigable Small Worlds (HNSW), a graph-based algorithm for nearest neighbor search that was created by Malkov. It’s the most commonly used indexing strategy for vectors today, Liu noted.
Ultimately, said Liu, a vector database and vector search “it’s just one of the items that’s in your tool belt, right?”
The goal is not to replace database management systems, or document databases, he added. A vector database, Liu concluded, is simply “one of the other items that you can use to really help … build something that’s targeted towards user satisfaction, rather than the next click.”
Listen to the full episode for more on vector databases, vector searches, the gaps in current tooling, and what’s next.