Brightspot CMS Developer Guide

Data modeling


Unlike traditional ORMs (Object-Relational Mapping), Dari does not map objects to database tables. Instead, it stores data in a schema-less format that is appropriate for the underlying database. For RDBMS (Relational Database Management Systems), Dari serializes object data into JSON and stores it in the database as a BLOB. Changes to the data model do not require updates to database schema.

With Dari, data is modeled with Java classes that use standard data types. A Java class serves as the specification for a model, defining types, relationships, and behaviors. For example, you can model a system user as User, with a first name, last name, and username. You can then define a related model called Activity, a base class with Date and User fields. Specific system activities like checkin and checkout can be modeled as subclasses of Activity. What results is an emerging object model representing instances of User and Activity that are stored in the underlying database.

Anything can be modeled and accessed with a web view or through an API. A data model can be altered by modifying the Java classes that define it. Free of schema dependencies, Dari enables rapid data model changes.

Previous Topic
HTTP endpoint database
Next Topic
Modeling
Was this topic helpful?
Thanks for your feedback.