The Scripta Qumranica Electronica project makes use of multifarious data, simple relational, spatial, and graph. The modern relational database is particularly well-suited to such tasks and comes with a long history of reliable usage in the business sector. Our team had experience with MariaDB/MySQL coming in to the project, so we started out using that. After more rigorous testing, we have found MariaDB to be robust and performant, even when working with limited computational resource.
MariaDB provides multiple possible database engines; we use InnoDB, which is standard these days and provides very good performance with our heavily normalized data and many foreign keys. For our graph data, which is structured as a DAG, we experimented with MariaDB’s Open Query GRAPH computation engine, but we found the Common Table Expressions on the InnoDB tables simpler to work with similar performance. Searches that traverse many nodes complete well within acceptable limits. We leverage the GIS extensions of MariaDB for storing and analyzing our geometric data.
Our information is highly normalized and most of our tables have only a few columns. By breaking the data into very small entities, the database is able to maintain infinite undo without unreasonable storage demands. In order to mitigate the complexity of the database schema, we have documented the it extensively. Online documentation for the database can be found at https://qumranica.org/database. A detailed presentation of how the database functions within the framework of our project aims is presented at https://github.com/Scripta-Qumranica-Electronica/SQE_Database/blob/master/docs/SQE_Database_Overview.md.