For anyone still using Cassandra for page views, you'll know that Canvas support for Cassandra has been on life support for some time, and does not support modern releases of Cassandra. With the 2024-06-19 stable release of Canvas, Cassandra support will be completely removed. But there is a smooth migration path! As part of that release, a pre-deploy migration will check if you're using Cassandra, and if so move all of the page view data back into the Postgres database. Depending on how much data you have, this migration may take quite some time, so plan accordingly. To give yourself more time, it is possible to run that migration (
https://github.com/instructure/canvas-lms/commit/669c4cabac9a65049199f581ee518027cbe1623a#diff-3089f3bf30000e4222508a97d4225974750a35ca236b34dc70310589b07c8f7e) with an older release of Canvas, and continue running that older release afterwards. You'll just need to restart any running Canvas instances after the migration completes to pick up the change in where to look for page views. If you're also running the Analytics plugin, be sure that you're properly deploying the corresponding release of that plugin when you deploy the 2024-06-19 release of Canvas.
As storing page view data in the database is not the primary method that Instructure uses for our own cloud hosted instances (but is how many developers run Canvas locally), it's possible that a large self hosted school may run into performance issues with page views in the database. If you run into this, please post on the mailing list, or contact us in IRC, and we'll be happy to support you and attempt to improve the performance of this feature.
Cody Cutrer
Software Engineer
Instructure