data-modeling

Guide database store selection and schema design for DDD aggregates.

2|Updated Jun 26, 2026
One-click install
npx skills add https://github.com/bRRRITSCOLD/compainy --skill data-modeling-brrritscold
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: data-modeling
Source: https://github.com/bRRRITSCOLD/compainy/tree/main/skills/data-modeling
Command: npx skills add https://github.com/bRRRITSCOLD/compainy --skill data-modeling-brrritscold

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill unit helps engineers and architects in choosing the right data store, designing schemas, normalizing/denormalizing, mapping DDD aggregates, planning migrations, and evaluating polyglot persistence.

Core Features & Use Cases

  • Store Selection: Guiding principles for choosing the appropriate database for different workloads.
  • Logical Data Modeling: Techniques for relational, document, NoSQL, wide-column, vector, time-series, and graph databases.
  • DDD Aggregate Mapping: Ensuring DDD aggregates align with persistence boundaries and consistency.
  • Indexing, Migrations, & Integrity: Best practices for indexing, migration strategies, and data integrity enforcement.
  • Polyglot Persistence: Criteria for introducing a second store in a multi-store architecture.
  • Vector Store Design: Designing embeddings for semantic search and retrieval-augmented generation.
  • Use Case: An architect needs to decide on the database for a new service and ensure it meets the performance and scalability requirements.

Quick Start

Invoke the data-modeling skill to receive guidance on selecting a database for your next project.

Frequently Asked Questions about data-modeling

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose the right database for different application workloads?

Database selection for different workloads involves evaluating relational, document, NoSQL, wide-column, vector, time-series, and graph stores against your specific performance and scalability requirements using established guiding principles.

What is polyglot persistence and when do I introduce a second data store?

Polyglot persistence is using multiple data stores in a single architecture. You introduce a second store by applying specific criteria to evaluate when multi-store architectures best meet diverse workload demands and consistency boundaries.

How do I map DDD aggregates to persistence boundaries?

Mapping DDD aggregates to persistence boundaries requires aligning domain design with database schemas to ensure consistency. This technique ensures DDD aggregates align correctly with your chosen data store boundaries.

How should I design a vector store for semantic search and retrieval-augmented generation?

Designing a vector store for semantic search involves structuring embeddings to support retrieval-augmented generation. This requires specific schema design techniques tailored to vector databases for efficient similarity queries.

What are the best practices for database schema migrations and data integrity?

Best practices for database schema migrations and data integrity include implementing strategic migration planning and enforcing integrity constraints. These practices apply across various logical data models to maintain consistency during transitions.