All tables used by Pistachio are created by CloudFormation. To prevent name conflicts, all table names include an environment identifier, either prod or the color name of one of the dev environments (currently pink, blue, teal, lime, and gold). For each partner, there is also a partner devices table that includes the partner code to prevent name conflicts.

pistachio<_environment>_adaptive_delivery_rulesets

This table holds all the delivery rulesets for the environment.

Indexes

Index Partition Key Sort Key
Primary partner_id ruleset_id

Applications

Name Type Description
Goldilox Read Reads rulesets to evaluate in the content selector, and provide default ruleset to config endpoint.
Jarvis Read/Write Administers rulesets. (Ads, edits, and deprecates.)

pistachio<_environment>_application_partners

This table holds partner configuration.

Indexes

Index Partition Key Sort Key
Primary partner_code  
PartnerIdIndex partner_id  

Applications

Name Type Description
Goldilox Read  
Jarvis Read  

pistachio<_environment>_categories

This table contains the categories used for filtering per partner.

Indexes

Index Partition Key Sort Key
Primary partner_id category_id

Applications

Name Type Description
Jarvis Read Reads categories for ruleset creation/editing.

pistachio<_environment>_client_metrics

This table holds the list of client metrics available in each version of the client.

Indexes

Index Partition Key Sort Key
Primary partner_id client_version_code

Applications

Name Type Description
Jarvis Read Reads client metrics to control which metrics are available when creating/editing rulesets

pistachio<_environment>_devices<_partnercode>

This table contains the Cognito and Pinpoint IDs for each device.

Indexes

Index Partition Key Sort Key
Primary device_id profile
devices_cognito_id_index cognito_id  

Applications

Name Type Description
Goldilox Read/Write Writes client data from auth endpoint.
Jarvis Read Reads device table to display data when querying devices