{
  "format": "dataset-manifest/1",
  "slug": "social-interaction-graph",
  "version": 1,
  "seed": "social-interaction-graph:1",
  "spec": {
    "format": "dataset/1",
    "slug": "social-interaction-graph",
    "name": "Social Interaction Graph",
    "tagline": "User connections, follows, messages, and topic interests from a vibrant digital community.",
    "description": "Users in a vibrant digital community interact with one another through a variety of channels, creating a complex web of relationships and exchanges. They establish connections by following each other, engaging in direct messaging, and sharing content around topics of interest. Within this setting, each user can follow multiple peers, while a select group partakes in messaging, fostering deeper connections. The system is designed to capture these dynamics, illustrating how interests manifest through user interactions and topic engagement.\n\nThe dataset is structured across several tables that interrelate to provide a comprehensive view of social interaction. The 'users' table serves as the core, housing individual user profiles. The 'follows' table details the relationships between users, showing who follows whom. 'messages' captures the direct communications exchanged among users, while the 'topics' table lists the subjects that users engage with. The 'user_topics' table links users to their interests, indicating which topics resonate with them. Finally, 'site_interactions' tracks how users engage with various digital platforms. Each row in the 'users' table represents a unique user, while the other tables connect to it, illustrating the multifaceted nature of social engagement.\n\nThis dataset answers a variety of questions regarding user behavior and interaction patterns. Developers can explore how user interests correlate with engagement levels, analyze the impact of specific topics on messaging frequency, or examine the influence of following behaviors on overall participation within the community. By studying this synthetic dataset, practitioners can hone their skills in data manipulation, relationship mapping, and interaction analysis, making it a valuable resource for anyone looking to deepen their understanding of social dynamics in a digital context.",
    "domain": "social",
    "shape": "graph-edges",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "social interaction",
      "user engagement",
      "digital community",
      "follows",
      "messages",
      "topics",
      "site interactions"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains information about users in the community, including their unique identifiers and usernames.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "username": {
            "kind": "words",
            "min": 3,
            "max": 15,
            "description": "The unique username chosen by the user.",
            "nullable": true
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "The date and time when the user account was created.",
            "dayProfile": "waking"
          }
        }
      },
      "follows": {
        "description": "This table captures the following relationships between users, indicating who follows whom.",
        "rows": 600,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each follow relationship."
          },
          "follower_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID of the follower."
          },
          "followed_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID of the followed user."
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "The date and time when the follow relationship was established.",
            "dayProfile": "waking"
          }
        }
      },
      "messages": {
        "description": "This table records direct messages exchanged between users, capturing the interactions that denote deeper engagement.",
        "rows": 300,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each message."
          },
          "sender_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID of the message sender."
          },
          "receiver_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID of the message recipient."
          },
          "content": {
            "kind": "sentence",
            "min": 1,
            "max": 255,
            "description": "The content of the message.",
            "nullable": true
          },
          "sent_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "The date and time when the message was sent.",
            "dayProfile": "waking",
            "trend": "growing"
          }
        }
      },
      "topics": {
        "description": "This table lists the topics that users can express interest in, which helps to connect users with shared interests.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each topic."
          },
          "name": {
            "kind": "words",
            "min": 3,
            "max": 30,
            "description": "The name of the topic.",
            "nullable": true
          }
        }
      },
      "user_topics": {
        "description": "This table maps users to the topics they are interested in, showcasing the interests of each user.",
        "rows": 400,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user-topic association."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID associated with the topic."
          },
          "topic_id": {
            "kind": "fk",
            "ref": "topics.id",
            "description": "The topic ID associated with the user."
          },
          "interested_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "The date and time when the user expressed interest in the topic.",
            "dayProfile": "waking"
          }
        }
      },
      "site_interactions": {
        "description": "This table logs interactions of users with different sites, indicating where users engage with content.",
        "rows": 500,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each site interaction."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The user ID who interacted with the site."
          },
          "site_name": {
            "kind": "words",
            "min": 3,
            "max": 50,
            "description": "The name of the site the user interacted with.",
            "nullable": true
          },
          "interaction_type": {
            "kind": "enum",
            "values": [
              "view",
              "share",
              "comment"
            ],
            "description": "Type of interaction the user had with the site."
          },
          "interacted_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "The date and time when the interaction occurred.",
            "nullable": true,
            "when": {
              "column": "interaction_type",
              "in": [
                "view",
                "share",
                "comment"
              ]
            },
            "dayProfile": "waking",
            "trend": "seasonal"
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "What topics are most popular among users and how does this influence their interactions?",
      "How do user interactions differ between followers and direct message exchanges?",
      "Which users have the most connections, and what might this indicate about their engagement levels?",
      "What patterns can be observed in site interactions based on user interests?"
    ],
    "suggestedQueries": [
      {
        "title": "List all users and their followers",
        "sql": "SELECT u.username, COUNT(f.follower_id) AS followers_count FROM users u LEFT JOIN follows f ON u.id = f.followed_id GROUP BY u.username;",
        "dialect": "postgres"
      },
      {
        "title": "Count messages sent by each user",
        "sql": "SELECT u.username, COUNT(m.id) AS messages_sent FROM users u LEFT JOIN messages m ON u.id = m.sender_id GROUP BY u.username;",
        "dialect": "postgres"
      },
      {
        "title": "Find the most popular topics among users",
        "sql": "SELECT t.name, COUNT(ut.user_id) AS interested_users FROM topics t JOIN user_topics ut ON t.id = ut.topic_id GROUP BY t.name ORDER BY interested_users DESC;",
        "dialect": "postgres"
      },
      {
        "title": "Identify users with the highest site interactions",
        "sql": "SELECT u.username, COUNT(si.id) AS interactions FROM users u LEFT JOIN site_interactions si ON u.id = si.user_id GROUP BY u.username ORDER BY interactions DESC;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "SQL Training for Data Analysts",
        "body": "Data analysts can use this dataset to practice writing complex SQL queries to extract insights about user interactions, enabling them to enhance their analytical skills. By exploring relationships between users, messages, and topics, they can better understand the dynamics of digital communities."
      },
      {
        "title": "Teaching Social Network Analysis",
        "body": "Educators can utilize this dataset as a teaching tool in social network analysis courses, allowing students to explore user interactions and relationships. By working with real-like data, students can learn how to analyze and visualize social graphs effectively."
      },
      {
        "title": "Research on User Engagement Patterns",
        "body": "Researchers interested in digital community behaviors can leverage this dataset to study user engagement patterns, examining how interests and interactions influence each other. Insights drawn from this dataset can inform strategies to enhance user participation."
      },
      {
        "title": "Understanding Content Sharing Dynamics",
        "body": "Marketers looking to understand content sharing dynamics in online communities can analyze this dataset to identify trends in user interactions with various sites. This understanding can help them devise effective content strategies to engage users."
      }
    ]
  },
  "counts": {
    "topics": 50,
    "users": 200,
    "follows": 600,
    "messages": 300,
    "site_interactions": 500,
    "user_topics": 400
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "username": {
          "nulls": 27,
          "distinct": 173
        },
        "created_at": {
          "nulls": 0,
          "distinct": 200,
          "min": "2020-01-08 14:49:44",
          "max": "2023-01-01 12:02:52"
        }
      }
    },
    "follows": {
      "rows": 600,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 600,
          "min": 1,
          "max": 600
        },
        "follower_id": {
          "nulls": 0,
          "distinct": 183,
          "min": 1,
          "max": 200
        },
        "followed_id": {
          "nulls": 0,
          "distinct": 192,
          "min": 1,
          "max": 200
        },
        "created_at": {
          "nulls": 0,
          "distinct": 600,
          "min": "2020-01-01 15:00:26",
          "max": "2023-01-01 20:08:13"
        }
      }
    },
    "messages": {
      "rows": 300,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 300,
          "min": 1,
          "max": 300
        },
        "sender_id": {
          "nulls": 0,
          "distinct": 155,
          "min": 1,
          "max": 200
        },
        "receiver_id": {
          "nulls": 0,
          "distinct": 157,
          "min": 1,
          "max": 199
        },
        "content": {
          "nulls": 33,
          "distinct": 266
        },
        "sent_at": {
          "nulls": 0,
          "distinct": 300,
          "min": "2020-01-06 12:33:32",
          "max": "2022-12-28 08:06:07"
        }
      }
    },
    "topics": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "name": {
          "nulls": 4,
          "distinct": 46
        }
      }
    },
    "user_topics": {
      "rows": 400,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 400,
          "min": 1,
          "max": 400
        },
        "user_id": {
          "nulls": 0,
          "distinct": 174,
          "min": 1,
          "max": 200
        },
        "topic_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "interested_at": {
          "nulls": 0,
          "distinct": 400,
          "min": "2020-01-05 08:23:14",
          "max": "2023-01-01 17:26:50"
        }
      }
    },
    "site_interactions": {
      "rows": 500,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 500,
          "min": 1,
          "max": 500
        },
        "user_id": {
          "nulls": 0,
          "distinct": 185,
          "min": 2,
          "max": 200
        },
        "site_name": {
          "nulls": 39,
          "distinct": 461
        },
        "interaction_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "comment",
          "max": "view"
        },
        "interacted_at": {
          "nulls": 0,
          "distinct": 500,
          "min": "2020-01-03 23:16:18",
          "max": "2022-12-31 20:30:58"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/topics.csv",
      "format": "csv",
      "table": "topics",
      "key": "datasets/social-interaction-graph/v1/csv/topics.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/topics.csv",
      "bytes": 5024,
      "sha256": "58758744c38a861fb8a5b6ff21fdf085ffa62a07c1088469dde6d56a713a48a2",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/social-interaction-graph/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/users.csv",
      "bytes": 15273,
      "sha256": "4a3169b306ea066301a74b131d8b6399f9e50ef6bcc54db202454ee9bb7e5c9b",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/follows.csv",
      "format": "csv",
      "table": "follows",
      "key": "datasets/social-interaction-graph/v1/csv/follows.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/follows.csv",
      "bytes": 19061,
      "sha256": "518d5a93fb2931868b94fa2667117b3d9829d33af495870ae8192d5771944e85",
      "rows": 600,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/messages.csv",
      "format": "csv",
      "table": "messages",
      "key": "datasets/social-interaction-graph/v1/csv/messages.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/messages.csv",
      "bytes": 24611,
      "sha256": "7877696dd7327e05d4700d6f03b41b10ef3adde27a4098ad549189fed3776c8f",
      "rows": 300,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/site_interactions.csv",
      "format": "csv",
      "table": "site_interactions",
      "key": "datasets/social-interaction-graph/v1/csv/site_interactions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/site_interactions.csv",
      "bytes": 103800,
      "sha256": "7e3f76fcfb0c7a7e3f0d5f5834fde32bc8700273aa0cf7d5b665f913e94778d4",
      "rows": 500,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/user_topics.csv",
      "format": "csv",
      "table": "user_topics",
      "key": "datasets/social-interaction-graph/v1/csv/user_topics.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/csv/user_topics.csv",
      "bytes": 12409,
      "sha256": "d65668ea811d355943cf460fec356688d4a99c5b0bd31e027bbe1c51302b0b25",
      "rows": 400,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "social-interaction-graph.json",
      "format": "json",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/social-interaction-graph.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/social-interaction-graph.json",
      "bytes": 376551,
      "sha256": "575a0e808f450e6379f038a30a998795e24c429c69beb7a949d03f43063b43c1",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/sql/postgres.sql",
      "bytes": 209962,
      "sha256": "294997a7bf784c142d9470b17246b7d3abbd318cb2d2173faa9bd0069ff32c46",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/sql/mysql.sql",
      "bytes": 209278,
      "sha256": "5bb64cae802ab7a595b657be328fb75699832c633b6d4b8e083da0c42dbbd354",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/sql/mssql.sql",
      "bytes": 213121,
      "sha256": "da70755f8ac541aaebc36a58dd3893ab261021602019de13820b20f910a5f11b",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/sql/sqlite.sql",
      "bytes": 208985,
      "sha256": "b2cefe2a974a6fb58007fc241bf49548b500390902ee6412b62fa70e0a9dd97a",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/prisma/seed.ts",
      "bytes": 338209,
      "sha256": "2127b39b5dcb9590b2d759a17136bb739e0179ffffb88552313c813212967387",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/social-interaction-graph/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/social-interaction-graph/v1/django/fixtures.json",
      "bytes": 462825,
      "sha256": "29c5c0cc483f55c3c9f5b06a0c7442f5322c519ac7c9bf794a13256cfe833d5f",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788734291212,
  "updatedAt": 1788734291212
}
