# The Great Convergence

THE CLOUD EXPEDITION! · level 14 · chapter 5

Aria and Captain Cloudsworth lock eyes across the war room. 'What if...' Aria begins. '...we JOIN them?' Cloudsworth finishes, dramatically. External CSV archives meeting live cloud tables in a single query — no ETL, no staging, no waiting. This is <span class='feature-highlight'>Files + Cloud Joins</span> — combining remote file reads with cloud table queries in one statement.

## Task

Enrich the historical discovery archive with live cloud data. Use `read_csv()` to load the archive, then combine it with cloud pond data to pull in current climate info. Return <b>pond_name</b>, <b>discoverer_name</b>, <b>discovery_year</b>, <b>climate_zone</b>, and <b>avg_temperature</b> — ordered by discovery year, 10 rows. Sources: `https://data.dbquacks.com/archives/pond_discoveries.csv` (remote CSV, has `pond_name`), `dbquacks_cloud_expedition.global_ponds` (MotherDuck, has `pond_name`, `climate_zone`, `avg_temperature`).<br><br><div class="text-xs text-gray-400 mt-2">Regional tip: MotherDuck runs in US East, US West, and EU Central. For best performance, query data stored in your region. These files are hosted in US East.</div>

## Hint

read_csv() can be used as one side of a JOIN — the pond_name column links the two sources

## Expected result

Up to 10 rows with columns: pond_name, discoverer_name, discovery_year, climate_zone, and avg_temperature ordered by discovery_year

## Tables

### `lake_visits` (500 rows)

| column | type |
| --- | --- |
| visit_id | BIGINT |
| duck_id | BIGINT |
| destination_pond | VARCHAR |
| visit_date | DATE |
| purpose | VARCHAR |

### `pondville_events` (50 rows)

| column | type |
| --- | --- |
| event_id | BIGINT |
| event_name | VARCHAR |
| event_date | DATE |
| organizer_id | BIGINT |
| location | VARCHAR |
| attendee_count | BIGINT |

### `pondville_residents` (100 rows)

| column | type |
| --- | --- |
| duck_id | BIGINT |
| name | VARCHAR |
| species | VARCHAR |
| home_pond | VARCHAR |
| age | BIGINT |
| occupation | VARCHAR |
| joined_date | DATE |

### `dbquacks_cloud_expedition.global_ponds`

A table in a MotherDuck share; its columns are not listed here.

## Data

The tables live in a DuckDB database: https://dbquacks.com/data/databases/motherduck_tutorial.duckdb

To query it outside the browser, attach it read-only:

```sql
ATTACH 'https://dbquacks.com/data/databases/motherduck_tutorial.duckdb' AS db (READ_ONLY);
USE db;
```

This level also queries MotherDuck shares, which need a MotherDuck token. On the page, the editor asks for one.

Play it in the browser: https://dbquacks.com/motherduck/14

## Reference

https://duckdb.org/docs/stable/guides/network_cloud_storage/http_import
