Structural Properties
Configure database-specific structural properties like partition keys and row keys that derive their values from model properties.
Many NoSQL and cloud databases require structural properties - keys and metadata columns that are fundamental to how the database operates. These go beyond regular type mappings because they define how data is partitioned, ordered, and accessed. NeoArc Studio models these as first-class constructs on database profiles, with derivation relationships tracked in the intent graph for full impact analysis.
Supported Databases
Four built-in vendor templates include structural properties. Each template defines the required keys and their scope.
Scope: Global vs Per-Entity
Each structural property has a scope that determines whether it applies uniformly or needs per-entity configuration.
Configuring Derivation
Structural properties derive their values from model properties. A PartitionKey might be a single property (tenantId), or a composite of multiple properties concatenated with a separator (tenantId_region). Derivation can even traverse relationships to pull values from related entities.
Visibility Across the System
Structural properties appear throughout NeoArc Studio.
| Context | Display |
|---|---|
| Data View Editor (persistence mode) | SP badge, derivation formula, click to expand inline editor with searchable property selection and notes |
| Data View Viewer (published site) | SP badge, derivation formula, chevron expander showing description, derivation sources, and architect notes |
| DDL Export | Structural property columns placed at the top of CREATE TABLE output with derivation comments |
| Schema Lineage | Schema fields can reference structural properties as lineage sources, tracked via maps-to edges |
| Impact Analysis | High-severity warnings when source properties are modified or deleted |
Custom Structural Properties
Structural properties are not limited to built-in vendor templates. Any database profile can have structural properties added via the profile editor. This supports databases not in the template list, or custom requirements like Global Secondary Index keys in DynamoDB (GSI1PK, GSI1SK) that go beyond the default template.