mrpete5 / FilmFocus

1 stars 0 forks source link

Migrate database from SQLite3 to a better option, ReqID 33 #24

Open mrpete5 opened 11 months ago

mrpete5 commented 11 months ago

Research what database(s) we should be using. Make a migration if necessary. We are using Django's default database of SQLite3, but should upgrade.

mrpete5 commented 11 months ago

Here is a comparison of some common database options for Django:

SQLite (Default)

Lightweight file-based database Good for development/testing Not suitable for production with multiple concurrent connections

Pros

Simple setup - works out of the box No database server needed

Cons

Not scalable for high traffic production sites No user management, permissions, etc.

PostgreSQL

Powerful open-source relational database Full-featured and production ready

Pros

Handles concurrent connections well Excellent performance with large datasets Advanced features like JSON type

Cons

Slightly more complex setup Need to manage users and permissions

MySQL

Popular open-source SQL database Widely used with many hosting providers

Pros

Easy to find compatible web hosting Fast performance for medium traffic sites

Cons

Not as robust as PostgreSQL for advanced features

Conclusion

For a real production site, PostgreSQL is likely the best choice. It scales well and has a robust feature set. MySQL can also work for many use cases. SQLite is fine for testing/development but not suitable for deploying publicly.