Skip to content

deivamagalhaes/RediSearch

 
 

Repository files navigation

Build Status

RediSearch

Full-Text search over redis by RedisLabs

logo.png

See Full Documentation at http://redisearch.io

Latest Release: 0.20.0

Overview

Redisearch implements a search engine on top of redis, but unlike other redis search libraries, it does not use internal data structures like sorted sets.

Inverted indexes are stored as a special compressed data type that allows for fast indexing and search speed, and low memory footprint.

This also enables more advanced features, like exact phrase matching and numeric filtering for text queries, that are not possible or efficient with traditional redis search approaches.

Docker Image

https://hub.docker.com/r/redislabs/redisearch/

$ docker run -p 6379:6379 redislabs/redisearch:latest

Client Libraries

Official (Redis Labs) and community Clients:

Language Library Author License Comments
Python redisearch-py Redis Labs BSD Usually the most up-to-date client library
Java JRediSearch Redis Labs BSD
Go redisearch-go Redis Labs BSD Incomplete API
JavaScript RedRediSearch Kyle J. Davis MIT Partial API, compatible with Reds
C# NRediSearch Marc Gravell MIT Part of StackExchange.Redis
PHP redisearch-php Ethan Hann MIT
Ruby on Rails redi_search_rails Dmitry Polyakovsky MIT
Ruby redisearch-rb Victor Ruiz MIT

Primary Features:

  • Full-Text indexing of multiple fields in documents.
  • Incremental indexing without performance loss.
  • Document ranking (provided manually by the user at index time).
  • Field weights.
  • Complex boolean queries with AND, OR, NOT operators between sub-queries.
  • Prefix matching in full-text queries.
  • Auto-complete suggestions (with fuzzy prefix suggestions)
  • Exact Phrase Search.
  • Stemming based query expansion in many languages (using Snowball).
  • Limiting searches to specific document fields (up to 32 fields supported).
  • Numeric filters and ranges.
  • Geographical search utilizing redis' own GEO commands.
  • Supports any utf-8 encoded text.
  • Retrieve full document content or just ids.
  • Automatically index existing HASH keys as documents.
  • Document Deletion (Update can be done by deletion and then re-insertion).
  • Sortable properties (i.e. sorting users by age or name).

Not yet supported:

  • Spelling correction
  • Aggregations

License: AGPL

Which basically means you can freely use this for your own projects without "virality" to your code, as long as you're not modifying the module itself. See This Blog Post for more details.

About

FullText Search module for redis

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 91.7%
  • Python 3.8%
  • Smarty 1.6%
  • Makefile 1.5%
  • C++ 0.5%
  • Perl 0.3%
  • Other 0.6%