Clone a dataset

Goal. Get a populated database to work against in one command. About two minutes.

Find one

strata hub list-datasets
NAME                   BADGE  LICENSE   PRIMITIVES         SIZE      DOWNLOADS
titanic                -      CC0-1.0   branches json kv   1.1 MB          231
ab-test-results        -      CC0-1.0   branches json kv   52.6 kB           8
world-bank-indicators  -      CC-BY-4.0 json kv            533.8 kB          6

The PRIMITIVES column says which models a dataset uses, and branches there means it ships with more than one.

Clone it

strata clone titanic ./titanic
cloned titanic@main into ./titanic (11 objects, 1.1 MB)

That is a complete local database. No server, no account, nothing running.

Look at what arrived

strata ./titanic describe
StrataDB 1.2.2 · durable_local
branch default · branches: cleaned, default, raw, test, train · spaces: default
capabilities: arrow event graph_core inference json kv vector vector_index
kv 9 · json 1309 · events 0

Five branches. The dataset ships with raw, cleaned, train and test as branches of one database, not as four files you have to keep in step.

strata ./titanic --branch raw --raw json count
strata ./titanic --branch cleaned --raw json count

That is the pattern worth noticing: a train/test split is a fork, so the two share storage and their common ancestry is a fact the database knows rather than a naming convention.

Work on it without spoiling it

strata ./titanic branch fork cleaned my-experiment
strata ./titanic --branch my-experiment json set passenger:1 '$.fare' 100

The dataset’s own branches stay as they were shipped. If you want to get back to exactly what you downloaded, delete your branch.

Where it came from

strata ./titanic remote
dataset  titanic
branch   main

A clone remembers its origin, so a database you find later can say what it is.

What a clone is not

It is a copy, not a subscription. Nothing syncs, nothing updates, and writing to it affects only your copy. Re-clone to get a newer version.

Failure modes

The clone fails or hangs. The hub is a network service; check strata hub list-datasets first to see whether it is reachable at all.

The target directory exists. Clone into a new path.

A dataset’s licence matters. The LICENSE column is there for a reason, and CC-BY-4.0 has attribution requirements that CC0-1.0 does not.

Next

Combine data models, or Give each run a branch to experiment against what you just cloned.

Verified against strata-core@v1.2.7 · Edit this page · Report an issue

agents: this page as markdown → /docs/guides/data/clone-a-dataset.md