Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Flexibility in ChatStorage Data Storage System #21

Open
brunocapelao opened this issue Jan 6, 2024 · 0 comments
Open

[Feature] Flexibility in ChatStorage Data Storage System #21

brunocapelao opened this issue Jan 6, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@brunocapelao
Copy link
Owner

Detailed Description:

  • Currently, the data storage system for messages in our project exclusively uses SQLite through SQLAlchemy. While efficient, this approach limits scalability and flexibility as it restricts the possibility of using other databases or even choosing not to use a database at all. The proposal is to modify the ChatStorage class to allow the use of different data storage systems, including the option of not using a database, depending on the specific project or environment needs.

Reproduction Steps (if applicable):

  • Not applicable, as this is a proposal for improving the system architecture.

Solution Proposals:

  1. Generic Storage Interface: Create a generic storage interface that can be implemented by different storage systems, such as SQL and NoSQL databases, or even in-memory or file-based storage, such as JSON, Parquet, etc.
  2. Diverse Implementations: Develop multiple implementations of this interface to support different storage systems.
  3. Dynamic Configuration: Allow the storage type to be configured dynamically, possibly through a configuration file or environment variables.
  4. Documentation Update: Update the documentation to reflect the new storage capabilities and provide instructions on how to configure and use different storage systems.

Acceptance Criteria:

  • The ChatStorage class should be able to support different storage systems.
  • It should be possible to configure the storage system without modifying the source code.
  • Existing functionality should be maintained for users who continue to use SQLite.
  • The documentation should be clear and guide how to use different storage systems.
@brunocapelao brunocapelao added the enhancement New feature or request label Jan 6, 2024
@brunocapelao brunocapelao changed the title [Enhancement] Flexibility in ChatStorage Data Storage System [Feature] Flexibility in ChatStorage Data Storage System Jan 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: No status
Development

No branches or pull requests

1 participant