mirror of
https://github.com/freedbygrace/SQL.git
synced 2026-07-26 11:28:16 +00:00
Expand to Business Analytics: Add Customer, Sales, and KPI models
Major expansion from fraud detection to comprehensive business analytics: DATABASE CHANGES: - Renamed database from 'fraud_detection' to 'business_analytics' - Renamed user from 'fraud_analyst' to 'data_analyst' - Expanded from 20 to 39 tables across 4 business models NEW MODELS (19 tables): 1. Customer Analytics (5 tables): - customer_segments, customer_lifetime_value, churn_predictions - customer_satisfaction, engagement_metrics 2. Sales & Revenue Analytics (6 tables): - product_catalog, sales_transactions, sales_targets - sales_performance, revenue_forecasts 3. KPI & Metrics (8 tables): - kpi_definitions, daily_metrics, monthly_summaries - trend_analysis, dashboard_snapshots - report_definitions, report_executions, data_quality_checks DATA GENERATION: - Extended generate_data.sh with 6 new steps (now 15 total) - Added CLV calculations for all customers - Added churn predictions based on transaction recency - Added 30K customer satisfaction surveys - Added 1M sales transactions linked to 24 products - Added 90 days of daily KPI metrics - Added 24 months of business summaries SQL EXERCISES (3 new levels): - Level 2: Customer Analytics (10 exercises + 3 challenges) - Level 3: Sales & Revenue Analysis (12 exercises + 3 challenges) - Level 4: KPI Dashboards & Metrics (12 exercises + 3 challenges) DOCUMENTATION: - Updated README.md with business analytics focus - Updated QUICKSTART.md with new data generation steps - Updated SETUP_COMPLETE.md with 39-table architecture - Added DATA_MODELS.md with complete model specifications - Added WHATS_NEW.md with migration guide SEED DATA: - Added 8 customer segments (VIP, High Value, etc.) - Added 24 products across 5 categories - Added 16 KPI definitions across 4 categories - Added 8 standard report definitions All changes maintain idempotency and backward compatibility with existing fraud detection functionality.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
# ============================================================================
|
||||
# Setup Verification Script
|
||||
# ============================================================================
|
||||
# Verifies that the fraud detection database is properly set up
|
||||
# Verifies that the business analytics database is properly set up
|
||||
# ============================================================================
|
||||
|
||||
set -e
|
||||
@@ -18,12 +18,12 @@ NC='\033[0m' # No Color
|
||||
# Configuration
|
||||
DB_HOST="${POSTGRES_HOST:-localhost}"
|
||||
DB_PORT="${POSTGRES_PORT:-5432}"
|
||||
DB_NAME="${POSTGRES_DB:-fraud_detection}"
|
||||
DB_USER="${POSTGRES_USER:-fraud_analyst}"
|
||||
DB_NAME="${POSTGRES_DB:-business_analytics}"
|
||||
DB_USER="${POSTGRES_USER:-data_analyst}"
|
||||
DB_PASSWORD="${POSTGRES_PASSWORD:-SecurePass123!}"
|
||||
|
||||
echo -e "${BLUE}============================================================================${NC}"
|
||||
echo -e "${BLUE}Financial Fraud Detection Database - Verification${NC}"
|
||||
echo -e "${BLUE}Business Analytics Database - Verification${NC}"
|
||||
echo -e "${BLUE}============================================================================${NC}"
|
||||
echo ""
|
||||
|
||||
@@ -34,7 +34,7 @@ execute_sql() {
|
||||
|
||||
# Check 1: Docker containers
|
||||
echo -e "${YELLOW}[1/10] Checking Docker containers...${NC}"
|
||||
if docker ps | grep -q "fraud_detection_db"; then
|
||||
if docker ps | grep -q "business_analytics_db"; then
|
||||
echo -e "${GREEN}✓ PostgreSQL container is running${NC}"
|
||||
else
|
||||
echo -e "${RED}✗ PostgreSQL container is not running${NC}"
|
||||
@@ -42,7 +42,7 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if docker ps | grep -q "fraud_detection_ui"; then
|
||||
if docker ps | grep -q "business_analytics_ui"; then
|
||||
echo -e "${GREEN}✓ DB-UI container is running${NC}"
|
||||
else
|
||||
echo -e "${RED}✗ DB-UI container is not running${NC}"
|
||||
|
||||
Reference in New Issue
Block a user