Best way to store tests and results
New here? Learn about Bountify and follow @bountify to get notified of new bounties! x

We have tests that we need to store in a better way. It’s multi tenant SAAS solution all with shared db.

-We have 10-50 questions on a test
-We typically have 3-8 possible answers per question
-One possible answer is “skip” which is either done on purpose or they timeout. Probably makes sense to record the difference in actual skip vs timeout

We are needing to get some ideas on how best to store the outcomes. Ideally we also store the actual test and it’s questions with each set answers so that if test edits happen we can easily see the exact state of what the test taker saw. We would love to store some behavior data here as well. Total time taking the test. Time per question.

Please assume a SQL like db (postgresql) and table would have millions of outcomes stored. (Maybe 1k different tests and 1mm taker submissions per year) ideally your schema would scale beyond that.

We will need to run queries and stats per test, per person for a test or several tests, ideally the db can stay fast. We care a lot more about reads and stats performance than insert performance. Said differently a slow insert is a good trade off to make for a faster more scalable design.

19 days ago

Crowdsource coding tasks.

0 Solutions