Data Management Guide

This comprehensive guide covers all aspects of data management for the HostingCo system, including seed data, configuration, migrations, and database operations.

📁 Data Directory Structure

data/
├── README.md                    # Data documentation
├── seed/                        # Database seed data
│   ├── users.json              # Sample user accounts
│   ├── servers.json            # Sample server configurations
│   ├── invoices.json           # Sample invoice data
│   └── support-tickets.json    # Sample support tickets
├── config/                      # Configuration files
│   ├── hosting-plans.json      # Hosting plan definitions
│   └── system-settings.json    # System configuration
├── sample/                      # Sample data for development
│   ├── dashboard-stats.json    # Dashboard statistics
│   └── analytics-data.json     # Analytics and metrics data
├── migrations/                  # Database migrations
│   ├── 001_initial_schema.sql  # Initial database schema
│   └── 002_add_indexes.sql     # Performance indexes
└── backups/                     # Backup storage (auto-created)
    ├── database/                # Database backups
    ├── files/                   # File backups
    └── logs/                    # Log backups

🌱 Seed Data Management

Seed data provides initial data for development and testing environments.

Available Seed Files

users.json: Sample user accounts with different roles
servers.json: Sample server configurations and statuses
invoices.json: Sample invoice data for testing billing
support-tickets.json: Sample support ticket scenarios

Loading Seed Data

# Load all seed data
npm run seed:all

# Load specific seed data
npm run seed:users
npm run seed:servers
npm run seed:invoices

Configuration Management

Configuration files define system settings and business rules.

Key Configuration Files

hosting-plans.json: Defines available hosting plans and pricing
system-settings.json: Global system configuration
feature-flags.json: Feature toggle settings

Updating Configuration

# Reload configuration without restart
npm run config:reload

# Validate configuration files
npm run config:validate

Database Migrations

Database migrations manage schema changes and data transformations.

Migration Commands

# Run pending migrations
npm run migrate:latest

# Rollback last migration
npm run migrate:rollback

# Create new migration
npm run migrate:create migration_name
Important: Always backup your database before running migrations in production.