Open vinit717 opened 1 year ago
You should check out https://typesense.org/ It's an open-source alternative to Algolia.
It offers the best interface for implementing search. I've used Algolia, and Typesence has a similar API and uses the same SDK. High recommended.
Hey @vinit717 @sahsisunny can we also mention the problem exactly being solved in the ticket.
Summary
This RFC outlines the strategy for enhancing our project's functionality using a Command Query Responsibility Segregation (CQRS) architecture. The primary focus is to optimize search performance through Elasticsearch, Azure Cosmos DB (Free Tier), or a traditional database, while also ensuring future scalability, cost-effectiveness, and the flexibility to accommodate new features.
Motivation
The project's immediate objective is to upgrade the search functionality while keeping future enhancements in mind. By adopting a CQRS architecture, we aim to improve the performance and maintainability of the application, ensuring a seamless user experience and flexibility for future feature additions.
Proposed Solution
Write Side (Command):
Read Side (Query):
Search Functionality:
Future Upgrades:
Database Options and Analysis
Elasticsearch:
Azure Cosmos DB (Free Tier):
Traditional Database:
Cost and Performance Considerations
Implementation Strategy
Database Selection:
Synchronization Process:
Future-Proof Architecture:
Conclusion
Selecting the most suitable read-optimized database is crucial for achieving our project's goals of implementing CQRS and enhancing search functionality. Considering the pros, cons, cost, and performance factors of Elasticsearch, Azure Cosmos DB (Free Tier), and traditional databases will guide our decision.
Please comment with your valuable feedback to achieve this in our project