I am curious to know how CAD programs and FreeCAD in particular stores data?
Is it a relational DB, an object store, NoSQL, a structured file format or something else?
The reason I'm asking is that I've been exploring Graph Databases recently and there are some really useful features. They contain vertices (nodes or objects) and edges (links or relationships). I was just speculating whether CAD objects could benefit from this model. The architecture can manage mind boggling numbers of vertices and edges (into the billions), with little impact on the inherently speedy performance.
I was thinking the directed graph relationship model is a superset of hierarchical graphs and can deliver really sophisticated and fast query responses, so slicing and dicing the CAD model to show subsets or perspectives for any number of interesting dimensions, such as: functional, organisational, business, owner, manager, drafter, version, attribute, metadata, etc.
Just a thought. Is this something that's been explored already and if so, what were the conclusions?
One graph DB implementation is https://janusgraph.org/
Cheers,
Greg
Backing Datastore
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
Re: Backing Datastore
FreeCAD files are zip containers. Inside you find XML files.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Re: Backing Datastore
and .brep files