redis-om-spring  by redis

Spring Data Redis extension for object mapping, search, and document models

Created 3 years ago
642 stars

Top 51.8% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides Spring Data Redis extensions for enhanced search, document modeling, and querying capabilities, targeting Java developers building Spring Boot applications. It simplifies interacting with Redis Stack features like RedisJSON and RediSearch, enabling efficient data mapping and secondary indexing.

How It Works

Redis OM Spring builds upon Spring Data Redis, offering @Document annotation for mapping Java objects to RedisJSON documents and @Indexed for defining secondary indexes. It leverages RediSearch for powerful querying, including geospatial and full-text search, via custom repository interfaces and an EntityStream API. The project also introduces ULIDs for primary keys and supports Vector Similarity Search with optional dependencies.

Quick Start & Requirements

  • Install/Run: Requires a running Redis Stack instance (e.g., via docker run -p 6379:6379 -p 8001:8001 redis/redis-stack).
  • Dependencies: Java, Maven/Gradle, Spring Boot. Optional dependencies for Vector Similarity Search (e.g., spring-ai-openai).
  • Setup: Clone repository and run demos using ./mvnw spring-boot:run -pl demos/<demo-name>.
  • Docs: Redis OM Documentation

Highlighted Details

  • @Document annotation for RedisJSON mapping.
  • @Indexed and @Searchable for secondary and full-text indexing.
  • RedisDocumentRepository for CRUD and custom queries.
  • EntityStream API for Java 8 Streams-like querying.
  • ULID generation for @Id fields.
  • Support for Vector Similarity Search.

Maintenance & Community

  • Active development with releases and snapshots available.
  • Community support via Redis Discord Server.
  • Contribution guidelines provided on GitHub.

Licensing & Compatibility

  • MIT License. Permissive for commercial use and integration with closed-source applications.

Limitations & Caveats

  • Requires Redis Stack for full functionality.
  • Versions prior to 0.9.11 required the Spring Milestone Repository; this is now optional.
  • Vector Similarity Search features require manual addition of specific dependencies.
Health Check
Last Commit

2 days ago

Responsiveness

1 day

Pull Requests (30d)
18
Issues (30d)
9
Star History
6 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems") and Simon Willison Simon Willison(Coauthor of Django).

semantra by freedmand

0.1%
3k
CLI tool for semantic document search
Created 2 years ago
Updated 1 year ago
Starred by Vaibhav Nivargi Vaibhav Nivargi(Cofounder of Moveworks), Jared Palmer Jared Palmer(Ex-VP AI at Vercel; Founder of Turborepo; Author of Formik, TSDX), and
4 more.

searchkick by ankane

0.1%
7k
Ruby gem for integrating intelligent search
Created 12 years ago
Updated 1 week ago
Starred by John Resig John Resig(Author of jQuery; Chief Software Architect at Khan Academy), Simon Horup Eskildsen Simon Horup Eskildsen(Cofounder of Turbopuffer), and
21 more.

meilisearch by meilisearch

0.2%
53k
Search engine API for integrating AI-powered hybrid search
Created 7 years ago
Updated 1 day ago
Feedback? Help us improve.