Comments (11)
No, this is not possible at the moment. Pluggable storage layer might be nice, but is not a priority unless more people request it.
from typesense.
would like to change it to redis how do i do that? any clues where i should be looking at?
is this the only place i need to look at?
https://github.com/typesense/typesense/blob/master/include/store.h
from typesense.
Yes store.h
is the abstraction for the storage layer. Unfortunately, it does leak some implementation details at the moment like the RocksDB iterator class etc.
from typesense.
can consolidate all the functions at store.h so next time we can just change the storage layer here?
from typesense.
Yes store.h
should be the interface implemented by a storage engine. And store.cpp
should contain all storage related logic for RocksDB. One can create similar sub-classes for other storage engines using the same interface and initialize correspondingly.
from typesense.
i dont know how to do this but can you do it? i can contribute by making small donations
just do the redis port without multi/exec will do
from typesense.
A generic storage interface will involve quite some refactoring and testing before it is ready. It might happen in future based on priority. May I understand the need for a Redis backed storage though? Maybe there is a way to achieve what you want in an alternative manner.
from typesense.
i have redis cluster and sentinel etc set up and it's more "distributed". can you use redis as backend and without the local memory overhead? the backend will be a redis cluster.
when do you think it can be done?
from typesense.
Typesense stores the indices in-memory, so even if a Redis backend is used, the searching would require the in-memory data structures. So you will still need the Typesense server to have high availability.
from typesense.
can you rewrite it for storing the indices in redis? i can make a small donation.
there's no redisearch alternative and if it's backed by redis, this will be the best available search backed by redis other than redisearch
from typesense.
I appreciate your offer, but unfortunately it's not practical to store the indices on Redis as Typesense depends on several custom in-memory data structures.
from typesense.
Related Issues (20)
- using typesense rails and typesense 0.25.1 but still having missing fields due to nil values when indexing
- Typesense nodes failed and cannot be reconciled by performing infinite restart and reindex cycles HOT 5
- Query containing two synonyms at once does not seem to match documents
- Scoped keys are allowing listing of all collections HOT 2
- Able to disable synonym search in the query
- How do I monitor my instances (RAM/Swap usage) HOT 1
- Error while removing field `field_name` from document HOT 1
- Search request with large number for max_facet_values does not terminate HOT 2
- Question: we have multiple tables and have relation between them in that scenario what should we do if we want to implement typesense HOT 1
- Allow late filtering or disable query modifications HOT 3
- Apply Override Selectively to a Query in real time? HOT 1
- GPU mode crash - need Typesense GPU dependencies source HOT 3
- Add support for combined image and text embeddings using CLIP
- Multiple standalone instances on same server HOT 1
- Documents cannot be retrieved if 'id' field contains '/' character HOT 2
- Cannot regenerate access token by valid refresh token for gcp vertexai Text embedding.
- Deleting all documents in collection HOT 1
- A preceding newline is returned when importing a specific record HOT 6
- Ambiguous error (Field `title` is already part of the schema) HOT 2
- BUG - Typesense does not considers "query_by_weights" when equal weightage is same
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from typesense.