Amazon Keyspaces - Improving table schema creation UX
Summary
Led the design of Frozen Collections feature for Amazon Keyspaces, enabling customers to create complex nested data structures in their Apache Cassandra workloads. This feature removed a major adoption blocker, with 42% of Cassandra customers previously unable to migrate due to missing Frozen Collections support.
Problem
Customer Pain Points
-
Migration Blocker
- 42% of Cassandra customers blocked from adopting Keyspaces
- No support for nested collection data types
- Unable to port existing schemas with frozen collections
-
Schema Limitations
- No way to create complex nested data structures
- Missing support for collections as primary keys
- Limited ability to protect collections from partial updates
Technical Context
What are Frozen Collections?
Frozen Collections in Cassandra are immutable collection types that:
- Require updating entire collection at once
- Enable nesting of collections (e.g., maps within maps)
- Allow collections to be used as primary keys

Example Schema:
locations {
country_id: map<text, frozen<map<text, frozen<list<text>>>>>
// Represents: Country → State → Cities → Restaurants
}Solution
1. Schema Creation Experience
- Redesigned table creation flow to support nested collections
- Added visual indicators for frozen vs regular collections
- Implemented validation for nested schema structures

2. Table Details Improvements
- Enhanced schema visualization for nested types
- Added clear display of primary key components
- Improved column type indicators


Key design decisions
Schema Editor Pattern
Three approaches were considered:
- Traditional Form-based Schema Creator
- Pros: Familiar pattern, easier implementation
- Cons: Not scalable for nested collections, complex validation

- Node-based Schema Editor
- Pros: Better visualization of nesting, intuitive
- Cons: Required new pattern approval, longer development time

- Hybrid Approach (Selected)
- Form-based interface with hierarchical collection editor
- Pros:
- Combines familiarity of forms with visual hierarchy
- Clear parent-child relationships for nested types
- Progressive disclosure of complexity
- Maintains existing interaction patterns
- Cons:
- Required careful UX consideration for deep nesting
- More complex validation logic

Decision: Implemented the hybrid approach, using a form-based column designer with an embedded tree structure for nested collections. This provided an intuitive way to visualize and edit complex data structures while maintaining familiarity with existing patterns.
Key Implementation Details:
- Indented tree structure shows nesting relationships
- Dropdown selectors for collection types at each level
- Clear visual hierarchy for parent-child relationships
- Progressive disclosure of nested type options
- Horizontally scrollable tree structure for scalability
Challenges
- Working within existing component limitations
- Getting approval for new interaction patterns
- Maintaining accessibility standards for complex interactions
Impact
Launch Results
- Unblocked 42% of potential Cassandra migrations
- Enabled complex data modeling capabilities
- Improved schema creation experience for all users