Logo
NeoArc Studio

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.

Azure Table Storage
PartitionKey + RowKey + Timestamp. All global and required. The PartitionKey determines the storage partition for data distribution and transactions. The RowKey uniquely identifies an entity within a partition.
Azure Cosmos DB
id (global) + partitionKey (per-entity). The id field is the unique document identifier. The partition key path varies by container and determines data distribution across physical partitions.
Amazon DynamoDB
pk + sk. Both global and required. Supports single-table design where the partition key and sort key encode different access patterns for different entity types in the same table.
Apache Cassandra
partitionKey (per-entity, required) + clusteringColumns (per-entity, optional). Partition key columns determine data distribution across nodes. Clustering columns define sort order within a partition.

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.

ContextDisplay
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 ExportStructural property columns placed at the top of CREATE TABLE output with derivation comments
Schema LineageSchema fields can reference structural properties as lineage sources, tracked via maps-to edges
Impact AnalysisHigh-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.