<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Arek Borucki on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/author/arekborucki/</link><description>Articles written by Arek Borucki on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 09 Oct 2025 14:49:49 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/author/arekborucki/index.xml" rel="self" type="application/rss+xml"/><item><title>Keywords Meet Vectors: Hybrid Search on MongoDB</title><link>https://foojayio.github.io/website/today/keywords-meet-vectors-hybrid-search-on-mongodb/</link><pubDate>Thu, 09 Oct 2025 14:49:49 +0000</pubDate><guid>https://foojayio.github.io/website/today/keywords-meet-vectors-hybrid-search-on-mongodb/</guid><description>&lt;p&gt;In the previous issues, I explained how to run a local &lt;a href="https://www.linkedin.com/company/mongodbinc/?lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3BnV1cKI74RDKmiAI4lr1TaA%3D%3D" target="_blank" rel="noopener noreferrer"&gt;MongoDB&lt;/a&gt;
 Atlas cluster using &lt;a href="https://www.linkedin.com/pulse/run-local-atlas-cluster-minutes-locally-arek-borucki-mmiqf/?trackingId=M71jHZpGSQCdFygE5EgAOw%3D%3D" target="_blank" rel="noopener noreferrer"&gt;Atlas CLI&lt;/a&gt;
, what &lt;a href="https://www.linkedin.com/pulse/power-your-ai-application-vector-search-arek-borucki-sjw0f/?trackingId=vjRobV3lSdy1nc4SIgjM%2Fg%3D%3D" target="_blank" rel="noopener noreferrer"&gt;vector search&lt;/a&gt;
 is, and &lt;a href="https://www.linkedin.com/pulse/from-zero-vector-hero-locally-arek-borucki-w5otf/?trackingId=S%2FClUOdjSMGzvkR2ZLIS9Q%3D%3D" target="_blank" rel="noopener noreferrer"&gt;how to use it&lt;/a&gt;
. Now, let&amp;rsquo;s take a closer look at hybrid search.&lt;/p&gt;
&lt;p&gt;Reading time: 4&amp;ndash;5 min&lt;/p&gt;
&lt;h2 id="h2-0-what-is-hybrid-search"&gt;What is hybrid search?&lt;/h2&gt;
&lt;p&gt;Hybrid search in MongoDB brings together &lt;strong&gt;two complementary search techniques&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full text search&lt;/strong&gt; (&lt;a href="https://en.wikipedia.org/wiki/Okapi_BM25" target="_blank" rel="noopener noreferrer"&gt;BM25&lt;/a&gt;
 via &lt;a href="https://www.mongodb.com/docs/atlas/atlas-search/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=hybrid-search-foojay&amp;amp;utm_term=megan.grant" target="_blank" rel="noopener noreferrer"&gt;Atlas Search&lt;/a&gt;
)&amp;mdash;optimized for exact keyword matches, powered by Lucene inside mongot. Perfect when users expect documents that literally contain their query terms.&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- --&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Vector search&lt;/strong&gt; (&lt;a href="https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm" target="_blank" rel="noopener noreferrer"&gt;kNN&lt;/a&gt;
 via &lt;a href="https://www.mongodb.com/docs/atlas/atlas-vector-search/vector-search-overview/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=hybrid-search-foojay&amp;amp;utm_term=megan.grant" target="_blank" rel="noopener noreferrer"&gt;Atlas Vector Search&lt;/a&gt;
)&amp;mdash;optimized for semantic similarity. It uses dense embeddings from ML models to find conceptually related content, even when no keywords match.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;On their own, each method has advantages and limitations. Text search misses context (&amp;ldquo;non-linear crime story&amp;rdquo; won&amp;rsquo;t return Memento). Pure semantic search may return results that are semantically aligned but sometimes not practically useful. Hybrid search combines the strengths of both, ensuring results are contextually relevant and precise.&lt;/p&gt;</description></item><item><title>Building an AI Semantic Movie Recommender with Vector Search</title><link>https://foojayio.github.io/website/today/building-an-ai-semantic-movie-recommender-with-vector-search/</link><pubDate>Tue, 30 Sep 2025 13:23:18 +0000</pubDate><guid>https://foojayio.github.io/website/today/building-an-ai-semantic-movie-recommender-with-vector-search/</guid><description>&lt;p&gt;Last time, we created a &lt;a href="https://www.linkedin.com/pulse/from-zero-vector-hero-locally-arek-borucki-w5otf/?trackingId=xNlcCImhQCC0HsnlThlQFg%3D%3D&amp;amp;lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B1MUlV%2B0kQm%2BvelL3UScxcA%3D%3D" target="_blank" rel="noopener noreferrer"&gt;vector search index&lt;/a&gt;
 in a &lt;a href="https://www.linkedin.com/pulse/run-local-atlas-cluster-minutes-locally-arek-borucki-mmiqf/?trackingId=ntYzEbTVSuauLVmp2Zbt4w%3D%3D&amp;amp;lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B1MUlV%2B0kQm%2BvelL3UScxcA%3D%3D" target="_blank" rel="noopener noreferrer"&gt;local MongoDB Atlas cluster&lt;/a&gt;
