{
  "format": "dataset-manifest/1",
  "slug": "social-engagement-insights",
  "version": 3,
  "seed": "social-engagement-insights:1",
  "engine": 1,
  "engineVersion": "1.0.0",
  "spec": {
    "format": "dataset/1",
    "slug": "social-engagement-insights",
    "name": "Social Engagement Insights",
    "tagline": "User interactions, chatbot responses, and engagement metrics from a digital community platform.",
    "description": "Users engage with a chatbot, initiating conversations within a dynamic digital community. Each user can have multiple interactions, which are recorded to understand engagement patterns and preferences. The chatbot responds to user queries based on intents, which are categorized to reflect user needs at any given moment. The interactions table captures details about each conversation, including timestamps and the nature of the exchange, allowing for a thorough analysis of user engagement over time.\n\nThe relationships between tables illuminate the flow of information. A single user can have numerous interactions, forming a one-to-many relationship between the users and interactions tables. Each interaction is tied to a specific user intent, which directs the chatbot's response, creating connections between interactions and intents. The responses table holds the various replies generated by the chatbot, which can be linked back to both the interactions and the intents to understand how effectively the chatbot meets user needs. Blocked users represent a smaller subset of interactions, offering insights into user experience issues and the effectiveness of filters or moderation in the community.\n\nQueries that can be addressed with this dataset include analyzing user engagement trends, identifying which intents lead to higher satisfaction based on chatbot responses, and understanding the factors influencing blocked interactions. Practicing on this data allows developers to explore user behavior, engagement metrics, and the overall effectiveness of conversational interfaces. By utilizing this synthetic dataset, developers can hone their skills in data analysis, query optimization, and deriving actionable insights from complex relational databases.",
    "domain": "social",
    "shape": "graph-edges",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "chatbot",
      "user engagement",
      "social interactions",
      "customer insights",
      "data analytics"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains unique users in the community, linking to their interactions with the chatbot.",
        "rows": 200,
        "columns": {
          "user_id": {
            "kind": "pk",
            "description": "Unique identifier for the user."
          },
          "username": {
            "kind": "fullName",
            "description": "The display name of the user."
          },
          "join_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-10-31",
            "description": "Date when the user joined the community."
          },
          "location": {
            "kind": "enum",
            "values": [
              "New York",
              "Los Angeles",
              "Chicago",
              "Houston",
              "Phoenix",
              "Philadelphia",
              "San Antonio",
              "San Diego",
              "Dallas",
              "San Jose",
              "Austin",
              "Jacksonville"
            ],
            "weights": [
              12,
              6,
              4,
              3,
              2,
              2,
              2,
              2,
              1,
              1,
              1,
              1
            ],
            "description": "The city where the user is located."
          },
          "last_active_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-10-31",
            "description": "The last date the user interacted with the chatbot."
          }
        }
      },
      "interactions": {
        "description": "Records each interaction between users and the chatbot, including timestamps and channels.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "interaction_id": {
            "kind": "pk",
            "description": "Unique identifier for the interaction."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.user_id",
            "description": "Link to the user who initiated the interaction."
          },
          "timestamp": {
            "kind": "datetime",
            "dayProfile": "business",
            "from": "2023-01-01",
            "to": "2023-10-31",
            "description": "Date and time of the interaction."
          },
          "channel": {
            "kind": "enum",
            "values": [
              "web",
              "mobile",
              "social_media"
            ],
            "description": "The channel used for the interaction.",
            "weights": [
              6,
              3,
              1
            ]
          },
          "interaction_type": {
            "kind": "enum",
            "values": [
              "query",
              "feedback",
              "report"
            ],
            "weights": [
              50,
              30,
              20
            ],
            "description": "The type of interaction the user had with the chatbot."
          },
          "duration_seconds": {
            "kind": "int",
            "min": 1,
            "max": 300,
            "distribution": "normal",
            "description": "Duration of the interaction in seconds."
          }
        }
      },
      "responses": {
        "description": "Contains the various responses from the chatbot based on user intents and context.",
        "rows": 150,
        "columns": {
          "response_id": {
            "kind": "pk",
            "description": "Unique identifier for the response."
          },
          "intent_id": {
            "kind": "fk",
            "ref": "intents.intent_id",
            "description": "Link to the associated user intent."
          },
          "response_text": {
            "kind": "sentence",
            "description": "The text of the chatbot's response."
          },
          "context": {
            "kind": "words",
            "description": "Information about the context of the response.",
            "pool": [
              "feedback",
              "reaction",
              "comment",
              "experience",
              "opinion",
              "suggestion",
              "insight",
              "perspective",
              "viewpoint",
              "interaction",
              "discussion",
              "dialogue",
              "response",
              "engagement",
              "sentiment",
              "perception",
              "analysis",
              "evaluation",
              "assessment",
              "observation",
              "reflection"
            ],
            "min": 1,
            "max": 3
          },
          "response_length": {
            "kind": "int",
            "min": 5,
            "max": 300,
            "distribution": "normal",
            "description": "Length of the response text in characters."
          },
          "sentiment_score": {
            "kind": "decimal",
            "min": -1,
            "max": 1,
            "scale": 2,
            "distribution": "normal",
            "description": "Sentiment score of the response, ranging from -1 (negative) to 1 (positive)."
          }
        }
      },
      "intents": {
        "description": "Categorizes user queries into specific intents for better response management.",
        "rows": 30,
        "columns": {
          "intent_id": {
            "kind": "pk",
            "description": "Unique identifier for the intent."
          },
          "intent_name": {
            "kind": "words",
            "description": "The name of the user intent.",
            "pool": [
              "ask",
              "share",
              "discuss",
              "explore",
              "learn",
              "request",
              "suggest",
              "recommend",
              "clarify",
              "advise",
              "report",
              "comment",
              "inquire",
              "confirm",
              "engage",
              "respond",
              "react",
              "express",
              "elaborate",
              "question",
              "inform"
            ],
            "min": 1,
            "max": 3
          },
          "topic": {
            "kind": "words",
            "description": "The topic associated with the intent.",
            "pool": [
              "community",
              "wellness",
              "education",
              "technology",
              "health",
              "environment",
              "culture",
              "policy",
              "economy",
              "social",
              "media",
              "relationships",
              "events",
              "news",
              "trends",
              "issues",
              "advocacy",
              "support",
              "resources",
              "development",
              "innovation"
            ],
            "min": 1,
            "max": 3
          },
          "usage_count": {
            "kind": "int",
            "min": 0,
            "max": 500,
            "distribution": "normal",
            "description": "Number of times the intent has been triggered."
          },
          "average_response_time": {
            "kind": "decimal",
            "min": 0.1,
            "max": 10,
            "scale": 2,
            "distribution": "normal",
            "description": "Average time taken to respond to this intent in seconds."
          }
        }
      },
      "blocked_users": {
        "description": "Records users who have been blocked from interacting with the chatbot.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 5,
          "skew": "heavy-tail"
        },
        "columns": {
          "blocked_user_id": {
            "kind": "pk",
            "description": "Unique identifier for the blocked user."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.user_id",
            "nullable": true,
            "description": "Link to the blocked user."
          },
          "block_reason": {
            "kind": "sentence",
            "description": "Reason for blocking the user."
          },
          "block_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-10-31",
            "description": "The date when the user was blocked."
          },
          "is_permanent": {
            "kind": "bool",
            "trueRate": 0.7,
            "description": "Indicates if the block is permanent (true) or temporary (false)."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "What are the most common user intents and how do they vary by channel?",
      "How do response times differ across different topics of conversation?",
      "What percentage of users are blocked, and what are common reasons?",
      "Which channels yield the highest engagement rates with the chatbot?",
      "What patterns can be observed in user interactions over time?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users with Interactions",
        "sql": "SELECT u.username, COUNT(i.interaction_id) FROM users u JOIN interactions i ON u.user_id = i.user_id GROUP BY u.username;",
        "dialect": "postgres"
      },
      {
        "title": "Count Responses by Intent",
        "sql": "SELECT i.intent_name, COUNT(r.response_id) FROM responses r JOIN intents i ON r.intent_id = i.intent_id GROUP BY i.intent_name;",
        "dialect": "postgres"
      },
      {
        "title": "Engagement Rates by Channel",
        "sql": "SELECT i.channel, COUNT(i.interaction_id) FROM interactions i GROUP BY i.channel;",
        "dialect": "postgres"
      },
      {
        "title": "Trends in User Interactions Over Time",
        "sql": "SELECT DATE(i.timestamp) AS interaction_date, COUNT(i.interaction_id) FROM interactions i GROUP BY interaction_date ORDER BY interaction_date;",
        "dialect": "postgres"
      },
      {
        "title": "Blocked Users and Reasons",
        "sql": "SELECT u.username, b.block_reason FROM blocked_users b JOIN users u ON b.user_id = u.user_id;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Teaching SQL Basics",
        "body": "Educators can use this dataset in classrooms to teach students the fundamentals of SQL. By querying the various tables related to chatbot interactions, students can practice joins, aggregations, and filtering, gaining real-world insights into user engagement."
      },
      {
        "title": "Data Analytics Projects",
        "body": "Data analysts can leverage the Social Engagement Insights dataset for projects focused on understanding user behavior within digital communities. By analyzing interactions and responses, they can derive actionable insights that can inform marketing strategies or enhance customer service."
      },
      {
        "title": "Chatbot Development",
        "body": "Developers working on chatbot projects can utilize this dataset to test and refine algorithms that improve user interaction. By simulating various user intents and responses, they can enhance the chatbot's ability to engage users effectively."
      },
      {
        "title": "User Experience Research",
        "body": "Researchers focusing on user experiences in digital environments can utilize this dataset to study engagement trends. By examining how users interact with chatbots, they can identify key factors that contribute to positive or negative experiences."
      }
    ]
  },
  "counts": {
    "intents": 30,
    "responses": 150,
    "users": 200,
    "blocked_users": 256,
    "interactions": 840
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "username": {
          "nulls": 0,
          "distinct": 199,
          "min": "Amir Becker",
          "max": "Zoe Ibrahim"
        },
        "join_date": {
          "nulls": 0,
          "distinct": 188,
          "min": "2020-01-10",
          "max": "2023-10-30"
        },
        "location": {
          "nulls": 0,
          "distinct": 12,
          "min": "Austin",
          "max": "San Jose"
        },
        "last_active_date": {
          "nulls": 0,
          "distinct": 185,
          "min": "2020-01-06",
          "max": "2023-10-27"
        }
      }
    },
    "interactions": {
      "rows": 840,
      "columns": {
        "interaction_id": {
          "nulls": 0,
          "distinct": 840,
          "min": 1,
          "max": 840
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "timestamp": {
          "nulls": 0,
          "distinct": 840,
          "min": "2023-01-01 09:36:36",
          "max": "2023-10-31 15:25:01"
        },
        "channel": {
          "nulls": 0,
          "distinct": 3,
          "min": "mobile",
          "max": "web"
        },
        "interaction_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "feedback",
          "max": "report"
        },
        "duration_seconds": {
          "nulls": 0,
          "distinct": 196,
          "min": 24,
          "max": 273
        }
      }
    },
    "responses": {
      "rows": 150,
      "columns": {
        "response_id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "intent_id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "response_text": {
          "nulls": 0,
          "distinct": 150
        },
        "context": {
          "nulls": 0,
          "distinct": 110
        },
        "response_length": {
          "nulls": 0,
          "distinct": 98,
          "min": 29,
          "max": 250
        },
        "sentiment_score": {
          "nulls": 0,
          "distinct": 85,
          "min": -0.75,
          "max": 0.76
        }
      }
    },
    "intents": {
      "rows": 30,
      "columns": {
        "intent_id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "intent_name": {
          "nulls": 0,
          "distinct": 27
        },
        "topic": {
          "nulls": 0,
          "distinct": 28
        },
        "usage_count": {
          "nulls": 0,
          "distinct": 30,
          "min": 132,
          "max": 424
        },
        "average_response_time": {
          "nulls": 0,
          "distinct": 29,
          "min": 2.46,
          "max": 8.06
        }
      }
    },
    "blocked_users": {
      "rows": 256,
      "columns": {
        "blocked_user_id": {
          "nulls": 0,
          "distinct": 256,
          "min": 1,
          "max": 256
        },
        "user_id": {
          "nulls": 0,
          "distinct": 96,
          "min": 3,
          "max": 200
        },
        "block_reason": {
          "nulls": 0,
          "distinct": 256
        },
        "block_date": {
          "nulls": 0,
          "distinct": 233,
          "min": "2020-01-02",
          "max": "2023-10-19"
        },
        "is_permanent": {
          "nulls": 0,
          "distinct": 2,
          "min": "false",
          "max": "true"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/intents.csv",
      "format": "csv",
      "table": "intents",
      "key": "datasets/social-engagement-insights/v3/csv/intents.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/csv/intents.csv",
      "bytes": 1405,
      "sha256": "ac98aa6ed368c49bac2a199c8aa146648d4f2674a76449289d0f29b0c52287fb",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/responses.csv",
      "format": "csv",
      "table": "responses",
      "key": "datasets/social-engagement-insights/v3/csv/responses.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/csv/responses.csv",
      "bytes": 14000,
      "sha256": "78400ed16381f0f855f64ab8ab199120f156781dcbcd3f67e4efb7cf2bd36dc6",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/social-engagement-insights/v3/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/csv/users.csv",
      "bytes": 9727,
      "sha256": "af0cf1723aa6f4c0e345e496ed104f5ebc1433df6498705e543b4dadcafd98c8",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/blocked_users.csv",
      "format": "csv",
      "table": "blocked_users",
      "key": "datasets/social-engagement-insights/v3/csv/blocked_users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/csv/blocked_users.csv",
      "bytes": 20840,
      "sha256": "7d98faba31402760978d0fb5bb2de8ff84c514257c08d30ed901c833a6e4d530",
      "rows": 256,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/interactions.csv",
      "format": "csv",
      "table": "interactions",
      "key": "datasets/social-engagement-insights/v3/csv/interactions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/csv/interactions.csv",
      "bytes": 37975,
      "sha256": "b659a26f1feec8946401d13a16c005373923fa8de48fd212d63b00bcbe0f30b8",
      "rows": 840,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "social-engagement-insights.json",
      "format": "json",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/social-engagement-insights.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/social-engagement-insights.json",
      "bytes": 294305,
      "sha256": "e0207680884253d7dfe795f520100ab76e48ab7553080d22dc01945608adce1a",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/sql/postgres.sql",
      "bytes": 111326,
      "sha256": "793b0c3b902a02528d4c9872c4866a8551eee4ac11fb28872460af50496b0b24",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/sql/mysql.sql",
      "bytes": 109824,
      "sha256": "3c3e58837b3aeae9b759ae34b22eeafb00924197ddbd7bf16136205000e7e7c6",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/sql/mssql.sql",
      "bytes": 114352,
      "sha256": "fdfad996e15f727333a799d93fc58e34d10b6b7590f142c4ca3b21520a1fc72c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/sql/sqlite.sql",
      "bytes": 109650,
      "sha256": "b699e92b2033294a20fb2be1df90330a2add0cb56a51d80fb8e32a287d3b5750",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/prisma/seed.ts",
      "bytes": 243876,
      "sha256": "9d78880b2e95434b1bae1ec858918f7ddd0e6934afc77f181795c56ff21264cd",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/social-engagement-insights/v3/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-engagement-insights/v3/django/fixtures.json",
      "bytes": 344404,
      "sha256": "51ce8d2750b30a493d838fd309adfcca9e80a12c53a5cfa366308ac4335c3ee7",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788768209487,
  "updatedAt": 1789096037159
}
