designing-databases

Design and optimize database schemas for OLTP and OLAP workloads.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/sekka/dotfiles --skill designing-databases
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: designing-databases
Source: https://github.com/sekka/dotfiles/tree/main/home/.claude/skills/designing-databases
Command: npx skills add https://github.com/sekka/dotfiles --skill designing-databases

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

データベーススキーマ設計・インデックス・クエリ最適化を包括的に支援します。

Core Features & Use Cases

  • ERモデルと論理モデルの設計
  • テーブル定義・インデックス戦略
  • パフォーマンス分析と移行計画

Quick Start

ユースケースに応じたER図と最適なインデックス設計を提案します。

Frequently Asked Questions about designing-databases

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

FAQPage Schema
How do I design a database schema for optimal performance?

Database schema design combines ER modeling, normalization, and indexing strategies to balance data integrity with query performance. Start by mapping entities and relationships, normalize to reduce redundancy, then apply indexes on frequently queried columns and foreign keys to accelerate lookups across OLTP and OLAP workloads.

What's the difference between OLTP and OLAP database design?

OLTP databases prioritize fast transactional writes with normalized schemas and ACID compliance, while OLAP databases optimize read-heavy analytical queries using denormalized structures and partitioning. Schema design choices—indexing strategies, data layout, and query paths—differ significantly between the two workload types.

How do indexes improve query performance?

Indexes create sorted lookup structures on table columns, reducing the rows scanned during SELECT queries. Strategic indexing on WHERE clauses, JOIN conditions, and ORDER BY fields dramatically accelerates query execution, though it increases write overhead and storage. Index design requires analyzing query patterns and workload characteristics.

When should I normalize vs. denormalize my database schema?

Normalization eliminates data redundancy and enforces consistency, essential for OLTP systems with frequent updates. Denormalization trades redundancy for read speed in OLAP and high-volume analytical scenarios. The choice depends on your workload: prioritize normalization for transactional consistency, denormalization for query-heavy reporting.

How do I plan a database migration across different schemas?

Migration planning involves mapping old schema to new structure, designing transition steps to preserve data integrity, validating against ACID requirements, and coordinating with indexing and partitioning strategies. Phased cutover with backward compatibility checks minimizes downtime and risk across production workloads.

What role does partitioning play in database scalability?

Partitioning divides large tables by range, list, or hash criteria to distribute data across storage systems and improve query performance on subsets. It enables parallel processing, reduces index size per partition, and supports availability and disaster recovery while maintaining logical schema consistency.