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

Proposal to Replace MySQL with MongoDB in OpenIM #1505

Closed
cubxxw opened this issue Nov 30, 2023 — with Slack · 0 comments · Fixed by #1520 or #1523
Closed

Proposal to Replace MySQL with MongoDB in OpenIM #1505

cubxxw opened this issue Nov 30, 2023 — with Slack · 0 comments · Fixed by #1520 or #1523
Labels
kind/design Categorizes issue or PR as related to design. kind/feature Categorizes issue or PR as related to a new feature.
Milestone

Comments

Copy link
Contributor

cubxxw commented Nov 30, 2023

OpenIM currently uses a variety of stateful databases including MySQL, Redis, Mongo, Kafka, etc. Managing stateful databases, especially relational ones like MySQL, can be complex and resource-intensive.

Proposal

I propose that we remove MySQL from OpenIM's architecture and replace it with MongoDB. This change would simplify the database layer, potentially improving performance and scalability.

Considerations

  • Code Adjustments: The codebase needs to be revised to support MongoDB operations fully.
  • Schema Migration: Migrate existing table structures and data from MySQL to MongoDB.
  • Data Integrity and Transition: Ensure data integrity during the migration process and provide a seamless transition.
  • Future Upgrades: Plan for future upgrades and changes in the database layer.

Expected Benefits

  • Simplified Management: MongoDB, being a NoSQL database, can simplify database management.
  • Scalability: MongoDB offers better scalability options compared to traditional SQL databases.
  • Performance: Potential performance improvements with MongoDB’s document-based storage.

Request for Comments

I invite the community to discuss this proposal. Please consider:

  • Potential challenges in migrating from MySQL to MongoDB.
  • Compatibility issues with existing deployments.
  • Long-term impacts on maintenance and scalability.
@cubxxw cubxxw added kind/design Categorizes issue or PR as related to design. kind/feature Categorizes issue or PR as related to a new feature. labels Nov 30, 2023 — with Slack
@cubxxw cubxxw added this to the v3.5 milestone Nov 30, 2023 — with Slack
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/design Categorizes issue or PR as related to design. kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
1 participant