{
  "format": "dataset-manifest/1",
  "slug": "music-mixing-and-dj-software",
  "version": 3,
  "seed": "music-mixing-and-dj-software:1",
  "spec": {
    "format": "dataset/1",
    "slug": "music-mixing-and-dj-software",
    "name": "DJ Performance Metrics",
    "tagline": "User performance metrics, mixing plans, tracks, genres, and subscriptions in DJ software.",
    "description": "Artists create dynamic sound experiences by blending audio tracks, utilizing unique performance sets that reflect their personal styles. Users subscribe to various mixing plans, allowing them to access a wide range of tracks organized by genre. Each performance set consists of multiple tracks, which can be combined in countless ways to create the perfect mix. Users may have a few go-to setups but often experiment with different combinations, leading to highly personalized performances that evolve over time.\n\nIn this dataset, the 'users' table catalogs individual artists, detailing subscription levels and user preferences. The 'performance_sets' table captures the distinct combinations of tracks that each user creates for their performances, linking to the corresponding tracks in the 'tracks' table, which holds information about individual audio pieces, including their genre from the 'genres' table. The 'subscriptions' table outlines the different plans available to users, indicating which features are accessible based on user subscription levels.\n\nDevelopers can explore questions such as: How do subscription levels influence the type and diversity of tracks used in performance sets? What genres are most popular among different user segments? How do performance patterns change over time for individual artists? By analyzing this synthetic dataset, users can gain insights into user behavior, track popularity, and performance trends in the DJ software space. This practice can enhance skills in data analysis, relational database management, and understanding of user engagement in the creative music production industry.",
    "domain": "energy",
    "shape": "slowly-changing",
    "useCases": [
      "etl-pipelines",
      "teaching"
    ],
    "keywords": [
      "DJ performance",
      "music mixing",
      "audio tracks",
      "subscriptions",
      "genres",
      "analytics"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains information about the users of the DJ software, including their subscription details. Each user can have multiple performance sets.",
        "rows": 150,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "Full name of the user."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "Email address of the user."
          },
          "subscription_id": {
            "kind": "fk",
            "ref": "subscriptions.id",
            "nullable": true,
            "description": "Reference to the subscription plan of the user."
          }
        }
      },
      "performance_sets": {
        "description": "This table captures the performance sets created by users, linking them to specific tracks and genres. Each set can include multiple tracks.",
        "rows": 300,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each performance set."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user who created the performance set."
          },
          "title": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "Title of the performance set.",
            "pool": [
              "live",
              "set",
              "energy",
              "vibe",
              "mix",
              "session",
              "showcase",
              "experience",
              "performance",
              "event",
              "beat",
              "rhythm",
              "show",
              "fusion",
              "groove",
              "sensation",
              "journey",
              "exploration",
              "celebration",
              "spectacle"
            ]
          },
          "created_at": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date and time when the performance set was created.",
            "dayProfile": "waking"
          }
        }
      },
      "tracks": {
        "description": "This table lists all the tracks available for mixing, including details about their genres and durations. Tracks can be linked to multiple performance sets.",
        "rows": 500,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each track."
          },
          "title": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "Title of the track.",
            "pool": [
              "beat",
              "drop",
              "mix",
              "vibe",
              "energy",
              "flow",
              "pulse",
              "echo",
              "synth",
              "track",
              "sound",
              "wave",
              "rhythm",
              "loop",
              "jam",
              "tune",
              "session",
              "melody",
              "harmony",
              "bass",
              "chord"
            ]
          },
          "duration": {
            "kind": "int",
            "min": 30,
            "max": 600,
            "description": "Duration of the track in seconds.",
            "distribution": "normal"
          },
          "genre_id": {
            "kind": "fk",
            "ref": "genres.id",
            "description": "Reference to the genre of the track."
          }
        }
      },
      "genres": {
        "description": "This table contains different music genres available in the DJ software. Each track is associated with a genre.",
        "rows": 20,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each genre."
          },
          "name": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "Name of the music genre.",
            "pool": [
              "house",
              "techno",
              "trance",
              "dubstep",
              "electro",
              "hiphop",
              "pop",
              "indie",
              "rock",
              "disco",
              "jazz",
              "soul",
              "funk",
              "reggae",
              "ambient",
              "chill",
              "dance",
              "synthwave",
              "drumandbass",
              "trap"
            ]
          }
        }
      },
      "subscriptions": {
        "description": "This table describes the different subscription plans available for users of the DJ software, including features and pricing.",
        "rows": 10,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each subscription plan."
          },
          "plan_name": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "Name of the subscription plan.",
            "pool": [
              "basic",
              "premium",
              "pro",
              "family",
              "student",
              "enterprise",
              "annual",
              "monthly",
              "lifetime",
              "trial",
              "limited",
              "unlimited",
              "standard",
              "deluxe",
              "exclusive",
              "custom",
              "flexible",
              "pay-as-you-go",
              "bundle",
              "add-on",
              "enhanced"
            ]
          },
          "price": {
            "kind": "decimal",
            "min": 5,
            "max": 50,
            "scale": 2,
            "description": "Monthly price of the subscription plan.",
            "distribution": "long-tail"
          },
          "features": {
            "kind": "json",
            "template": {
              "feature": {
                "kind": "words",
                "min": 3,
                "max": 20,
                "description": "Feature of the subscription plan."
              }
            },
            "description": "List of features included in the subscription plan."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "nullable",
      "timestamped",
      "self-referencing"
    ],
    "analysisQuestions": [
      "What are the most popular genres among users?",
      "How do subscription plans affect the types of performance sets created?",
      "What trends can be observed in track usage over time?",
      "How do individual user styles differ in their performance sets?",
      "What is the average duration of tracks used in performances?"
    ],
    "suggestedQueries": [
      {
        "title": "List all users and their subscription plans",
        "sql": "SELECT u.full_name, s.plan_name FROM users u LEFT JOIN subscriptions s ON u.subscription_id = s.id;",
        "dialect": "postgres"
      },
      {
        "title": "Count performance sets by genre",
        "sql": "SELECT g.name, COUNT(ps.id) FROM performance_sets ps JOIN tracks t ON ps.id = t.id JOIN genres g ON t.genre_id = g.id GROUP BY g.name;",
        "dialect": "postgres"
      },
      {
        "title": "Get the average track duration per genre",
        "sql": "SELECT g.name, AVG(t.duration) FROM tracks t JOIN genres g ON t.genre_id = g.id GROUP BY g.name;",
        "dialect": "postgres"
      },
      {
        "title": "Find users with the most performance sets",
        "sql": "SELECT u.full_name, COUNT(ps.id) as performance_count FROM users u JOIN performance_sets ps ON u.id = ps.user_id GROUP BY u.full_name ORDER BY performance_count DESC;",
        "dialect": "postgres"
      },
      {
        "title": "Track usage trend over time",
        "sql": "SELECT DATE(ps.created_at) as performance_date, COUNT(ps.id) FROM performance_sets ps GROUP BY performance_date ORDER BY performance_date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Analytics for Music Events",
        "body": "Event organizers in the music industry can use this dataset to analyze how different genres attract audience engagement during live performances. By examining performance sets and track popularity, they can tailor their events to feature trending genres, ensuring a more captivating experience for attendees."
      },
      {
        "title": "Subscription Plan Effectiveness",
        "body": "Marketing teams at DJ software companies can leverage this dataset to study the effectiveness of various subscription plans. By analyzing user performance sets, they can determine which features are most utilized and how different plans correlate with user engagement, helping to refine their offerings."
      },
      {
        "title": "Educational Tool for Music Production",
        "body": "Educators teaching music production can use this dataset to demonstrate how DJs curate their sets and the importance of genre selection. Students can analyze real performance data, learn to query it, and understand the dynamics of track arrangement, enhancing their practical skills in music technology."
      },
      {
        "title": "User Behavior Analysis",
        "body": "Data analysts can explore user behavior by examining the relationship between user subscriptions and the types of tracks selected for performance sets. Understanding these patterns can inform product development and customer support strategies, helping to improve user experience and satisfaction."
      }
    ]
  },
  "counts": {
    "genres": 20,
    "subscriptions": 10,
    "tracks": 500,
    "users": 150,
    "performance_sets": 300
  },
  "stats": {
    "users": {
      "rows": 150,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "full_name": {
          "nulls": 0,
          "distinct": 150,
          "min": "Alice Cruz",
          "max": "Zoe Vargas"
        },
        "email": {
          "nulls": 0,
          "distinct": 150
        },
        "subscription_id": {
          "nulls": 18,
          "distinct": 10,
          "min": 1,
          "max": 10
        }
      }
    },
    "performance_sets": {
      "rows": 300,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 300,
          "min": 1,
          "max": 300
        },
        "user_id": {
          "nulls": 0,
          "distinct": 127,
          "min": 2,
          "max": 150
        },
        "title": {
          "nulls": 0,
          "distinct": 212
        },
        "created_at": {
          "nulls": 0,
          "distinct": 300,
          "min": "2023-01-03 15:40:20",
          "max": "2023-12-31 19:50:14"
        }
      }
    },
    "tracks": {
      "rows": 500,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 500,
          "min": 1,
          "max": 500
        },
        "title": {
          "nulls": 0,
          "distinct": 331
        },
        "duration": {
          "nulls": 0,
          "distinct": 256,
          "min": 102,
          "max": 547
        },
        "genre_id": {
          "nulls": 0,
          "distinct": 20,
          "min": 1,
          "max": 20
        }
      }
    },
    "genres": {
      "rows": 20,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 20,
          "min": 1,
          "max": 20
        },
        "name": {
          "nulls": 0,
          "distinct": 19
        }
      }
    },
    "subscriptions": {
      "rows": 10,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 10,
          "min": 1,
          "max": 10
        },
        "plan_name": {
          "nulls": 0,
          "distinct": 10
        },
        "price": {
          "nulls": 0,
          "distinct": 10,
          "min": 5.27,
          "max": 41.93
        },
        "features": {
          "nulls": 0,
          "distinct": 10
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/genres.csv",
      "format": "csv",
      "table": "genres",
      "key": "datasets/music-mixing-and-dj-software/v3/csv/genres.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/csv/genres.csv",
      "bytes": 341,
      "sha256": "0c82f8eeed3a1b37aceaa3c6975d4eae2690ee35c2bdfcf00260039ded330720",
      "rows": 20,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/subscriptions.csv",
      "format": "csv",
      "table": "subscriptions",
      "key": "datasets/music-mixing-and-dj-software/v3/csv/subscriptions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/csv/subscriptions.csv",
      "bytes": 1315,
      "sha256": "c369d4d36668055973db02b545ed77df2082b80100f136612e6bb75472fd66ac",
      "rows": 10,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/tracks.csv",
      "format": "csv",
      "table": "tracks",
      "key": "datasets/music-mixing-and-dj-software/v3/csv/tracks.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/csv/tracks.csv",
      "bytes": 11551,
      "sha256": "a91591bc27445d9bbf16d7d2a8286a66aa4551a1d8ce8602ad277a6cbfed78b0",
      "rows": 500,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/music-mixing-and-dj-software/v3/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/csv/users.csv",
      "bytes": 6460,
      "sha256": "2a20b7c05e35df2be4c89fb27db52ea422b7bf0f09799d96feed14ffe34048e8",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/performance_sets.csv",
      "format": "csv",
      "table": "performance_sets",
      "key": "datasets/music-mixing-and-dj-software/v3/csv/performance_sets.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/csv/performance_sets.csv",
      "bytes": 12989,
      "sha256": "a627c057cfd7ad342b886394abc1dd5ee1db2e7ce5953c879d3be1facbd8d2fd",
      "rows": 300,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "music-mixing-and-dj-software.json",
      "format": "json",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/music-mixing-and-dj-software.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/music-mixing-and-dj-software.json",
      "bytes": 112846,
      "sha256": "a82240bfc2e207d7e835e10fc317c489c8f64a0010b40220b793a3a9d2a8e2e2",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/sql/postgres.sql",
      "bytes": 46825,
      "sha256": "0954943dde7521663d1eeb3de7f6a4c762d3db30e7ddd23442a3c331c8f13023",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/sql/mysql.sql",
      "bytes": 46264,
      "sha256": "1ddd5b55d592eab430d9b81cd711464454b1e48de8ddec6a6b4c32ffa9cc857e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/sql/mssql.sql",
      "bytes": 48037,
      "sha256": "bf179396ef98dfb2e03a1e59a69b526e0c4fe9df3a615770c6a598f75a85a327",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/sql/sqlite.sql",
      "bytes": 46097,
      "sha256": "3540c57867a24b7fb3ce2ef2ec11227c4276baab33e127909fa64e93de20cc3c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/prisma/seed.ts",
      "bytes": 89809,
      "sha256": "491680ba8963d649ce33029db3129aa9278429c57a0712607facc91b4dc83c05",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/music-mixing-and-dj-software/v3/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/music-mixing-and-dj-software/v3/django/fixtures.json",
      "bytes": 153990,
      "sha256": "6530babdc84880d402629d88e081633774aeac7e5f924b79a354736cfcd292cf",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766083907,
  "updatedAt": 1788798105663
}