. Now, let&amp;rsquo;s put it to work with a real case: building an AI-powered movie recommender that suggests films similar to &lt;em&gt;The Matrix&lt;/em&gt;&amp;ndash;without any shared keywords.&lt;/p&gt;
&lt;p&gt;🕒 Reading time: 3-4 min&lt;/p&gt;
&lt;p&gt;🎯 The challenge&lt;/p&gt;
&lt;p&gt;This demo will be entirely based on the pre-generated vector embeddings already stored in the &lt;a href="https://www.mongodb.com/docs/atlas/sample-data/sample-mflix/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=semantic-foojay&amp;amp;utm_term=tony.kim#std-label-sample-mflix" target="_blank" rel="noopener noreferrer"&gt;sample_mflix&lt;/a&gt;
 dataset&amp;mdash;no API calls and no new model runs. Everything will remain local. If you haven&amp;rsquo;t done it yet, learn how in this article 👉 &lt;a href="https://www.linkedin.com/pulse/from-zero-vector-hero-locally-arek-borucki-w5otf/?trackingId=xNlcCImhQCC0HsnlThlQFg%3D%3D&amp;amp;lipi=urn%3Ali%3Apage%3Ad_flagship3_pulse_read%3B1MUlV%2B0kQm%2BvelL3UScxcA%3D%3D" target="_blank" rel="noopener noreferrer"&gt;Loading embeddings into MongoDB&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>Power your AI application with Vector Search</title><link>https://foojayio.github.io/website/today/power-your-ai-application-with-vector-search/</link><pubDate>Tue, 23 Sep 2025 16:23:37 +0000</pubDate><guid>https://foojayio.github.io/website/today/power-your-ai-application-with-vector-search/</guid><description>&lt;p&gt;Most major database vendors, like &lt;a href="https://www.mongodb.com/lp/cloud/atlas/try4-reg/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=foojay-vector-search&amp;amp;utm_term=tony.kim" target="_blank" rel="noopener noreferrer"&gt;MongoDB&lt;/a&gt;
 , are adding vector search capabilities to their products. It&amp;rsquo;s becoming a standard feature as demand for AI-powered applications grows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;🕒 Reading time: 3-4 min&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;🧠 What is vector search needed for?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;MongoDB Vector Search enables semantic queries. For example, finding support tickets with similar meanings even if they use different words. It also powers hybrid search by combining exact keyword matches like &amp;ldquo;error 500&amp;rdquo; with semantically similar phrases like &amp;ldquo;server failure&amp;rdquo;. Another use case is personalization, such as recommending articles similar to those a user has read.&lt;/p&gt;</description></item><item><title>From Zero to Vector Hero - Locally! (Vector Search)</title><link>https://foojayio.github.io/website/today/from-zero-to-vector-hero-locally/</link><pubDate>Thu, 18 Sep 2025 15:25:23 +0000</pubDate><guid>https://foojayio.github.io/website/today/from-zero-to-vector-hero-locally/</guid><description>&lt;p&gt;In the previous issue, I explained how to run a local &lt;a href="https://www.mongodb.com/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=vector-search-3&amp;amp;utm_term=tony.kim" target="_blank" rel="noopener noreferrer"&gt;MongoDB&lt;/a&gt;
 Atlas cluster using Atlas CLI - no cloud account required. If you missed it, read it here 👉 Run an Atlas cluster locally in minutes. Now let&amp;rsquo;s see how to use Vector Search in that local environment.&lt;/p&gt;
&lt;p&gt;🕒 Reading time: 3-4 min&lt;/p&gt;
&lt;p&gt;🧠 Explaining the Embedding Workflow&lt;/p&gt;
&lt;p&gt;After launching your local MongoDB Atlas cluster and running the show dbs command in mongosh, you&amp;rsquo;ll see only the default system databases: admin, config, and local. These are used internally by MongoDB and contain no user data or vector embeddings at this point.&lt;/p&gt;</description></item><item><title>Run an Atlas cluster locally in minutes</title><link>https://foojayio.github.io/website/today/run-an-atlas-cluster-locally-in-minutes/</link><pubDate>Tue, 05 Aug 2025 07:33:47 +0000</pubDate><guid>https://foojayio.github.io/website/today/run-an-atlas-cluster-locally-in-minutes/</guid><description>&lt;p&gt;You no longer need a cloud account to try &lt;a href="https://www.mongodb.com/lp/cloud/atlas/try4-reg/?utm_campaign=devrel&amp;amp;utm_source=third-party-content&amp;amp;utm_medium=cta&amp;amp;utm_content=foojay-blog-atlas&amp;amp;utm_term=tony.kim" target="_blank" rel="noopener noreferrer"&gt;MongoDB&lt;/a&gt;
 Atlas features. Spin up a fully compatible local cluster in seconds, with no login, no credit card, and no friction.&lt;/p&gt;
&lt;p&gt;🕒 Reading time: 2-3 min&lt;/p&gt;
&lt;p&gt;🍃 What is the MongoDB Atlas Platform?&lt;/p&gt;
&lt;p&gt;MongoDB Atlas is a fully managed, multi-cloud data platform provided by MongoDB Inc. It allows you to deploy and run MongoDB clusters on Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure, with full support for replica sets (for high availability), sharding (for horizontal scalability), and multi-cloud deployments. Atlas handles infrastructure, backups, security, scaling, and monitoring out of the box. It also extends the core MongoDB server capabilities with a set of integrated features.&lt;/p&gt;</description></item></channel></rss>