Skip to content

ADR 06 ‐ MongoDB for questions database

Pablo García-Ovies Pérez edited this page Mar 11, 2024 · 1 revision

Status

  • Proposed
  • Accepted
  • Superseded

Context

We need to choose a DBMS to persist questions.

Decision

We have decided to implement the database for questions management through a non relational management system, MongoDB, due to the conveniences it offers in terms of flexible schema. We have thought about using relational databases but we needed to store lists and json. One big point to use MongoDB is that the number of options for each question is variable.

Consequences

  • Benefits: -Flexible Schema Evolution: Evolving the database schema over time, especially in response to changing questions requirements, can be quite easy. -Storing json: In MongoDB we can store json data with ease.

  • Trade-offs: -Some querys: Some types of querys can be quite slow with MongoDB.

Compliance

Once implemented, it won't be an option to switch to something else.

Notes

  • Original Author: @uo288543
  • Approval date: 20/02/2024
  • Approved by: MM08
  • Superseded date: N/A
  • Last modified date: N/A
  • Modified by: N/A
  • Last modification: N/A