Data Modeling That Scales
If you've never heard of Supertyping and Subtyping as it relates to FileMaker, you're probably not alone – and you are in for a mind bending journey in this video presentation from Dave Graham (Geist Interactive), presented as Data Modeling that Scales at DevCon 2017.
The main thrust of his message explains the difference between database normalization and subtyping (which includes supertypes and subtypes). These two systems categorize and store data differently.
Why is it different?
Most FileMaker developers use the Anchor Buoy method of organizing the relationship graph, which means the developer bases every layout on the anchor, or the far left table of the model:
Subtyping turns that concept on it's head. And makes you, as a developer, think of data in a brand new way.
As you can see, it has nothing in common with Anchor Buoy.
Check out the video presentation keeping that in mind:
In the video, Graham refers to a new, free, highly scalable starter solution called Carbon that will be released by Geist Interactive at some point (hopefully soon). Carbon uses the subtyping architecture you saw in this video.
Why use it?
This concept takes a bit of thought and some concrete examples to get your head around before the benefits become obvious
- Highly Scalable
- Modular layout elements
- Modular scripts
- Ease of design (once you grok it)
- Speed of development
If that's not enough to make you consider using it, well, stick with Anchor Buoy. That's worked for a long time. But give this some thought if your client's database is going to have a lot of data and needs to be fast.
Free FileMaker Example File
There is a free example file available, as well. It's the mockup file Graham built to make this video and is loaded with useful examples.
Always do sober what you said you'd do drunk. That will teach you to keep your mouth shut.