-
Notifications
You must be signed in to change notification settings - Fork 0
The Architecture
VievCommunity edited this page May 27, 2020
·
3 revisions
FactEngine is a database query engine over one or more data stores, and uses a 3-Layer Architecutre.
The three layers are:
- Query/Data Definition Engine (FactEngine);
- An Object-Role Modeling metamodel over one or more data stores; and
- The data store/s, which include their relational metamodel.
Having an Object-Role Model metamodel over a relational metamodel allows for a few things to happen in the reasonable amount of time and with inherent benefits. These are:
- Graph Database Queries can be expressed over a relational model;
- SQL queries can be expressed over a relational model;
- We don't need to build a database from scratch. The relational model is tried and proven and scales well;
- A pure Object-Role Modeling database would store all information in 5th/6th Normal Form, which is highly inefficient use of disk space;
- The trade-offs allow for rapid proof of concept;
- There is no impediment to transferring the query languages to a 5th/6th Normal Form database in the future if that is seen to be beneficial.
Basically, the FactEngine architecture is one of simplicity at a reasonable budget and timeframe.