31

GitHub - RediSearch/RediSearch: FullText Search and Secondary Index module for R...

 4 years ago
source link: https://github.com/RediSearch/RediSearch
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

GitHub issues CircleCI Docker Cloud Build Status Mailing List Gitter

RediSearch

Full-Text search over Redis by RedisLabs

logo

See Full Documentation at https://oss.redislabs.com/redisearch/

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

Mailing List / Forum

Got questions? Feel free to ask at the RediSearch mailing list.

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

Ruby redi_search Nick Pezza MIT Also works with Ruby on Rails

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, fuzzy matching and exact phrase search in full-text queries.
  • Support for DM phonetic matching
  • Auto-complete suggestions (with fuzzy prefix suggestions).
  • Stemming based query expansion in many languages (using Snowball).
  • Support for logographic (Chinese, etc.) tokenization and querying (using Friso)
  • Limiting searches to specific document fields (up to 128 fields supported).
  • Numeric filters and ranges.
  • Lightweight tag fields for exact-match boolean queries
  • Geographical search utilizing Redis' own GEO commands.
  • A powerful aggregations engine.
  • Supports any utf-8 encoded text.
  • Retrieve full document content or just ids.
  • Automatically index existing HASH keys as documents.
  • Document deletion.
  • Sortable properties (i.e. sorting users by age or name).

Cluster Support

RediSearch has a distributed cluster version that can scale to billions of documents and hundreds of servers. However, at the moment it is only available as part of Redis Labs Enterprise. See the Redis Labs Website for more info and contact information.

License

Redis Source Available License Agreement - see LICENSE


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK