datasets real and made-up data to practise on
Datasets
Data for the Playground, Database Lab and Performance Lab. Pick one and open its files.
Four weeks of activity on fictional open-source projects, as a stream of JSON events in hourly and daily files.
1,080 events3 tablesMar 2025
what to watch for
Tricky rows
- Events by bot accounts (logins ending in [bot])2 rows
- Event types whose payloads have different fields10 rows
- Some files start with the last event of the previous file (deduplicate by id)1 rows
- Within a file, about 1% of events are slightly out of time order1 rows
files
Open a file to see what one row means, its columns and a preview. Open in Playground starts a new file there with code that loads it.
events1,080 rows · 12 columns · CSV
One event per row: the fields every event has, plus a few common details.
In your code: data/events.csv
- event_id
Event ID
- type
PushEvent, WatchEvent, PullRequestEvent, …
- created_at
When, UTC
- actor_id
Account that did it
- actor_login
Account name
- repo_id
Repository
- repo_name
owner/name
- org
Organisation
- action
opened, closed, started, … (not every type has one)
- ref
Branch or tag (push, create, delete)
- commits
Commits in a push
- number
Issue or pull request number
actors522 rows · 3 columns · CSV
One account that appears in the events. Bots included.
In your code: data/actors.csv
- actor_id
Account ID
- login
Account name
- is_bot
1 for bot accounts
repos210 rows · 6 columns · CSV
One repository that appears in the events.
In your code: data/repos.csv
- repo_id
Repository ID
- name
owner/name
- owner
Owner organisation
- language
Main language
- created_at
Created, UTC
- stars_before
Stars before these four weeks
data/events/24 JSON Lines files
One event per row: the fields every event has, plus a few common details. The same records split across files, as an API or a log writer produces them.
- 2025-03-03-00.jsonl
- 2025-03-03-01.jsonl
- 2025-03-03-02.jsonl
- 2025-03-03-03.jsonl
- 2025-03-03-04.jsonl
- 2025-03-03-05.jsonl
- 2025-03-03-06.jsonl
- 2025-03-03-07.jsonl
- 2025-03-03-08.jsonl
- 2025-03-03-09.jsonl
- 2025-03-03-10.jsonl
- 2025-03-03-11.jsonl
- 2025-03-03-12.jsonl
- 2025-03-03-13.jsonl
- 2025-03-03-14.jsonl
- 2025-03-03-15.jsonl
- 2025-03-03-16.jsonl
- 2025-03-03-17.jsonl
- 2025-03-03-18.jsonl
- 2025-03-03-19.jsonl
- 2025-03-03-20.jsonl
- 2025-03-03-21.jsonl
- 2025-03-03-22.jsonl
- 2025-03-03-23.jsonl
relationships
How to join these tables. Left column matches the right column.
- events.actor_id → actors.actor_id
- events.repo_id → repos.repo_id