Support for Join-like Relationships Across Index #826
Replies: 2 comments 4 replies
-
@Kavan72 This feature would be a valuable addition, aligning Meilisearch more closely with real-world data modeling needs. Looking forward to seeing how the team considers this proposal. |
Beta Was this translation helpful? Give feedback.
-
Should it be possible to search in the fields of the joint index, or should the joint data "only" be recovered once the results have been decided by the search? For example, when searching "Harry" in the "books" index that references the "authors" index, should an author with "Harry" in their name cause a hit, or only books with "Harry" in their title/description? |
Beta Was this translation helpful? Give feedback.
-
Hello Meilisearch Team,
First, I want to say thank you for building such an incredibly fast, developer-friendly search engine. The performance and ease of setup are really impressive, and Meilisearch has been a joy to work with.
That said, I wanted to propose a feature that could unlock powerful use cases for more complex applications: support for join-like behavior across indexes/documents — similar to what Typesense introduced in version 26.0.
🔍 Why Joins Matter
In many real-world use cases, data is relational in nature. For example:
Currently, Meilisearch requires us to denormalize the data manually, which works in many scenarios, but has significant drawbacks:
Supporting reference fields or lightweight joins would solve these issues elegantly and make Meilisearch much more robust for large, structured datasets.
🆚 Typesense’s Example (v26.0)
Typesense recently added support for references between collections. Their approach allows defining a field in one collection as a reference to another, and including related fields in queries.
And querying with:
This removes duplication, simplifies updates, and enables richer search results — all while keeping the indexing and query interface fast and predictable.
🙏 Proposed Behavior in Meilisearch
I understand that Meilisearch is designed for speed and simplicity. However, even a minimal reference system could go a long way:
This would enable better maintainability and data integrity for apps like CRMs, ecommerce platforms, learning portals, and CMSs — where structured search is often required.
Thanks again for all the amazing work on Meilisearch. Looking forward to hearing your thoughts on whether a feature like this could fit into the future roadmap, or if there are alternative patterns you’d recommend for handling cross-collection relationships efficiently.
Beta Was this translation helpful? Give feedback.
All reactions