├── .github
├── pull_request_template.md
└── workflows
│ ├── lint_queries.yml
│ ├── production_deploy_documentation.yml
│ └── staging_deploy_documentation.yml
├── .gitignore
├── License
├── README.md
├── SECURITY.md
├── blog
├── 2024
│ ├── 2024-07-22.0.mdx
│ ├── 2024-08-20.0.mdx
│ ├── 2024-09-18.0.mdx
│ ├── 2024-10-23.0.mdx
│ ├── 2024-11-13.0.mdx
│ └── 2024-12-18.0.mdx
├── 2023-alpha
│ ├── 2023-07-26-alpha.0.mdx
│ ├── 2023-10-19-alpha.0.mdx
│ ├── 2023-11-14-alpha.0.mdx
│ └── 2023-12-14-alpha.0.mdx
├── 2024-04-21-welcome.mdx
├── 2024-04-22-beta-release.mdx
├── 2024-05-16-land-cover.mdx
├── 2024-07-24-explore-site.mdx
├── 2024-08-15-preview-august-release.mdx
├── 2024-10-21-preview-october-release.mdx
├── 2024-12-18-transportation-to-ga.mdx
├── 2024-alpha
│ ├── 2024-01-17-alpha.0.mdx
│ ├── 2024-02-15-alpha.0.mdx
│ └── 2024-03-12-alpha.0.mdx
├── 2024-beta
│ ├── 2024-04-16-beta.0.mdx
│ ├── 2024-05-16-beta.0.mdx
│ └── 2024-06-13-beta.0.mdx
├── 2025-01-22-release-notes.mdx
├── 2025-02-19-release-notes.mdx
├── 2025-03-19-release-notes.mdx
├── 2025-04-23-release-notes.mdx
├── 2025-05-21-release-notes.mdx
├── 2025-06-25-getting-started-gers.mdx
├── 2025-06-25-release-notes.mdx
├── 2025-07-23-release-notes.mdx
├── 2025-08-20-release-notes.mdx
└── 2025-09-24-release-notes.mdx
├── community
├── index.mdx
└── used-by.mdx
├── docs
├── attribution.mdx
├── examples
│ ├── CARTO.mdx
│ ├── QGIS.mdx
│ ├── assets
│ │ ├── CARTO Workflows.png
│ │ ├── CARTO_Builder.gif
│ │ ├── CARTO_DO.gif
│ │ ├── CARTO_DO1.png
│ │ ├── CARTO_DO2.png
│ │ ├── CARTO_Workflows.gif
│ │ ├── CARTO_overture_map.png
│ │ ├── buildings-milan.png
│ │ ├── fused_overture_buildings_dec2023.gif
│ │ ├── gulf-water.png
│ │ ├── kepler-overture-hyderabad.png
│ │ ├── kepler_overture_buildings_hyderabad.gif
│ │ ├── overture-buildings-pandas2.png
│ │ ├── overture-pa-counties.png
│ │ ├── places-milan.png
│ │ ├── qgis-parquet-drag-drop.gif
│ │ ├── rapid-buildings-data.png
│ │ ├── rapid-places-data.png
│ │ ├── rapid-visualizing-places.png
│ │ └── road-network-milan.png
│ ├── build-a-map.mdx
│ ├── fused.mdx
│ ├── index.mdx
│ ├── kepler-gl.mdx
│ ├── lonboard.mdx
│ ├── overture-tiles.mdx
│ ├── pandas.mdx
│ ├── rapid.mdx
│ ├── spark.mdx
│ └── wherobots.mdx
├── gers
│ ├── bridge-files.mdx
│ ├── changelog.mdx
│ ├── gers-demonstrations.mdx
│ ├── gers-tutorial.mdx
│ ├── index.mdx
│ ├── registry.mdx
│ └── stability.mdx
├── getting-data
│ ├── assets
│ │ ├── BigQuery-1.png
│ │ ├── aws-glue-data-catalog-values.png
│ │ ├── bigquery-10.png
│ │ ├── bigquery-11.png
│ │ ├── bigquery-2.png
│ │ ├── bigquery-3.png
│ │ ├── bigquery-4.png
│ │ ├── bigquery-5.png
│ │ ├── bigquery-6.png
│ │ ├── bigquery-7.png
│ │ ├── bigquery-8.png
│ │ ├── bigquery-9.png
│ │ ├── databricks-1.png
│ │ ├── databricks-2.png
│ │ ├── databricks-3.png
│ │ ├── databricks-4.png
│ │ ├── databricks-5.png
│ │ ├── databricks-6.png
│ │ ├── databricks-7.png
│ │ ├── databricks-8.png
│ │ ├── databricks-9.png
│ │ ├── overture-release-tables.png
│ │ ├── review-and-create.png
│ │ ├── snowflake-marketplace-1.png
│ │ ├── snowflake-marketplace-2.png
│ │ ├── snowflake-marketplace-3.png
│ │ ├── snowflake-marketplace-4.png
│ │ ├── snowflake-marketplace-5.png
│ │ └── snowflake-marketplace-6.png
│ ├── athena-aws.mdx
│ ├── data-mirrors
│ │ ├── bigquery.mdx
│ │ ├── databricks.mdx
│ │ ├── fused.mdx
│ │ ├── snowflake.mdx
│ │ └── wherobots.mdx
│ ├── duckdb.mdx
│ ├── index.mdx
│ ├── overturemaps-py.mdx
│ ├── sedona.mdx
│ └── synapse-azure.mdx
├── guides
│ ├── addresses.mdx
│ ├── base.mdx
│ ├── buildings.mdx
│ ├── divisions.mdx
│ ├── index.mdx
│ ├── places.mdx
│ └── transportation.mdx
├── introduction.mdx
├── playground
│ └── test-sql-inclusion.mdx
└── release-calendar.mdx
├── docusaurus.config.js
├── fetch_schema.sh
├── package-lock.json
├── package.json
├── sidebars.js
├── src
├── components
│ ├── buildings-map.js
│ ├── layers.js
│ ├── map.js
│ ├── queryBuilder.js
│ ├── shared-libs
│ │ ├── generatePath.tsx
│ │ ├── generateResolverOptions.tsx
│ │ ├── remoteResolver.tsx
│ │ ├── stringifyObject.tsx
│ │ └── yamlFileResolver.tsx
│ └── yamlLoad.js
├── css
│ ├── custom.css
│ └── map.css
└── queries
│ ├── .sqlfluffignore
│ ├── Snowflake
│ └── snowflake_places.sql
│ ├── athena
│ ├── .sqlfluff
│ ├── 0_select_from_release.sql
│ ├── changelog_buildings_join.sql
│ ├── hyderabad_buildings.sql
│ ├── seattle_places.sql
│ ├── transportation_connecting_segments.sql
│ └── transportation_speed_limits.sql
│ ├── duckdb
│ ├── .sqlfluff
│ ├── addresses_calgary.sql
│ ├── addresses_counts.sql
│ ├── addresses_nz_export.sql
│ ├── addresses_to_parquet.sql
│ ├── addresses_utah.sql
│ ├── boulder_co_duckdb.sql
│ ├── buildings_detroit.sql
│ ├── buildings_in_division_area.sql
│ ├── changelog_buildings_churn.sql
│ ├── changelog_buildings_feature_by_change_type.sql
│ ├── confident_mountains.sql
│ ├── county_level_geometries.sql
│ ├── divisions_border_usmx.sql
│ ├── divisions_boundary_counts.sql
│ ├── divisions_counts_per_entity.sql
│ ├── divisions_counts_per_type.sql
│ ├── divisions_denmark_locality_neighborhood.sql
│ ├── divisions_division_area_counts.sql
│ ├── divisions_division_counts.sql
│ ├── divisions_lookup_osm.sql
│ ├── divisions_philly_places.sql
│ ├── divisions_query_specific_feature.sql
│ ├── divisions_subtype_counts_specific_countries.sql
│ ├── divisions_to_parquet.sql
│ ├── hyderabad_buildings.sql
│ ├── lithuania_places.sql
│ ├── mountain_peaks.sql
│ ├── new_york_pizza.sql
│ ├── paris_roads_contained.sql
│ ├── paris_roads_intersecting.sql
│ ├── places.sql
│ ├── places_confidence.sql
│ ├── places_conflating_OSM.sql
│ ├── places_in_buildings.sql
│ ├── places_mills.sql
│ ├── rome_places.sql
│ ├── seattle_buildings_for_map.sql
│ ├── seattle_land_for_map.sql
│ ├── seattle_land_use_for_map.sql
│ ├── seattle_placenames_for_map.sql
│ ├── seattle_places_for_map.sql
│ ├── seattle_roads_for_map.sql
│ ├── seattle_water_for_map.sql
│ ├── segment_bbox.sql
│ ├── transportation_parking.sql
│ ├── transportation_routes.sql
│ └── write_geoparquet.sql
│ ├── partials
│ └── osm_conversion_logic
│ │ ├── building_class.sql
│ │ ├── building_facade_material.sql
│ │ ├── building_roof_material.sql
│ │ ├── building_roof_shape.sql
│ │ ├── building_subtype.sql
│ │ ├── infrastructure.sql
│ │ ├── land.sql
│ │ ├── land_use.sql
│ │ └── water.sql
│ └── synapse
│ └── seattle_places.sql
├── static
├── .nojekyll
├── img
│ ├── addresses
│ │ ├── address-coverage-h3-sept.png
│ │ └── boston-export.png
│ ├── amazon-athena-buildings-query-result.png
│ ├── amazon-athena-buildings-query.png
│ ├── blog
│ │ ├── address-coverage-h3-october.png
│ │ ├── bootleg.jpg
│ │ ├── class-subclass-diagram.png
│ │ ├── explore-philadelphia2.gif
│ │ ├── highway-signs.png
│ │ ├── lc.gif
│ │ ├── notebook-overture-lc.png
│ │ ├── overture-lc.gif
│ │ ├── roads-tomtom-october.png
│ │ └── slc_hierarchy.jpg
│ ├── divisions
│ │ ├── divisions-admin0-admin1-coverage.png
│ │ └── divisions-us.gif
│ ├── explore-attribution.jpg
│ ├── favicon.png
│ ├── gers-layers.png
│ ├── gers
│ │ ├── buildings-change-type-amhara-region.png
│ │ ├── overture-buildings-fema-structures.png
│ │ └── schema-comparison.png
│ ├── is_underground.png
│ ├── omf_logo.jpg
│ ├── omf_logo_text_transparent.png
│ ├── omf_logo_transparent.png
│ ├── overture-tiles-customize-buildings.png
│ ├── overture-tiles-customize-places.png
│ ├── overture-tiles-header.png
│ ├── overture-tiles-job-definitions.png
│ ├── overture-tiles-view-push-commands.png
│ ├── places
│ │ └── places-coverage-h3-sept.png
│ └── transportation
│ │ ├── circle-looped-dark.png
│ │ ├── circle-looped-light.png
│ │ ├── circle-unlooped-dark.png
│ │ ├── circle-unlooped-light.png
│ │ ├── crossing-looped-dark.png
│ │ ├── crossing-looped-light.png
│ │ ├── crossing-unlooped-dark.png
│ │ ├── crossing-unlooped-light.png
│ │ ├── geometric-scoping-position-dark.svg
│ │ ├── geometric-scoping-position-light.svg
│ │ ├── geometric-scoping-range-dark.svg
│ │ ├── geometric-scoping-range-light.svg
│ │ ├── geometrically-scoped-speed-limit-dark.png
│ │ ├── geometrically-scoped-speed-limit-light.png
│ │ ├── heading-dark.svg
│ │ ├── heading-light.svg
│ │ ├── interior-connectors-after-dark.png
│ │ ├── interior-connectors-after-light.png
│ │ ├── interior-connectors-before-dark.png
│ │ ├── interior-connectors-before-light.png
│ │ ├── lane-blocks-dark.png
│ │ ├── lane-blocks-light.png
│ │ ├── lane-number-01-west-dark.png
│ │ ├── lane-number-01-west-light.png
│ │ ├── lane-number-02-north-dark.png
│ │ ├── lane-number-02-north-light.png
│ │ ├── lane-number-03-east-dark.png
│ │ ├── lane-number-03-east-light.png
│ │ ├── lane-number-04-south-dark.png
│ │ ├── lane-number-04-south-light.png
│ │ ├── level-dark.png
│ │ ├── level-light.png
│ │ ├── network-dark.png
│ │ ├── network-light.png
│ │ ├── oriented-east-dark.svg
│ │ ├── oriented-east-light.svg
│ │ ├── oriented-west-dark.svg
│ │ ├── oriented-west-light.svg
│ │ ├── roads-lane-numbering-dark.png
│ │ ├── splitter_concept.svg
│ │ ├── splitter_osm.png
│ │ ├── splitter_output.png
│ │ ├── splitter_overture.png
│ │ ├── travel-modes-dark.png
│ │ ├── travel-modes-light.png
│ │ ├── turn-restriction-01-dark.png
│ │ ├── turn-restriction-01-light.png
│ │ ├── turn-restriction-02-dark.png
│ │ └── turn-restriction-02-light.png
└── notebooks
│ ├── overture-duckdb-pandas-example.ipynb
│ ├── overture-lonboard-geoarrow.ipynb
│ ├── overture-lonboard-geodataframe-direct.ipynb
│ ├── overture-lonboard-geodataframe-long.ipynb
│ └── overture-lonboard-lc.ipynb
└── test_queries.py
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ## Pull Request
2 |
3 | ### Docs Preview:
4 | Click the most recent "View Deployment"
5 |
6 | [All Staging Deployments](https://github.com/OvertureMaps/docs/actions/workflows/staging_deploy_documentation.yml)
7 |
--------------------------------------------------------------------------------
/.github/workflows/lint_queries.yml:
--------------------------------------------------------------------------------
1 | ---
2 | name: SQLFluff lint the queries
3 | run-name: Basic testing of the queries in src/queries
4 |
5 | on:
6 | pull_request:
7 | paths:
8 | - 'src/queries/**'
9 | workflow_dispatch:
10 |
11 | permissions:
12 | id-token: write
13 | contents: read
14 |
15 | jobs:
16 | run:
17 | runs-on: ubuntu-latest
18 | steps:
19 | - name: Checkout Repo
20 | uses: actions/checkout@v3
21 |
22 | - name: Set up Python 3.11
23 | uses: actions/setup-python@v3
24 | with:
25 | python-version: "3.11"
26 |
27 | - name: Install dependencies
28 | run: |
29 | python -m pip install --upgrade pip
30 | pip install sqlfluff
31 |
32 | - name: Run Tests
33 | run: cd src/queries && sqlfluff lint .
34 |
--------------------------------------------------------------------------------
/.github/workflows/production_deploy_documentation.yml:
--------------------------------------------------------------------------------
1 | ---
2 | name: Production Deploy
3 | run-name: Build and deploy production documentation
4 |
5 | on:
6 | push:
7 | branches: [main]
8 |
9 | # Allow running from the actions tab
10 | workflow_dispatch:
11 | inputs:
12 | schema_branch:
13 | description: 'Schema branch to pull from for /reference'
14 | required: true
15 | default: 'main'
16 |
17 | permissions:
18 | id-token: write # required to use OIDC authentication
19 | contents: read # required to checkout the code from the repo
20 | pages: write # for actions/deploy-pages
21 |
22 | jobs:
23 | build:
24 | name: Build the documentation and deploy
25 | if: github.repository == 'overturemaps/docs'
26 | runs-on: ubuntu-latest
27 | steps:
28 | - name: Check out the docs repo
29 | uses: actions/checkout@v3
30 |
31 | - name: Set up Node.js
32 | uses: actions/setup-node@v4
33 | with:
34 | node-version: "20"
35 |
36 | - name: Install NPM dependencies
37 | run: npm install --prefer-dedupe
38 |
39 | - name: Build Docusaurus Pages 🔧
40 | env:
41 | SCHEMA_BRANCH: ${{ inputs.schema_branch }}
42 | run: npm run build
43 |
44 | - name: Setup Pages 🗂️
45 | uses: actions/configure-pages@v5
46 |
47 | - name: Upload static files as GH-Pages artifact 📦
48 | id: docs-website
49 | uses: actions/upload-pages-artifact@v3
50 | with:
51 | path: build
52 |
53 | deploy:
54 | name: Deploy to GitHub Pages
55 | needs: build
56 | environment:
57 | name: github-pages
58 | url: https://docs.overturemaps.org/
59 | runs-on: ubuntu-latest
60 |
61 | steps:
62 | - name: Deploy to GitHub Pages 🚀
63 | id: docs-website
64 | uses: actions/deploy-pages@v4
65 |
--------------------------------------------------------------------------------
/.github/workflows/staging_deploy_documentation.yml:
--------------------------------------------------------------------------------
1 | ---
2 | name: Staging Deploy
3 | run-name: Publish docs to staging website (for PR)
4 |
5 | on:
6 | pull_request:
7 |
8 | # Allow running from the actions tab
9 | workflow_dispatch:
10 | inputs:
11 | schema_branch:
12 | description: 'Schema branch to pull from for /reference'
13 | required: true
14 | default: 'main'
15 |
16 | permissions:
17 | id-token: write
18 | contents: read
19 |
20 | jobs:
21 | build:
22 | name: Build
23 | runs-on: ubuntu-latest
24 | steps:
25 | - name: Check out the main docs repo repository and build.
26 | uses: actions/checkout@v4
27 |
28 | - name: Set up Node.js
29 | uses: actions/setup-node@v4
30 | with:
31 | node-version: "20"
32 |
33 | - name: Install NPM dependencies
34 | run: npm install --prefer-dedupe
35 |
36 | - name: Build Docusaurus website
37 | env:
38 | DOCUSAURUS_URL: https://dfhx9f55j8eg5.cloudfront.net/
39 | DOCUSAURUS_BASE_URL: /how-to/pr/${{github.event.number}}/
40 | SCHEMA_BRANCH: ${{ inputs.schema_branch }}
41 | run: npm run build
42 |
43 | - name: Upload docs build as GH-Pages artifact 📦
44 | uses: actions/upload-artifact@v4
45 | with:
46 | path: build
47 | name: build
48 |
49 | publish_staging:
50 | name: Publish to Staging Bucket
51 | environment:
52 | name: staging
53 | url: https://dfhx9f55j8eg5.cloudfront.net/how-to/pr/${{github.event.number}}/
54 | needs: build
55 | runs-on: ubuntu-latest
56 | steps:
57 | - name: Fetch AWS credentials
58 | uses: aws-actions/configure-aws-credentials@v4
59 | with:
60 | role-to-assume: arn:aws:iam::207370808101:role/Overture_GitHub_schema_Publish_Docs_Staging
61 | aws-region: us-west-2
62 |
63 | - name: Download GH-Pages artifact 📦
64 | uses: actions/download-artifact@v4
65 | with:
66 | name: build
67 | path: build
68 |
69 | - name: Copy to staging bucket how-to/pr/${{github.event.number}}/
70 | run: |
71 | aws --region us-east-2 s3 sync --delete --storage-class INTELLIGENT_TIERING build s3://overture-schema-docs-static-staging-us-east-2/how-to/pr/${{github.event.number}}
72 |
73 | - name: Purge CDN cache
74 | run: |
75 | aws cloudfront create-invalidation --distribution-id E3L106P8HVBE9L --paths "/how-to/pr/${{github.event.number}}/*"
76 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | .docusaurus
3 | node_modules/
4 | docs/_examples/
5 | docs/_schema/
6 | docs/schema/
7 | docs/schema
8 | static/_schema/
9 | build/
10 |
--------------------------------------------------------------------------------
/License:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Overture Maps
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Overture Documentation
2 |
3 | This repository uses [Docusaurus](https://docusaurus.io/) to publish the documentation pages seen at [docs.overturemaps.org](https://docs.overturemaps.org)
4 |
5 | ### Structure
6 |
7 | - `blog/`: Entries for the Overture engineering blog available at docs.overturemaps.org/blog
8 | - `community/`: The community page that showcases Overture data being used in the wild.
9 | - `docs/`: The main documentation pages available at docs.overturemaps.org/. The sidebar for these pages is manually curated in the `sidebars.js` file.
10 | - `release-blog/`: Release notes for every Overture data release. The latest release is always available at
11 | - Notice there is no `schema reference` folder. See below.
12 |
13 | ### Schema Reference (`docs.overturemaps.org/schema`)
14 |
15 | The Overture schema repository [github/overturemaps/schema](https://github.com/overturemaps/schema) maintains the official Overture schema and the documentation surrounding the actual schema reference pages. This is to ensure that the schema, documentation, and relevant examples are always in-sync.
16 |
17 | The script `fetch_schema.sh` injects the contents of the schema's documentation into `docs/schema/` and copies the schema `YAMl` files and examples to `docs/_schema` and `docs/_examples`, respectively. This script runs with every build.
18 |
19 | Therefore, anything available at `docs.overturemaps.org/schema` (under the **Schema Reference** link in the header) comes from the Overture schema repository, not this repository. Any changes to `schema` will be overwritten on every build.
20 |
21 | ## Developing
22 |
23 | Docusaurus requires node.
24 | First, install the required packages:
25 |
26 | ```shell
27 | npm install
28 | ```
29 |
30 | Then, start the local server:
31 |
32 | ```shell
33 | npm start
34 | ```
35 |
36 | Now navigate to to see the live preview.
37 |
38 | ### Available Commands
39 |
40 | - `npm start` - Start the development server
41 | - `npm run build` - Build the production site (also shows locale/translation warnings and broken link checks)
42 | - `npm run serve` - Serve the built site locally
43 | - `npm run deploy` - Deploy the site
44 | - `npm run clear` - Clear the Docusaurus cache
45 | - `npm run swizzle` - Customize Docusaurus components by "ejecting" them for modification
46 | - `npm run write-translations` - Generate translation files for internationalization
47 | - `npm run write-heading-ids` - Auto-generate heading IDs for better linking
48 |
--------------------------------------------------------------------------------
/SECURITY.md:
--------------------------------------------------------------------------------
1 | # Security Policy
2 |
3 | ## Supported Versions
4 |
5 | Use this section to tell people about which versions of your project are
6 | currently being supported with security updates.
7 |
8 | | Version | Supported |
9 | | ------- | ------------------ |
10 | | 5.1.x | :white_check_mark: |
11 | | 5.0.x | :x: |
12 | | 4.0.x | :white_check_mark: |
13 | | < 4.0 | :x: |
14 |
15 | ## Reporting a Vulnerability
16 |
17 | Use this section to tell people how to report a vulnerability.
18 |
19 | Tell them where to go, how often they can expect to get an update on a
20 | reported vulnerability, what to expect if the vulnerability is accepted or
21 | declined, etc.
22 |
--------------------------------------------------------------------------------
/blog/2024-04-21-welcome.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Welcome to the Overture Maps engineering blog!
3 | ---
4 |
5 | Welcome to the Overture Maps engineering blog!
6 | We're excited to tell the technical stories behind this big, exciting, ambitious, intensely collaborative project we’ve been [working on for more than a year](https://overturemaps.org/looking-forward-to-2024/).
7 | The engineers building Overture Maps are eager to connect with our developer community.
8 | In the posts we publish in the coming months, you’ll hear from team members who work at Amazon, Meta, Microsoft, TomTom, Esri, Development Seed, Precisely, and more.
9 |
10 | And we’d like to hear from you: [feedback and contributions](https://github.com/OvertureMaps/data/discussions) from folks working with our data and schema are crucial to our success.
11 | Thanks for joining us on this journey.
12 | We’re glad you’re here.
13 |
--------------------------------------------------------------------------------
/blog/2024-07-24-explore-site.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Exploring Overture data, no SQL required
3 | tags:
4 | - developer-tools
5 | ---
6 |
7 | Overture has launched a new browser-based tool to give users a no-code option to interact with our data. The Explore website is now the quickest way to get started with Overture, no SQL required: [https://explore.overturemaps.org](https://explore.overturemaps.org/#13.01/39.95692/-75.15583)
8 |
9 | |  |
10 | |:--:|
11 | | *Checking out ["Lion Crushing a Serpent"](https://www.associationforpublicart.org/artwork/lion-crushing-a-serpent/) in Philadelphia’s Rittenhouse Park* |
12 |
13 |
14 |
15 | ## Not a map
16 |
17 | The Explore tool might look like a map, but we prefer to think of it as an x-ray data inspector. We’ve punted on making cartographic decisions in favor of displaying all of Overture’s themes, all at once: addresses, base, buildings, divisions, places, and transportation. Our users are coming at the data with different perspectives and goals, and we want to provide as much information as possible. We also want to stoke your curiosity and inspire you to ask new questions of Overture data.
18 |
19 | Seeing all the data all at once might be a bit overwhelming. We recommend zooming to an area of interest, hovering over the layers icon in the upper left corner of the map, and toggling the data themes off and on. You can click on an individual map feature, like the famous ["Lion Crushing a Serpent"](https://youtu.be/rTl2ewUc6bA?feature=shared) statue, to inspect its properties. Want to download the data? In the upper right corner of the Explore site, you can click on the Download Visible button to generate a GeoJSON file containing all the data visible in the browser.
20 |
21 | The [Explore site](https://explore.overturemaps.org/#13.01/39.95692/-75.15583) is currently in beta, and your feedback will inform the features we add in the coming months. If you have questions about the data, or if you want to report a problem with data quality or a glitch in the website, please click on the bug icon and [file an issue on GitHub](https://github.com/OvertureMaps/io-site/issues). (Note: we are actively working on fixing known issues with the downloaded data.)
22 |
23 | ## Build with us
24 |
25 | This project grew out of the diverse experiences and skill sets of the engineers working on Overture. We’re using [WebAssembly](https://webassembly.org/) and Rust, specifically [geoarrow-rs](https://geoarrow.org/geoarrow-rs/), to query and download [Overture’s GeoParquet files](https://docs.overturemaps.org/getting-data/). The front end is React and [Maplibre](https://maplibre.org/), and we’re generating [PMTiles](https://docs.protomaps.com/pmtiles/) to visualize the data. It’s a serverless site, using all cloud-native data storage formats. We also plan to make [PMTiles available with each Overture release](https://github.com/OvertureMaps/overture-tiles). Special thanks to Kyle Barron from [Development Seed](https://developmentseed.org/) and Brandon Liu from [Protomaps](https://protomaps.com/) for collaborating with Overture's Developer Advocacy team on this project.
26 |
27 | [Explore is open source](https://github.com/OvertureMaps/io-site), under an MIT license, and we welcome contributions from the Overture community. Our goal is to give you the basic building blocks for creating your own tools around Overture data. Let us know what you make and we’ll happily share it on our [community projects page](https://docs.overturemaps.org/community/).
28 |
--------------------------------------------------------------------------------
/blog/2024-10-21-preview-october-release.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: What to expect in Overture’s October release
3 | tags:
4 | - releases
5 | - addresses
6 | - buildings
7 | ---
8 |
9 | This week Overture is [releasing](https://docs.overturemaps.org/release/latest/) datasets that include new
10 | addresses across ten countries, new road features in Saudi Arabia and Italy from TomTom,
11 | and new building height data from Microsoft and Esri Community Maps contributors. Here's a preview of what you'll find in our October release.
12 |
13 |
14 | ## Addresses around the world
15 |
16 | |  |
17 | |:--:|
18 | | *H3 coverage map of Overture addresses* |
19 |
20 |
21 |
22 | In July, Overture [launched](https://docs.overturemaps.org/release/2024-07-22.0/#new-theme-addresses) our addresses theme
23 | with 200 million features in 14 countries. Since then,
24 | we’ve added data for ten additional countries, bringing the total feature count to over 344 million.
25 | We’re building on great work by the open data community, including folks on the [OpenAddresses](https://openaddresses.io/)
26 | and [AddressForAll](https://www.addressforall.org/en/) projects.
27 |
28 | And now we're excited to include another new source of open data for addresses in the U.S. Previously, Overture pulled all address data
29 | in the United States from the [Department of Transportation’s National
30 | Address Database (NAD)](https://www.transportation.gov/gis/national-address-database).
31 | Over the September and October releases, we developed a cut-and-replace workflow to swap NAD data in New York City
32 | with data from [NYC Open Data](https://opendata.cityofnewyork.us/). Local data FTW! This is a process
33 | we will continue to refine so that we can more
34 | easily fold in new data across all [Overture themes](https://docs.overturemaps.org/guides/).
35 |
36 | ## Roads and building heights
37 |
38 | |  |
39 | |:--:|
40 | | *Roads from TomTom in Italy and Saudi Arabia* |
41 |
42 | Also in the October release, you’ll find new data from [TomTom](https://www.tomtom.com/), representing more than 30,000 kilometers of roads in Saudi Arabia
43 | and Italy. We also added new building height data from both Microsoft and [Esri Community Maps contributors](https://communitymaps.arcgis.com/home/).
44 | These updates highlight Overture’s goal to improve data quality and coverage by incorporating new data into each release,
45 | with a focus on [data sources](https://docs.overturemaps.org/attribution/) that have permissive open-source licenses.
46 |
47 | Please [reach out to us on GitHub](https://github.com/OvertureMaps/data/discussions) with questions and feedback about our data.
48 | If you have a suggestion for a new dataset or if you have data you'd like to contribute, you can email us at **data AT overturemaps.org**. We’d love to hear from you.
49 |
50 |
--------------------------------------------------------------------------------
/blog/2024-alpha/2024-01-17-alpha.0.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2024-01-17-alpha.0
3 | slug: 2024-01-17-alpha.0
4 | ---
5 |
6 | ### Highlights
7 | Overture `2024-01-17-alpha.0` is now available. This release includes several incremental improvements, addition of geopolitical boundary information in the Admins Theme and expansion of GERS IDs across several themes. More information about these additions is available in the relevant sections below.
8 |
9 |
10 |
11 | This data is formatted in the Overture Data Schema unless otherwise noted.
12 |
13 | This data is available for use under the designated licenses for each theme.
14 |
15 | We would like feedback on the data, its usefulness, and how it could be improved. Please use this Github repo for discussions and feedback related to this data release.
16 |
17 | Overture `2024-01-17-alpha.0` is available in GeoParquet and stored on AWS and Azure.
18 |
19 | ### Changelog
20 | See our [changelog](https://github.com/OvertureMaps/schema/releases/tag/v0.8.0) here.
21 |
22 | ### Theme-specific updates
23 | Overture `2024-01-17-alpha.0` is released in five themes.
24 |
25 | **Buildings Theme**
26 | The dataset includes 2.35B conflated building footprints from OSM, Esri Community Maps, Microsoft ML Building Footprints, and Google Open Buildings.
27 | The order of conflation is OpenStreetMap → Esri Community Maps → high precision Google Open Buildings → Microsoft ML Building Footprints → lower precision Google Open Buildings. For example, if Esri has a building that does not exist in OSM, we take that building, then we “fill-in” the rest of the map with any ML buildings that do not intersect with either OSM or Esri.
28 | We use the 90% precision confidence threshold to delineate between high and lower precision for Google Open Buildings, this threshold varies per s2 cell.
29 |
30 | We've made incremental improvements to further ensure the data conforms to the buildings layer schema.
31 |
32 | 3d attributes from OSM, such as roof shape, are now available.
33 |
34 | The sources of the buildings theme include OpenStreetMap, Esri Community Maps, Microsoft Building footprints, and Google Open Buildings. Some building heights have also been derived using lidar from USGS 3DEP.
35 |
36 | Data in the Buildings theme is licensed under ODbL.
37 |
38 | **Transportation Theme**
39 | Refreshed data to include OSM data up to Dec 19
40 |
41 | :::note
42 | GERS IDs for connectors and segments should now be considered stable for future releases
43 | :::
44 |
45 | Data in the Transportation theme is licensed under ODbL.
46 |
47 | **Base Theme**
48 | All of the features in the base theme are from OpenStreetMap, sourced via the latest Daylight Map Distribution (v1.38).
49 |
50 | Includes 43M water features, 63M land features, and 44M land use features.
51 |
52 | Most original OSM tags remain on all features. Some tags become normalized and added as top-level properties, such as the surface or wikidata tags.
53 |
54 | Data in the Base theme is licensed under ODbL.
55 |
56 | **Places Theme**
57 | This release has over 57M place records.
58 |
59 | The Places theme in this release includes incremental improvements to improve the accuracy and quality of the dataset.
60 |
61 | Data in the Places theme is licensed under CDLA Permissive 2.0.
62 |
63 | **Administrative Boundaries (Admins) Theme**
64 | Minor improvements on second-level subdivision of countries.
65 | Data from OSM is updated to 15th of January.
66 |
67 | This is first release with "geopolDisplay" property set on boundaries.
68 |
69 | Known issues:
70 | - Second-level subdivision are still not complete world-wide, as we search for data sources that are compatible with ODbL.
71 | - All first-level subdivisions have type=state and all second-level subdivisions have type=county which is not always true, we plan to address this issue in following release.
72 | - We plan to use admin_level=8,9,10 to add polygons to cities, towns, villages and other localities when available depending on individual country mapping.
73 |
74 | The sources of the admin theme are OpenStreetMap and Esri. The Administrative Boundary data is in the Overture Maps data schema for Admin.
75 |
76 | Data in the Admin theme is licensed under ODbL.
77 |
78 | ### Attribution
79 | - © OpenStreetMap contributors available under the Open Database License (www.openstreetmap.org/copyright)
80 | - U.S. Geological Survey, 2019, USGS 3D Elevation Program Digital Elevation Program
81 | - Building data © OpenStreetMap contributors, Microsoft, Esri Community Maps contributors, Google Open Buildings
82 |
--------------------------------------------------------------------------------
/blog/2024-beta/2024-05-16-beta.0.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2024-05-16-beta.0
3 | slug: 2024-05-16-beta.0
4 | ---
5 |
6 | Here's what's new and updated in the Overture Maps `2024-05-16-beta.0` release. The "beta" designation indicates the data and schema are largely stable.
7 |
8 | Overture Maps `2024-05-16-beta.0` is available in GeoParquet and stored on AWS and Azure. Users can select the data of interest and download it by following the process outlined [here](https://docs.overturemaps.org/getting-data/). We encourage developers wishing to adopt Overture Maps base layers to begin evaluating and providing [feedback on the data, schema, and GERS IDs](https://github.com/OvertureMaps/data/discussions). Depending on the feedback from this release and subsequent releases, we anticipate moving to a production release in the next few months.
9 |
10 |
11 |
12 | ### Breaking changes
13 |
14 | In the `buildings` theme, we promoted `class` to `subtype` and introduced new `class` values. This allows for more detail in a feature. Parking garages, for example, now have the attributes: `subtype=transportation` and `class=parking`.
15 |
16 |
17 | ### Deprecations
18 | Last month, we announced the deprecation of our `admins` theme and launched its replacement, `divisions`. Because of issues with missing data in `divisions`, we have extended the life of `admins`. Here is the new deprecation schedule: the two themes will coexist in the May, June, and July 2024 releases; in the August 2024 release, we will fully remove `admins` from our schema and data. More information on why we made this change [here](https://github.com/OvertureMaps/schema/discussions/117).
19 |
20 | ### Schema Changelog
21 | See our [changelog](https://github.com/OvertureMaps/schema/releases) here.
22 |
23 | ### Theme-specific updates
24 |
25 | **Divisions/Admins**
26 |
27 | - refreshed data with OpenStreetMap snap on 10 May 2024
28 | - populated `region` field for `division_area` type
29 | - populated `local_type` field `division` type
30 | - known issue: the `capital_division_id` field in `division` type is missing data
31 |
32 | :::warning
33 | See information above about the deprecation of `admins` schema and data
34 | :::
35 |
36 | **Base**
37 |
38 | - added `land_cover` schema and data derived from ESA WorldCover high-resolution Earth observation imagery
39 | - added new subtypes in `infrastructure` type: `barrier`, `pedestrian`, `utility`, `waste_management`, `water`
40 | - added `min_zoom` and `max_zoom` attributes for cartographic purposes
41 |
42 | **Buildings**
43 |
44 | - promoted `class` to `subtype` and introduced new class values for buildings. Where relevant, the class tag is the value of the building key in OSM. This allows anyone to use previous class types as subtype (backwards compatible) and introduces new class values that allow for more detail, like parking. Parking garages, for example, now have the attributes: `subtype=transportation`, `class=parking`; example of new subtypes, promoted from class: `agricultural`, `civic`, `commercial`, `education`, `entertainment`, `industrial`, `medical`, `military`, `outbuilding`, `religious`, `residential`, `service`, `transportation`
45 | - made incremental updates from OSM since the previous release
46 |
47 | **Places**
48 |
49 | - made incremental changes to improve the accuracy and quality of the dataset
50 |
51 | **Transportation**
52 |
53 | - added missing vehicle travel mode
54 | - added missing `is_covered` road flag
55 | - populated `is_abandoned` flag when relevant abandoned or disused tags are present
56 | - added OSM source ids for connectors
57 | - fixed null linear referencing for names in some cases
58 |
59 | ### Attribution
60 |
61 | You'll find information about attribution and licensing [here](https://docs.overturemaps.org/attribution/).
62 |
--------------------------------------------------------------------------------
/blog/2024/2024-11-13.0.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2024-11-13.0 release notes
3 | slug: 2024-11-13.0
4 | tags:
5 | - releases
6 | ---
7 | import Tabs from '@theme/Tabs';
8 | import TabItem from '@theme/TabItem';
9 | import QueryBuilder from '@site/src/components/queryBuilder';
10 |
11 | ## Overview
12 |
13 | **The `2024-11-13.0` release of Overture data and `v1.3.0` of the Overture schema are now available.** This release includes more than 66 unique address datasets from many new [sources](/attribution). We added a new `postal_city` column to the addresses schema to support address formatting. In the transportation schema, we dropped the unutilized `lanes` column in preparation for transportation's GA release in the near future.
14 |
15 | The November release is available as GeoParquet files stored on both AWS and Azure. The release paths are:
16 |
17 | #### Microsoft Azure:
18 | ```
19 | wasbs://release@overturemapswestus2.blob.core.windows.net/2024-11-13.0
20 | ```
21 |
22 | #### Amazon S3:
23 | ```
24 | s3://overturemaps-us-west-2/release/2024-11-13.0
25 | ```
26 |
27 |
28 |
29 | :::note
30 | We are now releasing Overture's GeoParquet files in accordance with the [GeoParquet v1.1.0 specification](https://geoparquet.org/releases/v1.1.0/), with the covering metadata included.
31 | :::
32 |
33 | You can access the datasets by following the process outlined [here](https://docs.overturemaps.org/getting-data/). We encourage you to ask questions, report bugs, and provide feedback via our [data](https://github.com/OvertureMaps/data) and [schema](https://github.com/OvertureMaps/schema) repositories on GitHub. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at **data AT overturemaps.org**. We’d love to hear from you.
34 |
35 |
36 | ## Breaking changes
37 |
38 | We removed the `lanes` column from the transportation schema, as we have not had the data to populate it since its implementation many months ago. It's unlikely this will be a breaking change for most users, but we are erring on the side of caution and including this information here. We intend to introduce a reimagined, data-rich lanes property in 2025.
39 |
40 | ## Deprecations
41 |
42 | None.
43 |
44 | ## Theme-specific updates
45 |
46 | :::info
47 | The base, buildings, divisions, and places themes are in GA. The transportation theme is in beta, and the addresses theme is in alpha.
48 | :::
49 |
50 | ### Addresses
51 | - added a new `postal_city` column to support address formatting
52 | - added the following countries to the address theme:
53 | - Belgium
54 | - [Ice](https://youtu.be/1HU7ocv3S2o?feature=shared)land
55 | - Italy
56 | - Latvia
57 | - Slovenia
58 | - Spain
59 | - Taiwan
60 | - added new data and new sources for several countries
61 |
62 |
63 | ### Base
64 | - added more detailed features at higher latitudes in the land cover feature type
65 | - added new `crater` subtype and associated classes in the land feature type
66 | - added new classes in the infrastructure feature type
67 |
68 | ### Buildings
69 | - made incremental updates
70 | - added a new roof class to the building feature type
71 |
72 | ### Divisions
73 | - made minor fixes and incremental updates
74 |
75 | ### Places
76 | - no updates
77 |
78 | ### Transportation
79 | - removed `lanes` column
80 | - added 2.6M connectors for crosswalks on roads that don't yet have an intersecting segment
81 |
82 | ## Global Entity Reference System (GERS) changelog
83 |
84 | The GERS changelog captures any changes in Overture features between this release and the previous release. The changelog is available as Parquet files — partitioned by theme, type, and change type — at the following locations on Azure and AWS:
85 |
86 | ```
87 | wasbs://changelog@overturemapswestus2.blob.core.windows.net/2024-11-13.0
88 | ```
89 | ```
90 | s3://overturemaps-us-west-2/changelog/2024-11-13.0
91 | ```
92 |
93 | You can find more information about [the GERS Changelog in our documentation](https://docs.overturemaps.org/gers/changelog/).
94 |
95 | ## Schema changelog
96 | The changelog for Overture schema `v1.3.0` is [here](https://github.com/OvertureMaps/schema/releases).
97 |
98 | ## Attribution
99 |
100 | You'll find information about attribution and licensing [here](/attribution).
101 |
--------------------------------------------------------------------------------
/blog/2024/2024-12-18.0.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2024-12-18.0 release notes
3 | slug: 2024-12-18.0
4 | tags:
5 | - releases
6 | ---
7 | import Tabs from '@theme/Tabs';
8 | import TabItem from '@theme/TabItem';
9 | import QueryBuilder from '@site/src/components/queryBuilder';
10 |
11 | ## Overview
12 |
13 | **The `2024-12-18.0` release of Overture data and `v1.4.0` of the Overture schema are now available.** This month [our transportation theme is going to GA](/blog), we're launching a [bathymetry feature type](/schema/reference/base/bathymetry) in our base theme, and we're at 400 million address records and counting in our [addresses theme](/guides/addresses). What a way to end the year!
14 |
15 | The datasets are available as GeoParquet files stored on both AWS and Azure. The release paths are:
16 |
17 | #### Microsoft Azure:
18 | ```
19 | wasbs://release@overturemapswestus2.blob.core.windows.net/2024-12-18.0
20 | ```
21 |
22 | #### Amazon S3:
23 | ```
24 | s3://overturemaps-us-west-2/release/2024-12-18.0
25 | ```
26 |
27 |
28 | You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions, report bugs, and provide feedback via our [data](https://github.com/OvertureMaps/data) and [schema](https://github.com/OvertureMaps/schema) repositories on GitHub. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you.
29 |
30 |
31 | ## Breaking changes
32 |
33 | None.
34 |
35 | ## Deprecations
36 |
37 | None.
38 |
39 | ## Theme-specific updates
40 |
41 | :::info
42 | The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha.
43 | :::
44 |
45 | ### Addresses
46 | - reached a milestone of 400 million address records
47 | - added new data for:
48 | - Czechia
49 | - Liechtenstein
50 | - Uruguay
51 | - various counties in [Ca](https://youtu.be/lWQ4IPPXz2k?feature=shared)lifornia
52 | - replaced NAD data in Massachusetts with open data from MassGIS
53 |
54 | ### Base
55 | - added `bathymetry` feature type with 60,000 new features
56 | - added new classes to `land`, `land_use`, and `water` feature types, including `fatbike`, `hike`, and `nordic`
57 |
58 | ### Buildings
59 | - made incremental updates to data
60 |
61 | ### Divisions
62 | - made incremental updates to data
63 |
64 | ### Places
65 | - no updates
66 |
67 | ### Transportation
68 | - released the transportation theme in GA!
69 | - added new roads in the US, UK, and FR
70 | - added non-OSM roads in:
71 | - France: 172.87 kms
72 | - United Kingdom: 20.21 kms
73 | - Italy: 1099.86 kms
74 | - Saudi Arabia: 29793.48 kms
75 | - United States: 215.51 kms
76 | - merged adjacent route values
77 | - fixed access restrictions that were not populating with data
78 | - fixed class value that was not populating with data for 3K segments
79 |
80 | ## Global Entity Reference System (GERS) changelog
81 |
82 | The GERS changelog captures any changes in Overture features between this release and the previous release. The changelog is available as Parquet files — partitioned by theme, type, and change type — at the following locations on Azure and AWS:
83 |
84 | ```
85 | wasbs://changelog@overturemapswestus2.blob.core.windows.net/2024-12-18.0
86 | ```
87 | ```
88 | s3://overturemaps-us-west-2/changelog/2024-12-18.0
89 | ```
90 |
91 | You can find more information about [the GERS Changelog in our documentation](https://docs.overturemaps.org/gers/changelog/).
92 |
93 | ## Schema changelog
94 | The changelog for Overture schema `v1.4.0` is [here](https://github.com/OvertureMaps/schema/releases/tag/v1.4.0).
95 |
96 | ## Attribution
97 |
98 | You'll find information about attribution and licensing [here](/attribution).
99 |
--------------------------------------------------------------------------------
/blog/2025-01-22-release-notes.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2025-01-22 release notes
3 | tags:
4 | - releases
5 | ---
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 |
10 | ## Overview
11 |
12 | **The `2025-01-22.0` release of Overture data and `v1.5.0` of the Overture schema are now available.**
13 |
14 | The datasets are available as GeoParquet files stored on both AWS and Azure. The release paths are:
15 |
16 | #### Microsoft Azure:
17 | ```
18 | wasbs://release@overturemapswestus2.blob.core.windows.net/2025-01-22.0
19 | ```
20 |
21 | #### Amazon S3:
22 | ```
23 | s3://overturemaps-us-west-2/release/2025-01-22.0
24 | ```
25 |
26 |
27 |
28 | You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions, report bugs, and provide feedback via our [data](https://github.com/OvertureMaps/data) and [schema](https://github.com/OvertureMaps/schema) repositories on GitHub. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you.
29 |
30 |
31 | ## Breaking changes
32 |
33 | None.
34 |
35 | ## Deprecations
36 |
37 | None.
38 |
39 | ## Theme-specific updates
40 |
41 | :::info
42 | The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha.
43 | :::
44 |
45 | ### Addresses
46 | - added five new data sources in Taiwan
47 | - made minor fixes and updates
48 |
49 | ### Base
50 | - made minor fixes and updates
51 |
52 | ### Buildings
53 | - added 228.5M buildings from a [new ML-derived building dataset of East Asian countries](https://zenodo.org/records/8174931)
54 | - made minor fixes and updates
55 |
56 | ### Divisions
57 | - new cartography column in the schema that has not yet been populated with data
58 | - added `is_land` and `is_territorial` properties to `division_area` and `division_boundary` feature types
59 | - refreshed data on 17 January 2025
60 |
61 | ### Places
62 | A statement from the Places engineering team: _“The places data has remained unchanged since the September 2024 release while we work on substantial pipeline upgrades. We anticipate releasing a new dataset in the coming months.”_
63 |
64 | ### Transportation
65 | - added approximately 4000km of new TomTom-sourced roads in the US
66 | - refreshed data on 18 December 2024
67 |
68 | ## Global Entity Reference System (GERS) changelog
69 |
70 | The GERS changelog captures any changes in Overture features between this release and the previous release. The changelog is available as Parquet files — partitioned by theme, type, and change type — at the following locations on Azure and AWS:
71 |
72 | ```
73 | wasbs://changelog@overturemapswestus2.blob.core.windows.net/2025-01-22.0
74 | ```
75 | ```
76 | s3://overturemaps-us-west-2/changelog/2025-01-22.0
77 | ```
78 |
79 | You can find more information about [the GERS Changelog in our documentation](https://docs.overturemaps.org/gers/changelog/).
80 |
81 | ## Schema changelog
82 | The changelog for Overture schema `v1.5.0` is [here](https://github.com/OvertureMaps/schema/releases).
83 |
84 | ## Attribution
85 |
86 | You'll find information about attribution and licensing [here](/attribution).
87 |
--------------------------------------------------------------------------------
/blog/2025-02-19-release-notes.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2025-02-19 release notes
3 | tags:
4 | - releases
5 | ---
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 |
10 | ## Overview
11 |
12 | **The `2025-02-19.0` release of Overture data and `v1.6.0` of the Overture schema are now available.**
13 |
14 | The datasets are available as GeoParquet files stored on both AWS and Azure. The release paths are:
15 |
16 | #### Microsoft Azure:
17 | ```
18 | wasbs://release@overturemapswestus2.blob.core.windows.net/2025-02-19.0
19 | ```
20 |
21 | #### Amazon S3:
22 | ```
23 | s3://overturemaps-us-west-2/release/2025-02-19.0
24 | ```
25 |
26 |
27 |
28 | You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions and provide feedback on the Overture Maps [Discussions forum on GitHub](https://github.com/orgs/OvertureMaps/discussions). You can also file issues and report bugs in our [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repositories. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you.
29 |
30 |
31 | ## Breaking changes
32 |
33 | None.
34 |
35 | ## Deprecations
36 |
37 | None.
38 |
39 | ## Theme-specific updates
40 |
41 | :::info
42 | The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha.
43 | :::
44 |
45 | ### Addresses
46 | - added new data in the following US counties:
47 | - Hillsbough County, FL
48 | - Manatee County, FL
49 | - Dekalb County, GA
50 | - Oakland County, MI
51 | - added new data in Yukon Territory, Canada
52 | - updated the NAD source to v18
53 | - removed erroneous address data in BE
54 |
55 |
56 | ### Base
57 | - minor data fixes and updates
58 | - refreshed data with 15 February 2025 OSM update
59 |
60 |
61 | ### Buildings
62 | - fixed geometries from the Zenodo dataset
63 | - refreshed data with 5 February 2025 OSM update
64 |
65 |
66 | ### Divisions
67 | - added county boundaries in Colombia and Uruguay
68 | - added ~12k new division_boundary features
69 | - refreshed data with January 2025 GeoBoundaries update
70 | - migrated pipeline to Apache Spark implementation which resulted in improved names, capitals and parenting properties
71 |
72 |
73 | ### Places
74 | - released the first data update since September 2024, from a new and re-worked places conflation pipeline within Overture. This should result in more stable places releases moving forward
75 | - added new places data, resulting in a ~12% increase in the total number of places
76 | - removed a small number of places without a primary name or primary category
77 |
78 |
79 | ### Transportation
80 | - added ~40000km of new TomTom-sourced roads in France, Germany, Italy, Jordan, Kuwait, Mexico, Monaco, Saudi Arabia, Switzerland, United Arab Emirates, United Kingdom, United States, and Yemen
81 | - refreshed data with 5 February 2025 OSM update
82 |
83 | ## Global Entity Reference System (GERS) changelog
84 |
85 | The GERS changelog captures any changes in Overture features between this release and the previous release. The changelog is available as Parquet files — partitioned by theme, type, and change type — at the following locations on Azure and AWS:
86 |
87 | ```
88 | wasbs://changelog@overturemapswestus2.blob.core.windows.net/2025-02-19.0
89 | ```
90 | ```
91 | s3://overturemaps-us-west-2/changelog/2025-02-19.0
92 | ```
93 |
94 | You can find more information about [the GERS Changelog in our documentation](https://docs.overturemaps.org/gers/changelog/).
95 |
96 | ## Schema changelog
97 | The changelog for Overture schema `v1.6.0` is [here](https://github.com/OvertureMaps/schema/releases).
98 |
99 | ## Attribution
100 |
101 | You'll find information about attribution and licensing [here](/attribution).
102 |
--------------------------------------------------------------------------------
/blog/2025-07-23-release-notes.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2025-07-23 release notes
3 | tags:
4 | - releases
5 | ---
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 |
10 | ## Overview
11 |
12 | **The `2025-07-23.0` release of Overture data and `v1.11.0` of the Overture schema are now available.** The datasets and release artifacts are available as GeoParquet files stored on both AWS and Azure. The paths are:
13 |
14 | ### Release data
15 |
16 | **Microsoft Azure:**
17 | ```
18 | az://overturemapswestus2.blob.core.windows.net/release/2025-07-23.0/
19 | ```
20 |
21 | **Amazon S3:**
22 | ```
23 | s3://overturemaps-us-west-2/release/2025-07-23.0/
24 | ```
25 | ### Data changelog
26 |
27 | **Microsoft Azure:**
28 | ```
29 | az://overturemapswestus2.blob.core.windows.net/changelog/2025-07-23.0/
30 | ```
31 |
32 | **Amazon S3:**
33 | ```
34 | s3://overturemaps-us-west-2/changelog/2025-07-23.0/
35 | ```
36 |
37 |
38 | ### Bridge files
39 |
40 | **Microsoft Azure:**
41 | ```
42 | az://overturemapswestus2.blob.core.windows.net/bridgefiles/2025-07-23.0/
43 | ```
44 |
45 | **Amazon S3:**
46 | ```
47 | s3://overturemaps-us-west-2/bridgefiles/2025-07-23.0/
48 | ```
49 |
50 | ### GERS Registry
51 |
52 | **Microsoft Azure:**
53 | ```
54 | az://overturemapswestus2.blob.core.windows.net/registry/
55 | ```
56 |
57 | **Amazon S3:**
58 | ```
59 | s3://overturemaps-us-west-2/registry/
60 | ```
61 |
62 |
63 |
64 |
65 |
66 | You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions and provide feedback on the Overture Maps [Discussion forum on GitHub](https://github.com/orgs/OvertureMaps/discussions). You can also file issues and report bugs in our [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repositories. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you.
67 |
68 |
69 | ## Theme-specific updates
70 |
71 | :::info
72 | The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha.
73 | :::
74 |
75 | ### Addresses
76 |
77 | - no updates
78 |
79 |
80 | ### Base
81 |
82 | - added OSM tags for `quay`, `railway`, `artwork`
83 |
84 | ### Buildings
85 |
86 | - no updates
87 |
88 |
89 | ### Divisions
90 |
91 | - added a new data source to populate favelas in Brazil: DadosAbertos
92 | - added `is_land` geometries to the `division_area` type `country` subtype
93 | - added new land polygons `is_land=TRUE` for regions that have access to oceans
94 |
95 | ### Places
96 |
97 | - no updates
98 |
99 | ### Transportation
100 |
101 | - fixed a small bug in the route `source_id` formatting
102 | - added new data from TomTom in Turkey
103 |
104 |
105 | ## Schema changelog
106 |
107 | The changelog for Overture schema `v1.11.0` is [here](https://github.com/OvertureMaps/schema/tree/v1.11.0).
108 |
109 | ## Attribution
110 |
111 | You'll find information about attribution and licensing [here](/attribution).
112 |
--------------------------------------------------------------------------------
/blog/2025-08-20-release-notes.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: 2025-08-20 release notes
3 | tags:
4 | - releases
5 | ---
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 |
10 |
11 | :::info
12 |
13 | August 26th, 2025
14 |
15 | Today, Overture released a patch for the August data. The new release paths are:
16 |
17 | #### Amazon S3
18 | ```
19 | s3://overturemaps-us-west-2/release/2025-08-20.1
20 | ```
21 |
22 | #### Microsoft Azure
23 | ```
24 | wasbs://release@overturemapswestus2.blob.core.windows.net/2025-08-20.1
25 | ```
26 |
27 | During our final QA processes, we detected the following issue in the data: all Microsoft ML buildings were incorrectly assigned `"is_underground": true`. We decided to make the `2025-08-20.0
28 | ` release public with the bug and follow up with a patch to the data.
29 |
30 | 
31 |
32 | :::
33 |
34 | ## Overview
35 |
36 |
37 | **The `2025-08-20.0` release of Overture data and `v1.11.0` of the Overture schema are now available.** The datasets and release artifacts are available as GeoParquet files stored on both AWS and Azure. The paths are:
38 |
39 | ### Release data
40 |
41 | **Microsoft Azure:**
42 | ```
43 | az://overturemapswestus2.blob.core.windows.net/release/2025-08-20.0/
44 | ```
45 |
46 | **Amazon S3:**
47 | ```
48 | s3://overturemaps-us-west-2/release/2025-08-20.0/
49 | ```
50 | ### Data changelog
51 |
52 | **Microsoft Azure:**
53 | ```
54 | az://overturemapswestus2.blob.core.windows.net/changelog/2025-08-20.0/
55 | ```
56 |
57 | **Amazon S3:**
58 | ```
59 | s3://overturemaps-us-west-2/changelog/2025-08-20.0/
60 | ```
61 |
62 |
63 | ### Bridge files
64 |
65 | **Microsoft Azure:**
66 | ```
67 | az://overturemapswestus2.blob.core.windows.net/bridgefiles/2025-08-20.0/
68 | ```
69 |
70 | **Amazon S3:**
71 | ```
72 | s3://overturemaps-us-west-2/bridgefiles/2025-08-20.0/
73 | ```
74 |
75 | ### GERS Registry
76 |
77 | **Microsoft Azure:**
78 | ```
79 | az://overturemapswestus2.blob.core.windows.net/registry/
80 | ```
81 |
82 | **Amazon S3:**
83 | ```
84 | s3://overturemaps-us-west-2/registry/
85 | ```
86 |
87 |
88 |
89 |
90 |
91 | You can access the datasets by following the process outlined [here](/getting-data). We encourage you to ask questions and provide feedback on the Overture Maps [Discussion forum on GitHub](https://github.com/orgs/OvertureMaps/discussions). You can also file issues and report bugs in our [data](https://github.com/OvertureMaps/data/issues) and [schema](https://github.com/OvertureMaps/schema/issues) repositories. If you have a suggestion for a new dataset or if you have data you'd like to contribute to Overture, you can email us at data@overturemaps.org. We’d love to hear from you.
92 |
93 |
94 | ## Theme-specific updates
95 |
96 | :::info
97 | The base, buildings, divisions, places, and transportation themes are in GA. The addresses theme is in alpha.
98 | :::
99 |
100 | ### Addresses
101 |
102 | - no updates
103 |
104 |
105 | ### Base
106 |
107 | - added data for `quay`, `railway`, `artwork` classes
108 |
109 | ### Buildings
110 |
111 | - added new data from Esri and Vancouver
112 | - flagged a bug in the data: all Microsoft ML buildings described as underground
113 |
114 |
115 | ### Divisions
116 |
117 | - no updates
118 |
119 | ### Places
120 |
121 | - no updates
122 |
123 | ### Transportation
124 |
125 | - no updates
126 |
127 |
128 | ## Schema changelog
129 |
130 | The changelog for Overture schema `v1.11.0` is [here](https://github.com/OvertureMaps/schema/tree/v1.11.0).
131 |
132 | ## Attribution
133 |
134 | You'll find information about attribution and licensing [here](/attribution).
135 |
--------------------------------------------------------------------------------
/community/used-by.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Overture Deployed
3 | draft: true
4 | ---
5 |
6 | # Overture Deployed
7 |
8 | These companies and organizations are using Overture data in production.
9 |
10 | ### [Shadowmap](https://shadowmap.org/)
11 | Shadowmap is an interactive platform for visualizing and analyzing light at any location time, and date. In summer 2024, they started using Overture bulidings for global coverage and more accurate heights.
12 |
13 | "That's why we're super stoked about Overture – a service that greatly improves the way we can work with open map data in Shadowmap by connecting many different data sources."
14 |
15 |
16 | ### [Aire Labs](https://www.airelabs.com/)
17 | Aire Labs is a start-up with a mission to help climate positive technologies deploy faster. One of the customers is working on carbon removal in rivers, so they've been using Overture and OpenStreetMap geometries to augment the very coarse HydroRIVERS geometries. They've also been using Overture buildings as a proxy for population density.
18 |
19 | "I previously used OSM directly, but I live in geoparquet, so Overture has been a breath of fresh air." - senior data engineer, Aire Labs
20 |
21 |
22 | ### [Pokémon Go](https://pokemongolive.com/?hl=en)
23 | Pokémon Go is a mobile app that using GPS and AR to locate, capture, train, and battle virtual Pokémon, which appear as if they are in the player's real-world location. Overture buildings are now part of the game's basemap.
24 |
--------------------------------------------------------------------------------
/docs/examples/QGIS.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | description: drag and drop GeoParquet files into QGIS
3 | title: QGIS
4 | ---
5 |
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 | import BoulderCoDuckDB from '!!raw-loader!@site/src/queries/duckdb/boulder_co_duckdb.sql';
10 |
11 | In this example, we'll show you how to get Overture Maps data into [QGIS](https://www.qgis.org/), a powerful and popular open source geographic information system. QGIS can ingest almost every spatial data format, including [Parquet](https://parquet.apache.org/docs/) and [GeoParquet](https://geoparquet.org/). Once you get your data into QGIS, the sky's the limit for data analysis, data conflation, visualization and beautiful mapmaking.
12 |
13 |
14 |
15 | Instructions: Install a version of QGIS with GDAL > 3.5 that can read `(geo)parquet`
16 |
17 |
18 |
19 | You can find the latest installers for Mac here: [github.com/opengisch/qgis-conda-builder/releases](https://github.com/opengisch/qgis-conda-builder/releases)
20 |
21 | Additionally, the [conda packages](https://anaconda.org/conda-forge/qgis) of QGIS have support for Parquet.
22 |
23 |
24 |
25 | Most distributions of QGIS for Windows have support for parquet.
26 |
27 |
28 |
29 | The [conda packages](https://anaconda.org/conda-forge/qgis) of QGIS have support for Parquet.
30 |
31 | Additionally, there is a Flatpak QGIS package that includes support for Parquet:
32 |
33 | ```bash
34 | flatpak install --user https://dl.flathub.org/build-repo/94031/org.qgis.qgis.flatpakref
35 | ```
36 |
37 |
38 |
39 |
40 | ## Download Overture Data
41 |
42 |
43 |
44 |
45 | Using only the `bbox` parameters, we can efficiently retrieve all Overture data without processing any geometries. With SELECT `*`, we will simply download _all_ of the data in Overture across all themes and types. Note: if your query is interupted by a connection error, you might try running the following command first: `SET http_keep_alive=false;`.
46 |
47 |
48 |
49 | Note that this query gathers data from all Overture themes with `theme=*/type=*/*`. The resulting file has _all_ of the columns and multiple geometry types.
50 |
51 |
52 |
53 |
54 |
55 |
56 | The new [`overturemaps-py`](https://github.com/OvertureMaps/overturemaps-py) Python utility can download Overture data as both `geojson` and `geoparquet`. This example downloads buildlings around Boston.
57 |
58 | ```bash
59 | $ pip install overturemaps
60 |
61 | $ overturemaps download --bbox=-71.068,42.353,-71.058,42.363 \
62 | -f geoparquet --type=building --output=boston.geoparquet
63 | ```
64 |
65 | Note: run `overturemaps download --help` for a full list of types and output formats.
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 | ## Add the data to QGIS
74 | All of the data files we created in the previous step are vector files that can be added as layers in QGIS. The easiest method is to drag-and-drop the file(s) directly into the map canvas.
75 |
76 | 
77 |
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO Workflows.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO Workflows.png
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_Builder.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_Builder.gif
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_DO.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_DO.gif
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_DO1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_DO1.png
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_DO2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_DO2.png
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_Workflows.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_Workflows.gif
--------------------------------------------------------------------------------
/docs/examples/assets/CARTO_overture_map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/CARTO_overture_map.png
--------------------------------------------------------------------------------
/docs/examples/assets/buildings-milan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/buildings-milan.png
--------------------------------------------------------------------------------
/docs/examples/assets/fused_overture_buildings_dec2023.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/fused_overture_buildings_dec2023.gif
--------------------------------------------------------------------------------
/docs/examples/assets/gulf-water.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/gulf-water.png
--------------------------------------------------------------------------------
/docs/examples/assets/kepler-overture-hyderabad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/kepler-overture-hyderabad.png
--------------------------------------------------------------------------------
/docs/examples/assets/kepler_overture_buildings_hyderabad.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/kepler_overture_buildings_hyderabad.gif
--------------------------------------------------------------------------------
/docs/examples/assets/overture-buildings-pandas2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/overture-buildings-pandas2.png
--------------------------------------------------------------------------------
/docs/examples/assets/overture-pa-counties.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/overture-pa-counties.png
--------------------------------------------------------------------------------
/docs/examples/assets/places-milan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/places-milan.png
--------------------------------------------------------------------------------
/docs/examples/assets/qgis-parquet-drag-drop.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/qgis-parquet-drag-drop.gif
--------------------------------------------------------------------------------
/docs/examples/assets/rapid-buildings-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/rapid-buildings-data.png
--------------------------------------------------------------------------------
/docs/examples/assets/rapid-places-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/rapid-places-data.png
--------------------------------------------------------------------------------
/docs/examples/assets/rapid-visualizing-places.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/rapid-visualizing-places.png
--------------------------------------------------------------------------------
/docs/examples/assets/road-network-milan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/examples/assets/road-network-milan.png
--------------------------------------------------------------------------------
/docs/examples/index.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Examples
3 | ---
4 |
5 | Work with Overture data using the tools you know and love.
6 |
7 | import DocCardList from '@theme/DocCardList';
8 |
9 |
10 |
--------------------------------------------------------------------------------
/docs/examples/kepler-gl.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | description: explore Overture data in Kepler.gl
3 | title: Kepler.gl
4 | ---
5 |
6 | import Tabs from '@theme/Tabs';
7 | import TabItem from '@theme/TabItem';
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 | import HyderabadBuildingsAthena from '!!raw-loader!@site/src/queries/athena/hyderabad_buildings.sql';
10 | import HyderabadBuildingsDuckDB from '!!raw-loader!@site/src/queries/duckdb/hyderabad_buildings.sql';
11 |
12 | In this example, we'll query the Overture buildings theme and download data for a specified bounding box. Then we'll load the data into [kepler.gl](https://kepler.gl/demo), an open-source tool for working with large map datasets, and visualize the buildings data by data source: [OpenStreetMap](https://wiki.openstreetmap.org/wiki/Key:building), [Microsoft ML Building Footprints](https://github.com/microsoft/GlobalMLBuildingFootprints), [Esri Community Maps](https://communitymaps.arcgis.com/home), and [Google Open Buildings](https://sites.research.google/open-buildings/).
13 |
14 | Requirements: Install DuckDB or log into AWS to access Athena. You do not need an account on kepler.gl.
15 |
16 | ## Get only the data you need
17 | Using DuckDB or Athena, query Overture data to get buildings for our area of interest, in this case a bounding box with Hyderabad, India.
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | ## Explore the data in Kepler.gl
29 | Drag and drop the GeoJSON file into [kepler.gl](https://kepler.gl/demo). Style the feature layer by choosing different colors based on the `primary_source` field. Then you can explore the multiple data sources that Overture has conflated to create the buildings theme.
30 |
31 | 
32 |
33 | 
34 |
35 | ## Next steps
36 | - Make [your own interactive Overture map](/examples/build-a-map) with MapLibre and PMTiles!
37 |
--------------------------------------------------------------------------------
/docs/examples/rapid.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | description: inspect Overture geometries in Rapid
3 | title: Rapid
4 | ---
5 |
6 | import CodeBlock from '@theme/CodeBlock';
7 | import Tabs from '@theme/Tabs';
8 | import TabItem from '@theme/TabItem';
9 | import QueryBuilder from '@site/src/components/queryBuilder';
10 |
11 |
12 | ## Places
13 |
14 | In this example, we will load Overture Places data into Rapid so that we can visualize and inspect the geometries and their properties.
15 |
16 | To open Rapid v2, navigate to [https://rapideditor.org/edit](https://rapideditor.org/edit).
17 |
18 | Zoom in using the + or - hotkeys, the mouse scroll wheel, etc. to an area where you want to see Overture Places data.
19 |
20 | Click the 'Map Data' sidebar button or hit the 'F' hotkey. Then, click the three dots icon next to 'Custom Data'.
21 |
22 | 
23 |
24 | You will see the Custom Data dialog. Paste this URL:
25 |
26 |
27 |
28 | into the text input and hit 'OK'.
29 |
30 | Wait a few moments, and you should see some places data start to show up on the map. These places are clickable and inspectable:
31 |
32 | 
33 |
34 | Alternatively, Rapid can load the data automatically if the URL is formatted like this.
35 |
36 |
37 |
38 | ## Buildings
39 |
40 | Rapid can also load polygon or line features in addition to point features.
41 |
42 |
43 |
44 | 
45 |
--------------------------------------------------------------------------------
/docs/gers/changelog.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Data Changelog
3 | ---
4 | import QueryBuilder from '@site/src/components/queryBuilder';
5 | import changelog_buildings_churn from '!!raw-loader!@site/src/queries/duckdb/changelog_buildings_churn.sql';
6 | import changelog_buildings_feature_by_change_type from '!!raw-loader!@site/src/queries/duckdb/changelog_buildings_feature_by_change_type.sql';
7 | import changelog_buildings_join from '!!raw-loader!@site/src/queries/athena/changelog_buildings_join.sql';
8 |
9 | With each data release, Overture publishes a **changelog** that capture changes in the data from the previous release to the current release. This information can be used to guide decisions about data matching, better understand data stability, and help detect data errors.
10 |
11 | The data changelog is available as Parquet files, partitioned by `theme`, `type`, and `change_type` and sorted geospatially with a unique index on `id`. The changelog files are available at the following locations:
12 |
13 | | Provider | Location |
14 | | ------ | -------- |
15 | | Amazon S3 | `s3://overturemaps-us-west-2/changelog/` |
16 | | Microsoft Azure | `wasbs://changelog@overturemapswestus2.blob.core.windows.net/` |
17 |
18 | The latest path is:
19 |
20 |
21 | ## Types of changes
22 |
23 | The `change_type` property in the changelog includes these types of changes to the entities:
24 |
25 | - **added**: the entity with this ID is new in the current release and was not present in the previous release
26 | - **removed**: the entity with this ID is not present in the current release but was present in the previous release
27 | - **data_changed**: the entity with this ID in the current release contains a change in geometry or properties from the entity with this ID that was in the previous release
28 | - **unchanged**: the entity with this ID in the current release matches the geometry and properties of the entity with this ID that was in the previous release
29 |
30 | ## Querying the data changelog
31 |
32 | We can query the changelog to get a quick look at changes in data from the last release to the current release. In this example, we're using DuckDB to grab the `id`, `type`, and `change_type` for buildings in several towns across the [Amhara Region](https://en.wikipedia.org/wiki/Amhara_Region) in Ethiopia.
33 |
34 |
35 |
36 | We can also get a count of building features by `change_type` for our area of interest.
37 |
38 |
39 |
40 | Taking this one step further, this time using Athena to run our query, we can join the changelog and data via the `id` to connect the `change_type` and entity properties.
41 |
42 |
43 |
44 | Finally we can use the results of our query to visualize building features by `change_type` and inspect the properties for each feature. The example below, created using [kepler.gl](https://kepler.gl/), shows buildings in [Finote Selam](https://en.wikipedia.org/wiki/Finote_Selam), a city in the Amhara Region of Ethiopia. The data is from Overture's `2024-06-13-beta.0` release, to which we added 100 million new buildings, many of them derived from satellite imagery by Microsoft.
45 |
46 | 
47 |
--------------------------------------------------------------------------------
/docs/gers/gers-demonstrations.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: GERS Demonstrations
3 | draft: true
4 | ---
5 |
6 | Within the Overture ecosystem, member companies and collaborators have created several GERS prototypes and demonstrations to help you get started with data matching and GERS ID assignment.
7 |
8 |
9 | ### Esri
10 |
11 | Esri, a general member of the Overture Maps Foundation (OMF), has taken the lead in creating and sharing examples of GERS-enriched data. In their initial GERS demonstration project following Overture's October 2023 release, Esri matched [Overture buildings with FEMA's USA structures](https://www.esri.com/arcgis-blog/products/arcgis-online/mapping/enriching-overture-data-with-gers/) in four cities and created an enhanced pop-up window showing the combined properties from both datasets for each feature, including the GERS ID and FEMA USA Structures UUID. More recently, Esri created a map showing [Overture buildings data enriched with the FEMA data for the Contiguous United States (CONUS)](https://overture.maps.arcgis.com/home/item.html?id=52e3ebfaf01141d8bdfbaa06dcd96638).
12 |
13 | 
14 |
15 | Esri has also shared a feature layer combined data from the [Overture divisions theme, Census county geometries, and Census socioeconomic data (GERS ID to FIPS)](https://www.arcgis.com/home/item.html?id=c640a11058e34316a69f6a1e74049f9e).
16 |
17 | ### TomTom
18 |
19 | TomTom, an OMF steering committee member, shared a blog post about the importance of GERS in Overture's transportation data model: https://engineering.tomtom.com/overture-transportation-network-linear-referencing/
20 |
21 |
22 | ### Safegraph
23 |
24 | Safegraph, a contributing member company of OMF, wrote [a blog post and tutorial](https://www.placekey.io/blog/joining-overture-and-npi-datasets) about Placekey facilitating matches between Overture POIs and National Provider Identifier (NPI) data. The notebook associated with the tutorial is available here: https://colab.research.google.com/drive/17BimmoiW4bqpyBb0-MdK2z9MwcSVAb-8?usp=sharing
25 |
26 | ### Precisely
27 |
28 | Drew Breunig of Precisely, a contributing member of OMF, put togther a step-by-step guide to joining Overture buildings data to Census Block Group data using DuckDB:
29 | https://www.dbreunig.com/2024/06/25/using-duckdb-spatial-joins-to-map-overture-gers-ids-to-us-census-fips-codes.html
30 |
31 |
32 |
--------------------------------------------------------------------------------
/docs/gers/index.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: What is GERS?
3 | slug: /gers
4 | ---
5 | import QueryBuilder from '@site/src/components/queryBuilder';
6 |
7 | ## Global Entity Reference System
8 |
9 | The Global Entity Reference System (GERS) is a universal framework for structuring and matching map data across systems. GERS, coupled with Overture datasets, is a potential standard for identifying and referencing the physical and conceptual entities we've defined in our world. It's also a mechanism that can simplify the integration and exchange of data layers.
10 |
11 | GERS provides stable identifiers called GERS IDs for real-world geospatial entities across data releases and maintains consistency when entities appear in multiple source datasets.
12 |
13 | ## GERS is a system
14 |
15 | The "S" in GERS stands for a *system*, with the following components:
16 |
17 | | Component | Description |
18 | | ---------- | ---------- |
19 | | [Overture reference map](/#overture-data) | consists of the canonical datasets Overture releases each month |
20 | | [Global registry of GERS IDs](registry) | catalogs all GERS IDs ever published |
21 | | [Data changelog](changelog) | describes changes to entities across releases |
22 | | [Bridge files](bridge-files) | connects the GERS IDs in a release to the IDs from the underlying source data |
23 |
24 |
25 | ## How does GERS work?
26 |
27 | 1. Overture assigns a **unique ID** to discrete entities. These could be buildings, road segments, places, or addresses. These IDs are intended to be **stable** across Overture releases.
28 |
29 | 2. Overture maintains open-source **matching and conflation libraries** to ensure that the ID remains stable across releases.
30 |
31 | 3. Each Overture release is the latest **reference map** for these IDs.
32 |
33 | 4. The reference map is **global** and **open**.
34 |
35 |
36 | ## Using GERS
37 |
38 | We envision the Overture ecosystem using GERS in the following ways:
39 |
40 | ### Matching and associating data
41 | You can independently associate your own data (or a third-party dataset) with Overture data. For example, you might want to link real-time traffic data to Overture road segments, insurance data to Overture buildings, restaurant reviews to features in Overture's places dataset, and socioeconomic data features in Overture's divisions dataset. When third-party data is matched to an Overture feature it picks up that feature's GERS ID and becomes "GERS-enabled" data, ready to be associated via ID to any other GERS-enabled dataset in the Overture ecosystem.
42 |
43 |
44 |
45 |
46 | ### Contributing data
47 | You can contribute data to the Overture Maps Foundation, and we will use Overture's matching algorithms to match the features in your dataset to features in Overture. Matched features may be assigned an existing GERS ID, and we may generate new GERS IDs for new features.
48 |
49 |
--------------------------------------------------------------------------------
/docs/gers/registry.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Registry
3 | ---
4 |
5 | import QueryBuilder from '@site/src/components/queryBuilder';
6 |
7 | With each data release, Overture publishes a **GERS Registry** that serves as the single source of truth for all entities that are part of the Global Entity Reference System. It serves as a comprehensive catalog that tracks every stable ID ever published across all Overture data releases.
8 |
9 | There is only ever one GERS Registry. It's not versioned. We update it with each release by comparing the last published GERS Registry with the current Overture data release.
10 |
11 | The registry is available as Parquet files at the following locations:
12 |
13 | | Provider | Location |
14 | | ----------- | -------- |
15 | | Amazon S3 | `s3://overturemaps-us-west-2/registry/` |
16 | | Microsoft Azure Blob Storage | `az://overturemapswestus2.blob.core.windows.net/registry/` |
17 |
18 |
19 | ## Registry schema
20 |
21 | The GERS Registry files have the following schema:
22 |
23 | | Column | Data type | Description |
24 | |-------|------|-------------|
25 | | `id` | string | GERS identifier (UUID) |
26 | | `version` | integer | current version number |
27 | | `first_seen` | string | release when entity first appeared |
28 | | `last_seen` | string | most recent release containing entity |
29 | | `last_changed` | string | last release the entity was changed, sourced from changelog |
30 | | `path` | string | relative path to feature in release data |
31 | | `bbox` | struct(xmin float, xmax float, ymin float, ymax float) | bounding box coordinates |
32 |
33 |
34 | ## Supported themes and types
35 |
36 | The following feature types will be included in the initial GERS Registry (June 2025 release):
37 |
38 | - `address`
39 | - `building`
40 | - `division`
41 | - `division_area`
42 | - `division_boundary`
43 | - `place`
44 | - `segment`
45 | - `connector`
46 |
47 | Inclusion in the GERS Registry signifies Overture's long-term commitment to entity matching and stability for those types. We may add additional feature types to the GERS Registry in future releases.
48 |
49 |
50 | ## Example
51 |
52 | You can use the GERS Registry to verify that an entity exists in Overture, track the history of that entity, and find new entities that have been added. For example, you might ask, "Is `fea28f69-7afa-460c-b270-61ef74cd340c` part of GERS?" You can query the GERS Registry to find out.
53 |
54 | ```
55 | SELECT
56 | *
57 | FROM read_parquet('s3://overturemaps-us-west-2/registry/*.parquet')
58 | WHERE id='fea28f69-7afa-460c-b270-61ef74cd340c';
59 | ```
60 |
61 | We can see that `fea28f69-7afa-460c-b270-61ef74cd340c` is a building first released by Overture in June 2025 and last seen in August 2025 (`2025-08-20.1`), the current release. The exact bounding box of the feature is `{'xmin': 80.67177, 'xmax': 80.67182, 'ymin': 26.619795, 'ymax': 26.619843}` and the relative path to the feature is `/theme=buildings/type=building/part-00149-8a741876-e04d-4e66-bc96-0171910fa1b1-c000.zstd.parquet`. You can directly access the Parquet file that contains this feature by appending the relative path to the current release path: `s3://overturemaps-us-west-2/release/2025-08-20.1`. Since you know the exact bounding box of the feature, you can optimize your query and you should be able to fetch this feature directly from the data release in seconds.
62 |
63 |
64 |
--------------------------------------------------------------------------------
/docs/gers/stability.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: GERS ID Stability
3 | draft: true
4 | ---
5 |
6 | At the feature `type` level, Overture strives to maintain stability of GERS IDs from one release to another. Currently, we consider the IDs for the following feature types to be stable:
7 |
8 | | `theme` | `type` | Stable GERS ID |
9 | |-------|------|-----------|
10 | | `buildings` | `building` | Yes |
11 | | `divisions` | `division` | Yes |
12 | | `places` | `place` | Yes |
13 | | `transportation` | `segment` | Yes |
14 | | `transportation` | `connector` | Yes |
15 |
16 |
17 | We are working toward ID stability for the follow feature types:
18 |
19 | | `theme` | `type` | Stable GERS ID |
20 | |-------|------|-----------|
21 | | `addresses` | `address` | No |
22 | | `base` | `bathymetry` | No |
23 | | `base` | `infrastructure` | No |
24 | | `base` | `land` | No |
25 | | `base` | `land_cover` | No |
26 | | `base` | `land_use` | No |
27 | | `base` | `water` | No |
28 | | `buildings` | `building_part` | No |
29 | | `divisions` | `division_area` | No |
30 | | `divisions` | `division_boundary` | No |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/docs/getting-data/assets/BigQuery-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/BigQuery-1.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/aws-glue-data-catalog-values.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/aws-glue-data-catalog-values.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-10.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-11.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-2.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-3.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-4.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-5.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-6.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-7.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-8.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/bigquery-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/bigquery-9.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-1.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-2.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-3.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-4.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-5.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-6.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-7.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-8.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/databricks-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/databricks-9.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/overture-release-tables.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/overture-release-tables.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/review-and-create.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/review-and-create.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-1.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-2.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-3.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-4.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-5.png
--------------------------------------------------------------------------------
/docs/getting-data/assets/snowflake-marketplace-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OvertureMaps/docs/2cdf6b3d61ea82f66cb0b85cd089270e3dd9e7ec/docs/getting-data/assets/snowflake-marketplace-6.png
--------------------------------------------------------------------------------
/docs/getting-data/data-mirrors/bigquery.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: BigQuery
3 | ---
4 |
5 | Overture data is accessible in Google BigQuery as part of the [Google Cloud Public Dataset Program](https://cloud.google.com/bigquery/public-data), with the data being listed and maintained by [CARTO](https://www.carto.com).
6 |
7 | 
8 |
9 | Below is a step-by-step guide on how to access and use Overture data in BigQuery:
10 |
11 | ## Before you begin
12 |
13 | To get started using Overture data in BigQuery, you must create or select a Google Cloud project with billing [enabled](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled#confirm_billing_is_enabled_on_a_project). BigQuery is automatically enabled in new projects, but in order to activate it in a preexisting project, you should enable the [BigQuery API](https://console.cloud.google.com/apis/enableflow?apiid=bigquery&inv=1&invt=Abns8w).
14 |
15 | ## Getting Overture data in Google BigQuery
16 |
17 | 1. Log in to your [Google Cloud Console](https://console.cloud.google.com/).
18 | 2. Navigate to the **BigQuery** section by selecting `BigQuery` from the side menu or searching for it in the search bar.
19 |
20 | 
21 |
22 | 3. In the BigQuery console, click **Add Data**. Then, click on **Public Datasets**.
23 |
24 | 
25 |
26 | 4. The Google Cloud data marketplace will open. In the search box look for **Overture Maps**.
27 |
28 | 
29 |
30 | 5. Select the **Overture Maps Data** listing. Then, click on **View dataset**.
31 |
32 | 
33 |
34 | 6. Back again in the BigQuery console you will see the `bigquery-public-data` project and the `overture_maps`dataset selected.
35 |
36 | 
37 |
38 | 7. Our recommendation is that you add the `overture_maps` dataset or entirely the `bigquery-public-data` project in your starred selection in order to have access to the Overture data always at hand.
39 |
40 | 
41 |
42 | ## Working with Overture data in BigQuery
43 |
44 | 1. Now that Overture Maps data is available in your BigQuery console, you can start using it. Note that in the `overture_maps` dataset you have access to all tables from all the different Overture Maps themes: Addresses, Base, Buildings, Divisions, Places and Transportation.
45 |
46 | 
47 |
48 | 2. The release version is detailed as a `label` in each of the tables. You can check it out in the **Details** section of each table.
49 |
50 | 
51 |
52 | 3. You can now query any of the tables directly from your SQL Editor in BigQuery. Here's one example for the Places data in Overture Maps.
53 |
54 | 
55 |
56 | ```sql
57 | -- Identify places within the "Restaurant" category
58 | SELECT id, phones.list[0].element AS phone, names.primary AS name
59 | FROM `bigquery-public-data.overture_maps.place`
60 | WHERE categories.primary = "restaurant"
61 | LIMIT 100;
62 | ```
63 |
64 | ## Additional notes
65 |
66 | - **Updates**: CARTO regularly updates the Overture datasets in BigQuery and keeps the dataset synced with the last release. You can check the release version of the data as a metadata label in each table.
67 | - **Support**: If you encounter issues accessing the data, contact CARTO support via [support@carto.com](mailto:support@carto.com).
68 |
--------------------------------------------------------------------------------
/docs/getting-data/data-mirrors/databricks.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Databricks
3 | ---
4 |
5 | Overture data is accessible through the [Databricks Marketplace](https://marketplace.databricks.com/?searchKey=CARTO&sortBy=date) via public listings published and maintained by [CARTO](https://www.carto.com). Below is a step-by-step guide on how to access and use the data:
6 |
7 | ## Before you begin
8 |
9 | Before accessing the Overture Maps data in Databricks, ensure you have:
10 |
11 | - **Databricks Account**: An active Databricks account with access to the Databricks Marketplace.
12 | - **Workspace Access**: A Databricks workspace where you can import and analyze the data.
13 | - **Marketplace Permissions**: The appropriate permissions to browse and subscribe to datasets in the Databricks Marketplace.
14 |
15 | ## Getting Overture data from Databricks Marketplace
16 |
17 | 1. Log in to your Databricks workspace.
18 | 2. From the Databricks workspace home page, navigate to the **Databricks Marketplace** by selecting the **Marketplace** tab from the sidebar.
19 |
20 | 
21 |
22 | 3. Use the search bar in the Databricks Marketplace to search for `CARTO` or `Overture Maps`.
23 |
24 | 
25 |
26 | 4. The listings have been organized by Overture theme; therefore, you will find the following listings available: Addresses, Base, Buildings, Divisions, Places and Transportation. Select one to access the listing details.
27 |
28 | 
29 |
30 | 5. Review the dataset description, terms of use, and any documentation provided by CARTO.
31 | 6. Click **Get instant access** to request access to the dataset.
32 |
33 | 
34 |
35 | 7. Before you get access you can specify where are you planning to use the data and also provide a custom name to the Databricks Catalog in which the data will be made available. After accepting the terms, click on **Get instant access**.
36 |
37 | 
38 |
39 | 8. Now, in the same listing page you have the option to click on **Open**.
40 |
41 | 
42 |
43 | 9. After clicking on **Open** you will be taken to your Catalogs with the newly created Catalog `carto_overtue_maps_places`open.
44 |
45 | 
46 |
47 | ## Working with Overture data in Databricks
48 |
49 | 1. Once you have the Overture Maps data that you need in your Catalogs you can start working with it. Following our example, in the Place table you can click on **Create** and then **Query**.
50 |
51 | 
52 |
53 | 2. That will open the SQL Editor ready to query the `place` table.
54 |
55 | 
56 |
57 | ## Additional notes
58 |
59 | - **Updates**: CARTO regularly updates the Overture datasets in Databricks and keeps the listings synced with the last release. You can check the release version of the data from the share description in each listing.
60 | - **Support**: If you encounter issues accessing the data, contact CARTO support via [support@carto.com](mailto:support@carto.com).
61 | - **Databricks**: For more information on Databricks Marketplace, refer to the official [Databricks documentation](https://docs.databricks.com/en/marketplace/index.html).
62 |
--------------------------------------------------------------------------------
/docs/getting-data/data-mirrors/fused.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Fused
3 | ---
4 |
5 | import Tabs from '@theme/Tabs';
6 | import TabItem from '@theme/TabItem';
7 | import QueryBuilder from '@site/src/components/queryBuilder';
8 |
9 |
10 | [Fused](https://www.fused.io/) is a cloud analytics platform to process data with [User Defined Functions](https://docs.fused.io/core-concepts/write/) (UDFs). UDFs are reusable Python functions that can be invoked from anywhere. The Fused Overture UDF enables you to quickly load Overture data, perform operations like joins with other datasets, visualize results directly on your browser, and integrate smoothly with data tools.
11 |
12 | ## Load data with the Overture UDF
13 |
14 | The Fused Overture UDF loads data from GeoParquet files of the Overture Dataset hosted by [Source Cooperative](https://beta.source.coop/repositories/fused/overture/description/). You can view the source code of the Fused Overture UDF in this [GitHub repo](https://github.com/fusedio/udfs/blob/main/public/Overture_Maps_Example/Overture_Maps_Example.py).
15 |
16 |
17 | ### Install Fused
18 |
19 | We install the [Fused Python library](https://pypi.org/project/fused/) with pip.
20 |
21 | ```python
22 | pip install 'fused[all]'
23 | ```
24 |
25 | ### Define the area of interest
26 |
27 | We specify the area for the UDF to download data by passing a `GeoDataFrame` to the `bbox` parameter.
28 |
29 | ```python
30 | import fused
31 |
32 | bounds = [4.895,52.368,4.914,52.377]
33 | ```
34 |
35 | ### Run the Overture UDF
36 | We may run the Fused Overture UDF with `fused.run` (see more about `fused.run` on the [Fused docs](https://docs.fused.io/core-concepts/run-udfs/)). We specify the area to load data with the `bbox` parameter. The UDF also provides optional parameters to select specific Overture releases, datasets, and columns - giving you flexibility to fetch only the data you need.
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
50 |
51 |
52 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 | ## Next steps
63 | - Visualize Overture datasets interactively in the [Fused UDF Editor](https://www.fused.io/workbench/catalog/Overture_Maps_Example-64071fb8-2c96-4015-adb9-596c3bac6787)
64 | - See an [example](/examples/fused/) of how to join Overture with other datasets
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/docs/getting-data/data-mirrors/snowflake.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Snowflake
3 | ---
4 |
5 | Overture data is accessible through the [Snowflake Data Marketplace](https://app.snowflake.com/marketplace/providers/GZT0ZKUCHE3/CARTO) via public listings published and maintained by [CARTO](https://www.carto.com). Below is a step-by-step guide on how to access and use the data:
6 |
7 | ## Getting Overture data from Snowflake Marketplace
8 |
9 | 1. Log in to your Snowflake account. Note that you must have an active Snowflake account with the necessary permissions to access the Data Marketplace.
10 | 2. In the Snowflake interface, navigate to the **Marketplace** tab in the sidebar menu within section **Data Products**.
11 |
12 | 
13 |
14 | 3. Use the search bar at the top of the Data Marketplace and enter `CARTO`.
15 | 4. The listings have been organized by Overture theme; therefore, you will find the following listings available: Addresses, Base, Buildings, Divisions, Places and Transportation. Select one to access the listing details.
16 |
17 | 
18 |
19 | 5. Review the data description, example queries, terms of use, etc.
20 | 6. Click on **Get**.
21 |
22 | 
23 |
24 | 7. After clicking on **Get**, you are allowed to specify the name of the database in which to include the data and the user roles that will be able to work with it.
25 |
26 | 
27 |
28 | ## Working with Overture data in Snowflake
29 |
30 | 1. After access is granted, navigate to the **Databases** section in Snowflake (under **Data**).
31 | 2. Locate the Overture dataset in the database that you have just created.
32 |
33 | 
34 |
35 | 3. Once the database is created, you can then navigate to your worksheet in Snowflake and start working with the data.
36 | 4. Use SQL to query the Overture data. Below is an example query to retrieve some attributes from the Places data in Overture.
37 |
38 | ```sql
39 | -- Identify places within the "Restaurant" category
40 | SELECT id, phones['list'][0]['element'] AS phone, names['primary'] AS name
41 | FROM CARTO.PLACE
42 | WHERE categories['primary'] = 'restaurant'
43 | LIMIT 100;
44 | ```
45 |
46 | 
47 |
48 | ## Additional notes
49 |
50 | - **Updates**: CARTO regularly updates the Overture datasets in Snowflake and keeps the listings synced with the last release. You can check the release version of the data from the share description in each listing.
51 | - **Support**: If you encounter issues accessing the data, contact CARTO support via [support@carto.com](mailto:support@carto.com).
52 | - **Snowflake**: For more information on Snowflake Data Marketplace, refer to the official [Snowflake documentation](https://docs.snowflake.com/en/user-guide/data-marketplace.html).
53 |
--------------------------------------------------------------------------------
/docs/getting-data/data-mirrors/wherobots.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Wherobots
3 | ---
4 |
5 | Wherobots is a cloud-native environment for geospatial data processing, powered by Apache Sedona. Their hosted notebook environments and data pipeline APIs allow you to work with massive geospatial datasets at scale. As an Overture Maps Foundation member, Wherobots maintains a mirror of all Overture Maps datasets in its cloud environment. Here's how you can access that data.
6 |
7 | :::info
8 | **Before you start** ensure that you have a free Wherobots Community Edition Organization or a paid Professional or Enterprise Edition Organization. For more information, see [Create a Wherobots Account](https://docs.wherobots.com/latest/get-started/create-account/#create-or-join-an-organization).
9 | :::
10 |
11 | ## Navigate to the Wherobots spatial data catalog
12 |
13 | 1. Log in to [Wherobots Cloud](https://cloud.wherobots.com/).
14 |
15 | 2. Go to the [spatial catalog](https://cloud.wherobots.com/spatial-catalog).
16 |
17 | ## Locate the Overture Maps database
18 |
19 | 1. In the sidebar, expand either the `wherobots_open_data` catalog or `wherobots_pro_data`.
20 |
21 | If you have a Wherobots Professional or Enterprise Edition Organization, you also have access to `wherobots_pro_data`, which includes datasets for enriching your analysis, such as US Census demographics and local weather events.
22 |
23 | 2. Within `wherobots_open_data`, expand the `overture_maps_foundation` database.
24 |
25 | Here, you'll find Overture Maps tables, named according to Overture Maps theme and type: `{theme}_{type}`. For example, `buildings_building` is a table of the `building` type in the `buildings` theme and `transportation_segment` is a table of the `segment` type in the `transportation` theme.
26 |
27 |
28 | 3. Select a table to view its detailed schema and confirm it contains the data you need.
29 |
30 | Each table contains the following:
31 | - catalog name
32 | - catalog storage path
33 | - database
34 | - table name
35 | - table schema
36 |
37 |
38 | ## Next steps
39 | - See the [Wherobots example](/examples/wherobots/) in this documentation to learn more about working with Overture Maps data on the Wherobots platform
40 | - For more on using the Wherobots platform, see the official [Wherobots Documentation](https://docs.wherobots.com/).
41 |
42 |
--------------------------------------------------------------------------------
/docs/getting-data/overturemaps-py.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Python CLI
3 | ---
4 |
5 | Overture's [Python command-line tool](https://github.com/OvertureMaps/overturemaps-py) helps you download data within a region of interest and converts it to several common geospatial file formats. [This example](/blog/2024/05/16/land-cover/) shows how to use the tool to download Overture's land cover data in a Jupyter notebook.
6 |
7 | :::note
8 | This project is experimental and likely to change. See the [overturemaps-py repository](https://github.com/OvertureMaps/overturemaps-py) for timely updates.
9 | :::
10 |
11 | ## Installation
12 | `pip install overturemaps`
13 |
14 | ## Quick Start
15 | Download the building footprints for the specific bounding box as GeoJSON and save to a file named "boston.geojson"
16 |
17 | ```
18 | $ overturemaps download --bbox=-71.068,42.353,-71.058,42.363 -f geojson --type=building -o boston.geojson
19 | ```
20 |
21 | ## Usage
22 | **download**
23 |
24 | Right now there is only one option to the overturemaps utility: download. It will download Overture Maps data with an optional bounding box into the specified file format. When specifying a bounding box, only the minimum data is transferred. The result is streamed out and can handle arbitrarily large bounding boxes.
25 |
26 | Command-line options:
27 |
28 | - `--bbox` (optional): west, south, east, north longitude and latitude coordinates. When omitted the entire dataset for the specified type will be downloaded
29 | - `-f` (required: one of "geojson", "geojsonseq", "geoparquet"): output format
30 | - `--output/-o` (optional): Location of output file. When omitted output will be written to stdout.
31 | - `--type/-t` (required): The Overture map data type to be downloaded. Examples of types are building for building footprints, place for POI places data, etc. Run overturemaps download --help for the complete list of allowed types
32 |
33 | This downloads data directly from Overture's S3 bucket without interacting with any other servers. By including bounding box extents on each row in the Overture distribution, the underlying Parquet readers use the Parquet summary statistics to download the minimum amount of data necessary to extract data from the desired region.
34 |
35 | To help find bounding boxes of interest, we like this [bounding box](https://boundingbox.klokantech.com/) tool from [Klokantech](https://www.klokantech.com/). Choose the CSV format and copy the value directly into the `--bbox` field.
36 |
37 | ## Next steps
38 |
39 | - Contribute to [overturemaps-py](//github.com/overturemaps/overturemaps-py).
40 | - Visualize the data in [QGIS](/examples/QGIS) or [kepler.gl](/examples/kepler-gl).
41 | - [Make an interactive map](/examples/build-a-map).
42 | - Check out our Made by the Overture [Community page](/community).
43 | - Dig into the [Overture schema](//docs.overturemaps.org/schema/).
44 | - [Talk to us on GitHub](https://github.com/orgs/OvertureMaps/discussions)!
45 |
--------------------------------------------------------------------------------
/docs/getting-data/sedona.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Sedona / Spark
3 | ---
4 |
5 | import Tabs from '@theme/Tabs';
6 | import TabItem from '@theme/TabItem';
7 | import QueryBuilder from '@site/src/components/queryBuilder';
8 |
9 | As a series of GeoParquet files, Overture data is already optimized for distributed computing environments. The following example shows you how to work with Overture data in [Sedona](https://sedona.apache.org/), a cluster computing system for spatial data.
10 |
11 | For this example, you can spin up a single-node Sedona Docker image from [Apache Software Foundation DockerHub](https://hub.docker.com/r/apache/sedona). In production, Sedona can be deployed to nearly any cloud environment (Databricks, AWS EMR, etc.), or check out [Wherobots](https://www.wherobots.com) to learn more about hosted Sedona environments.
12 |
13 |
14 | ## Example
15 | To get started with the single-node docker image, ensure your [docker](https://www.docker.com/) client is started, and then run:
16 |
17 | ```bash
18 | docker pull apache/sedona
19 | docker run -p 8888:8888 apache/sedona:latest
20 | ```
21 |
22 | A Jupyter Lab and notebook examples is now available in your browser at [http://localhost:8888](http://localhost:8888/).
23 |
24 | Create a new Python notebook with the following first cell:
25 |
26 | ```python
27 | from sedona.spark import *
28 |
29 | config = SedonaContext.builder().config(
30 | "fs.s3a.aws.credentials.provider",
31 | "org.apache.hadoop.fs.s3a.AnonymousAWSCredentialsProvider"
32 | ).getOrCreate()
33 | sedona = SedonaContext.create(config)
34 | ```
35 |
36 | After initializing your PySpark/Sedona environment, you can load theme data directly from S3. The following examples leverage Sedona's understanding of GeoParquet, so we can take full advantage of spatial queries:
37 |
38 |
39 |
40 |
41 |
43 |
44 |
45 | For example, to find all of the places in Seattle, you can apply a spatial filter with the bounding box for Seattle:
46 |
47 | ```python
48 | places.filter("""ST_Contains(
49 | ST_GeomFromWKT('POLYGON((-122.459681 47.734124, -122.224433 47.734124, -122.224433 47.481002, -122.459681 47.481002, -122.459681 47.734124))'),
50 | geometry)""").limit(100).show()
51 | ```
52 |
53 | Or, find all of the places within 1km of the Space Needle with the following query:
54 |
55 | ```python
56 | places.filter("""ST_DistanceSpheroid(
57 | ST_GeomFromWKT('POINT(-122.3493 47.6204)'),
58 | geometry) < 1000
59 | """)
60 | ```
61 |
62 |
63 |
64 |
65 |
66 |
67 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
87 |
88 |
89 |
90 |
91 |
92 |
93 | ---
94 |
95 |
96 | :::tip
97 | These are just examples to show you how to interface with Overture data in Sedona. Running locally on a single-node docker image doesn't offer any performance benefits, but when deployed in a distributed cloud environment, you can operate on the entire Overture dataset.
98 | :::
99 |
100 |
101 | For more examples from wherobots, check out their Overture-related [Notebook examples](https://github.com/wherobots/OvertureMaps).
102 |
--------------------------------------------------------------------------------
/docs/getting-data/synapse-azure.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Synapse (Azure)
3 | ---
4 |
5 | import QueryBuilder from '@site/src/components/queryBuilder';
6 | import MicrosoftSynapseExample from '!!raw-loader!@site/src/queries/synapse/seattle_places.sql';
7 |
8 | You will need to create an account to use [Synapse](https://azure.microsoft.com/en-us/products/synapse-analytics/) and other Microsoft Azure services.
9 |
10 | In your Azure account, create a [Synapse workspace](https://learn.microsoft.com/en-us/azure/synapse-analytics/get-started-create-workspace). You can then run this example query to get places in Seattle:
11 |
12 |
13 |
14 | More information is available at ["Query files using a serverless SQL pool"](https://learn.microsoft.com/en-us/training/modules/query-data-lake-using-azure-synapse-serverless-sql-pools/3-query-files) on Microsoft Learn.
15 |
--------------------------------------------------------------------------------
/docs/guides/index.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | title: Data Guides
3 | ---
4 |
5 | import DocCardList from '@theme/DocCardList';
6 |
7 |
8 |
--------------------------------------------------------------------------------
/docs/playground/test-sql-inclusion.mdx:
--------------------------------------------------------------------------------
1 | ---
2 | slug: /osmlogic
3 | title: OpenStreetMap to Overture Base Theme
4 | draft: true
5 | ---
6 |
7 |
8 | import QueryBuilder from '@site/src/components/queryBuilder';
9 |
10 | import OSMtoOvertureInfrastructure from '!!raw-loader!@site/src/queries/partials/osm_conversion_logic/infrastructure.sql';
11 |
12 | Features in the `infrastructure` type within Overture's `base` theme come form OpenStreetMap. The **subtype** and **class** of an Overture feature is determined by the tags that are present in OpenStreetMap.
13 |
14 | Below is the logic that is currently used to convert from OSM tags into Overture schema.
15 |
16 |
17 |
18 | How do I interpret this query?
19 |
20 | Each `WHEN` line in the `CASE` statement is a condition that defines both the **subtype** and the **class** of a feature. For example:
21 | ```sql
22 | WHEN element_at(tags,'highway') = 'bus_stop' THEN ROW('transit', 'bus_stop')
23 | ```
24 |
25 | Here, `element_at(tags, 'highway')` is accessing the value of the `highway` tag in OSM. So, when `highway=bus_stop` is present, then the statement returns `ROW(subtype, class)`, in this case, **subtype**=`transit` and **class**=`bus_stop`.
26 |
27 | Since this particular statement is at the top of the list, it will take priority over other tags on the feature. If the same feature was also tagged as an airport gate, those tags would be ignored.
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/fetch_schema.sh:
--------------------------------------------------------------------------------
1 | # This script checks out the overturemaps/schema repository.
2 | # It will pull from `main` unless SCHEMA_BRANCH is explicitly set to something else
3 |
4 | rm -rf schema/
5 | git clone --branch=${SCHEMA_BRANCH:-main} -n --depth=1 --filter=tree:0 https://github.com/overturemaps/schema
6 | cd schema
7 | git sparse-checkout set --no-cone examples schema docusaurus
8 | git checkout
9 | echo "Successfully checked out schema reference docs:"
10 | du -hs .
11 | cd ..
12 |
13 | echo "Copying Examples"
14 | rm -rf docs/_examples/
15 | mkdir -p docs/_examples && cp -R schema/examples/* docs/_examples/
16 |
17 | echo "Copying Schema YAML"
18 | rm -rf docs/_schema
19 | mkdir -p docs/_schema && cp -R schema/schema/* docs/_schema/
20 |
21 | echo "Copying Schema Pages"
22 | rm -rf docs/schema
23 | mkdir -p docs/schema/ && cp -R schema/docs/schema/* docs/schema/
24 |
25 | echo "Removing schema repo"
26 | rm -rf schema/
27 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "overture-documentation",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "docusaurus": "docusaurus",
7 | "start": "./fetch_schema.sh && npm run docusaurus start",
8 | "start-dev": "EXPORT SCHEMA_BRANCH=dev && ./fetch_schema.sh && npm run docusaurus start",
9 | "start-staging": "EXPORT SCHEMA_BRANCH=staging && ./fetch_schema.sh && npm run docusaurus start",
10 | "build": "./fetch_schema.sh && npm run docusaurus build",
11 | "swizzle": "docusaurus swizzle",
12 | "deploy": "docusaurus deploy",
13 | "clear": "docusaurus clear",
14 | "serve": "docusaurus serve",
15 | "write-translations": "docusaurus write-translations",
16 | "write-heading-ids": "docusaurus write-heading-ids"
17 | },
18 | "dependencies": {
19 | "@docusaurus/core": "^3.8.1",
20 | "@docusaurus/preset-classic": "^3.8.1",
21 | "@mdx-js/react": "^3.0.0",
22 | "clsx": "^1.2.1",
23 | "docusaurus": "^1.14.7",
24 | "docusaurus-json-schema-plugin": "^1.12.0",
25 | "js-yaml": "^4.1.0",
26 | "maplibre-gl": "^5.6.1",
27 | "pmtiles": "^4.3.0",
28 | "prism-react-renderer": "^2.1.0",
29 | "raw-loader": "^4.0.2",
30 | "react": "^18.2.0",
31 | "react-dom": "^18.2.0"
32 | },
33 | "devDependencies": {
34 | "@docusaurus/module-type-aliases": "^3.8.1",
35 | "@docusaurus/types": "^3.8.1",
36 | "yaml-loader": "^0.8.0"
37 | },
38 | "browserslist": {
39 | "production": [
40 | ">0.5%",
41 | "not dead",
42 | "not op_mini all"
43 | ],
44 | "development": [
45 | "last 1 chrome version",
46 | "last 1 firefox version",
47 | "last 1 safari version"
48 | ]
49 | },
50 | "engines": {
51 | "node": ">=18.0"
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/sidebars.js:
--------------------------------------------------------------------------------
1 | /** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
2 | const sidebars = {
3 | docs: [
4 | 'introduction',
5 | {
6 | type: 'category',
7 | label: 'Getting Started',
8 | collapsed: true,
9 | items: [
10 | 'getting-data/index',
11 | 'getting-data/duckdb',
12 | 'getting-data/overturemaps-py',
13 | 'getting-data/athena-aws',
14 | 'getting-data/synapse-azure',
15 | {
16 | type: 'category',
17 | label: 'Data Mirrors',
18 | collapsed: true,
19 | items: [
20 | 'getting-data/data-mirrors/bigquery',
21 | 'getting-data/data-mirrors/databricks',
22 | 'getting-data/data-mirrors/fused',
23 | 'getting-data/data-mirrors/snowflake',
24 | 'getting-data/data-mirrors/wherobots'
25 | ],
26 | },
27 | ],
28 | },
29 | {
30 | type: 'category',
31 | label: 'Examples',
32 | link: {
33 | type: 'doc',
34 | id: 'examples/index'
35 | },
36 | collapsed: true,
37 | items: [
38 | 'examples/CARTO',
39 | 'examples/fused',
40 | 'examples/kepler-gl',
41 | 'examples/lonboard',
42 | 'examples/build-a-map',
43 | 'examples/pandas',
44 | 'examples/overture-tiles',
45 | 'examples/QGIS',
46 | 'examples/rapid',
47 | 'examples/spark',
48 | 'examples/wherobots',
49 | ]
50 | },
51 | {
52 | type: 'category',
53 | label: 'Data Guides',
54 | link: {
55 | type: 'doc',
56 | id: 'guides/index'
57 | },
58 | collapsed: true,
59 | items: [
60 | 'guides/addresses',
61 | 'guides/base',
62 | 'guides/buildings',
63 | 'guides/divisions',
64 | 'guides/places',
65 | 'guides/transportation',
66 | ],
67 | },
68 | {
69 | type: 'category',
70 | label: 'Global Entity Reference System',
71 | collapsed: true,
72 | items: [
73 | 'gers/index',
74 | 'gers/stability',
75 | 'gers/bridge-files',
76 | 'gers/changelog',
77 | 'gers/registry',
78 | 'gers/gers-tutorial',
79 | 'gers/gers-demonstrations',
80 |
81 | ]
82 | },
83 | 'attribution',
84 | 'release-calendar'
85 | ],
86 | schema:[
87 | {
88 | type: 'autogenerated',
89 | dirName: 'schema', // generate sidebar slice from the docs folder (or versioned_docs/)
90 | }
91 | ]
92 | };
93 |
94 | module.exports = sidebars;
95 |
--------------------------------------------------------------------------------
/src/components/queryBuilder.js:
--------------------------------------------------------------------------------
1 | import CodeBlock from '@theme/CodeBlock';
2 | import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
3 |
4 | export default function QueryBuilder(args){
5 |
6 | const {
7 | siteConfig: {customFields},
8 | } = useDocusaurusContext();
9 |
10 | var rendered_query = args.query.replaceAll('__OVERTURE_RELEASE', customFields.overtureRelease)
11 |
12 | rendered_query = rendered_query.replaceAll('__ATHENA_OVERTURE_RELEASE', 'v' + customFields.overtureRelease.replaceAll('.','_').replaceAll('-','_'))
13 |
14 | rendered_query = rendered_query.replaceAll('__PMTILES_OVERTURE_RELEASE', customFields.overtureRelease.split('.', 1))
15 |
16 | var lang = args.language || 'sql'
17 |
18 | return (
19 |
20 | {rendered_query}
21 |
22 | );
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/shared-libs/generatePath.tsx:
--------------------------------------------------------------------------------
1 | // Example of basePath = '/schemas/examples/refs'
2 | export default function generatePath(path: string, basePath: string = "") {
3 | const parts = path.toString().split("/")
4 | let finalPath = basePath
5 |
6 | for (let i = 0; i < parts.length; i++) {
7 | if (parts[i] === "..") {
8 | // Move up one directory in the base path
9 | finalPath = finalPath.split("/").slice(0, -1).join("/")
10 | } else if (parts[i] === ".") {
11 | // Ignore current directory notation
12 | continue
13 | } else {
14 | // Append the current directory to the base path
15 | finalPath = `${finalPath}/${parts[i]}`
16 | }
17 | }
18 |
19 | return finalPath
20 | }
21 |
--------------------------------------------------------------------------------
/src/components/shared-libs/generateResolverOptions.tsx:
--------------------------------------------------------------------------------
1 | import RemoteResolver from "@site/src/components/shared-libs/remoteResolver"
2 | import YAMLFileResolver from "@site/src/components/shared-libs/yamlFileResolver"
3 |
4 | type Params = {
5 | basePath?: string
6 | jsonPointer?: string
7 | remote?: boolean
8 | yamlBasePath?: string
9 | }
10 |
11 | export default function generateResolverOptions(params: Params) {
12 | const { basePath, jsonPointer, remote, yamlBasePath} = params
13 |
14 | let config = {}
15 |
16 | if (yamlBasePath || yamlBasePath == "") {
17 | config["resolvers"] = {
18 | file: YAMLFileResolver(yamlBasePath),
19 | }
20 | }
21 |
22 | if (remote) {
23 | if (config["resolvers"] === undefined) {
24 | config["resolvers"] = {}
25 | }
26 | config["resolvers"]["http"] = RemoteResolver("http")
27 | config["resolvers"]["https"] = RemoteResolver("https")
28 | }
29 |
30 | if (jsonPointer) {
31 | config["jsonPointer"] = jsonPointer
32 | }
33 |
34 | return config
35 | }
36 |
--------------------------------------------------------------------------------
/src/components/shared-libs/remoteResolver.tsx:
--------------------------------------------------------------------------------
1 | type Param = "http" | "https"
2 |
3 | export default function LocalFileResolver(_type: Param = "http") {
4 | return {
5 | resolve: (ref: string) => {
6 | return new Promise((resolve, reject) => {
7 | fetch(ref.toString(), {
8 | headers: {
9 | Accept: "application/json",
10 | },
11 | })
12 | .then((response) => response.json())
13 | .then((result) => resolve(result))
14 | .catch((err) => reject(err))
15 | })
16 | },
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/components/shared-libs/stringifyObject.tsx:
--------------------------------------------------------------------------------
1 | export default function stringifyObject(obj: unknown, indent = 2): string {
2 | const keys = Object.keys(obj)
3 | const pairs = keys.map((key) => {
4 | const value = obj[key]
5 | if (typeof value === "function") {
6 | const match = value.toString().match(/function\s+([\w$]+)\s*\(([^)]*)\)/)
7 | const name = match ? match[1] : "anonymous"
8 | const params = match
9 | ? match[2]
10 | .split(",")
11 | .map((p) => p.trim())
12 | .join(", ")
13 | : ""
14 | return `${" ".repeat(
15 | indent,
16 | )}${key}: function ${name}(${params}) { /* function body */ },`
17 | } else if (
18 | typeof value === "object" &&
19 | !Array.isArray(value) &&
20 | value !== null
21 | ) {
22 | return `${" ".repeat(indent)}${key}: ${stringifyObject(
23 | value,
24 | indent + 2,
25 | )},`
26 | } else {
27 | return `${" ".repeat(indent)}${key}: ${JSON.stringify(value)},`
28 | }
29 | })
30 | return `{\n${pairs.join("\n")}\n${" ".repeat(indent - 2)}}`
31 | }
32 |
--------------------------------------------------------------------------------
/src/components/shared-libs/yamlFileResolver.tsx:
--------------------------------------------------------------------------------
1 | import generatePath from "@site/src/components/shared-libs/generatePath";
2 | import yaml from "js-yaml";
3 |
4 | const schemaYamlFiles = require.context('@site/docs/_schema', true, /\.(yaml|yml)$/);
5 | var preloadedYamlSchema = {}
6 |
7 | schemaYamlFiles.keys().forEach(function(path){
8 | preloadedYamlSchema[path.replace('./', '/')] = yaml.load(
9 | require('!!raw-loader!@site/docs/_schema' + path.replace('./', '/')).default
10 | );
11 | })
12 |
13 | export default function YAMLFileResolver(basePath: string = "") {
14 | return {
15 | resolve: (ref: string) => {
16 | return new Promise((resolve, reject) => {
17 |
18 | Promise.resolve().then(function(){
19 |
20 | var relativeYamlPath = generatePath(ref, basePath)
21 |
22 | if (preloadedYamlSchema.hasOwnProperty(relativeYamlPath)){
23 | return preloadedYamlSchema[relativeYamlPath];
24 | }else{
25 | return {}
26 | }
27 | }).then(function(result){ return resolve(result)}
28 | ).catch(function(err){ return reject(err); });
29 | });
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/components/yamlLoad.js:
--------------------------------------------------------------------------------
1 | Object.defineProperty(exports, "__esModule", { value: true });
2 |
3 | yaml = require('js-yaml')
4 |
5 | function yamlLoad(string){
6 | return yaml.load(string)
7 | }
8 |
9 | exports.default = yamlLoad;
10 |
--------------------------------------------------------------------------------
/src/css/map.css:
--------------------------------------------------------------------------------
1 | .map-wrap {
2 | position: relative;
3 | width: 100%;
4 | height: calc(50vh); /* calculate height of the screen minus the heading */
5 | }
6 |
7 | .map {
8 | position: absolute;
9 | width: 100%;
10 | height: 100%;
11 | }
12 |
13 | button.layer{
14 | margin: 5px 0;
15 | padding: 8px 12px;
16 | background-color: #4a8ad8;
17 | color: rgb(232, 222, 222);
18 | cursor: pointer;
19 | border: none;
20 | border-radius: 4px;
21 | font-family: Montserrat,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
22 | font-weight: 600;
23 | font-size: larger;
24 | }
25 |
26 | button.layer.active{
27 | background-color: #59a0f6;
28 | }
29 |
30 | input{
31 | width:50px;
32 | height:4px;
33 | }
34 |
--------------------------------------------------------------------------------
/src/queries/.sqlfluffignore:
--------------------------------------------------------------------------------
1 | /partials/
2 | /synapse/
3 | /snowflake/
4 | /Snowflake/
5 |
--------------------------------------------------------------------------------
/src/queries/Snowflake/snowflake_places.sql:
--------------------------------------------------------------------------------
1 | // Identify places within the "Restaurant" category
2 | /*
3 | Retrieves the geographic IDs (geoid), phone numbers (phones), and primary names (names) of places categorized as "restaurant" from the specified table. Limited to 100 results.
4 | */
5 | SELECT id, phones['list'][0]['element'] AS phone, names['primary'] AS name
6 | FROM CARTO.PLACE
7 | WHERE categories['primary'] = 'restaurant'
8 | LIMIT 100;
9 |
--------------------------------------------------------------------------------
/src/queries/athena/.sqlfluff:
--------------------------------------------------------------------------------
1 | [sqlfluff]
2 |
3 | verbose = 0
4 | dialect = athena
5 |
6 | exclude_rules = ambiguous.column_count, structure.column_order, references.consistent, layout.spacing, layout.indent, capitalisation.identifiers, references.from, references.keywords, references.qualification, layout.cte_newline, layout.select_targets, aliasing.unused
7 |
--------------------------------------------------------------------------------
/src/queries/athena/0_select_from_release.sql:
--------------------------------------------------------------------------------
1 | SELECT *
2 | FROM overture.release.__ATHENA_OVERTURE_RELEASE
3 | LIMIT 10
4 |
--------------------------------------------------------------------------------
/src/queries/athena/changelog_buildings_join.sql:
--------------------------------------------------------------------------------
1 | SELECT
2 | release.id,
3 | release.names."primary" AS primary_name,
4 | release.sources [ 1 ].dataset AS primary_source,
5 | change_type,
6 | ST_GEOMFROMBINARY(geometry) AS geometry
7 | FROM v2024_08_20_0 AS release
8 | INNER JOIN changelog_v2024_07_22_0 AS changelog ON release.id = changelog.id
9 | WHERE release.theme = 'buildings'
10 | AND release.bbox.xmin > 37.165914
11 | AND release.bbox.xmax < 37.902271
12 | AND release.bbox.ymin > 10.221917
13 | AND release.bbox.ymax < 10.751245;
14 |
--------------------------------------------------------------------------------
/src/queries/athena/hyderabad_buildings.sql:
--------------------------------------------------------------------------------
1 | SELECT
2 | id,
3 | theme,
4 | class,
5 | sources[1].dataset AS primary_source,
6 | names."primary" AS primary_name,
7 | ST_GEOMFROMBINARY(geometry) AS geometry
8 | FROM overture.release.__ATHENA_OVERTURE_RELEASE
9 | WHERE theme='buildings'
10 | AND type='building'
11 | AND bbox.xmin > 78.383144
12 | AND bbox.xmax < 78.565011
13 | AND bbox.ymin > 17.30199
14 | AND bbox.ymax < 17.423426
15 |
--------------------------------------------------------------------------------
/src/queries/athena/seattle_places.sql:
--------------------------------------------------------------------------------
1 | SELECT
2 | id,
3 | names,
4 | addresses,
5 | categories,
6 | confidence,
7 | sources,
8 | ST_GEOMFROMBINARY(geometry) AS geometry
9 | FROM
10 | overture.release.__ATHENA_OVERTURE_RELEASE
11 | WHERE type='place'
12 | AND bbox.xmin BETWEEN -122.44 AND -122.25
13 | AND bbox.ymin BETWEEN 47.56 AND 47.71
14 |
--------------------------------------------------------------------------------
/src/queries/athena/transportation_connecting_segments.sql:
--------------------------------------------------------------------------------
1 | WITH input AS (
2 | SELECT id AS input_id,
3 | connector_id
4 | FROM __ATHENA_OVERTURE_RELEASE
5 | CROSS JOIN UNNEST(connectors) AS t(connector)
6 | WHERE type = 'segment'
7 | AND id = '08628d5437ffffff0473ffc36df547db'
8 | )
9 | SELECT
10 | *,
11 | ST_GEOMFROMBINARY(geometry) AS geometry
12 | FROM __ATHENA_OVERTURE_RELEASE,
13 | input
14 | WHERE type = 'segment'
15 | AND id != input_id
16 | AND ANY_MATCH(
17 | connectors,
18 | connector->connector.connector_id = input.connector_id
19 | )
20 |
--------------------------------------------------------------------------------
/src/queries/athena/transportation_speed_limits.sql:
--------------------------------------------------------------------------------
1 | SELECT
2 | id,
3 | speed_limits,
4 | ST_GEOMFROMBINARY(geometry) AS geometry
5 | FROM __ATHENA_OVERTURE_RELEASE
6 | WHERE type = 'segment'
7 | AND ANY_MATCH(
8 | speed_limits,
9 | speed_limit->speed_limit.max_speed.value = 27
10 | AND speed_limit.max_speed.unit = 'mph'
11 | )
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/.sqlfluff:
--------------------------------------------------------------------------------
1 | [sqlfluff]
2 |
3 | verbose = 0
4 | dialect = duckdb
5 |
6 | exclude_rules = ambiguous.column_count, references.from, layout.long_lines, references.special_chars
7 |
--------------------------------------------------------------------------------
/src/queries/duckdb/addresses_calgary.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; --noqa
2 | LOAD httpfs; --noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | *
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=addresses/type=*/*', filename=true, hive_partitioning=1)
10 | WHERE
11 | bbox.xmin > -114.305
12 | AND bbox.xmax < -113.784
13 | AND bbox.ymin > 50.854
14 | AND bbox.ymax < 51.219;
15 |
--------------------------------------------------------------------------------
/src/queries/duckdb/addresses_counts.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; --noqa
2 | LOAD httpfs; --noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*),
8 | country
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=addresses/type=*/*', filename=true, hive_partitioning=1)
11 | GROUP BY country;
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/addresses_nz_export.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; --noqa
2 | LOAD httpfs; --noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | COPY (
7 | SELECT
8 | id,
9 | number,
10 | street,
11 | unit,
12 | postcode,
13 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
14 | FROM
15 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=addresses/type=*/*', filename=true, hive_partitioning=1)
16 | WHERE
17 | country = 'NZ'
18 | )
19 | TO
20 | 'NZaddresses.shp'
21 | WITH (
22 | FORMAT GDAL,
23 | DRIVER 'ESRI Shapefile',
24 | SRS 'EPSG:4326'
25 | );
26 |
--------------------------------------------------------------------------------
/src/queries/duckdb/addresses_to_parquet.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; --noqa
2 | LOAD httpfs; --noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | COPY (
7 | SELECT
8 | *
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=addresses/*/*')
11 | ) TO 'all_addresses.parquet';
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/addresses_utah.sql:
--------------------------------------------------------------------------------
1 | INSTALL spatial; -- noqa
2 | LOAD spatial; -- noqa
3 |
4 | -- Access the data on AWS in this example
5 | SET s3_region='us-west-2';
6 |
7 | COPY (
8 | -- Create a temp table with the state of Utah
9 | WITH utah AS (
10 | SELECT
11 | id AS utah_id,
12 | geometry AS utah_geom -- DuckDB v.1.1.0 will autoload this as a `geometry` type
13 | FROM
14 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1)
15 | WHERE
16 | id = '085022383fffffff0167572d4665d6f9'
17 | ),
18 |
19 | -- Use the geometry of Utah to filter addresses within the state's boundary
20 | addresses AS (
21 | SELECT
22 | *,
23 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
24 | FROM
25 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=addresses/type=*/*', filename=true, hive_partitioning=1)
26 | INNER JOIN
27 | utah
28 | ON ST_WITHIN(geometry, utah.utah_geom)
29 | WHERE
30 | country = 'US'
31 | )
32 |
33 | -- Export the places selection to a CSV file
34 | SELECT
35 | id,
36 | street,
37 | number,
38 | unit
39 | FROM
40 | addresses
41 | )
42 | TO
43 | 'utah_addresses.csv';
44 |
--------------------------------------------------------------------------------
/src/queries/duckdb/boulder_co_duckdb.sql:
--------------------------------------------------------------------------------
1 | COPY (
2 | SELECT *
3 | FROM read_parquet("s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=*/type=*/*", union_by_name = True)
4 | WHERE
5 | bbox.xmin >= -105.30
6 | AND bbox.ymin >= 39.98
7 | AND bbox.xmax <= -105.24
8 | AND bbox.ymax <= 40.07
9 | ) TO 'boulder_co_overture.parquet';
10 |
--------------------------------------------------------------------------------
/src/queries/duckdb/buildings_detroit.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 |
3 | SET s3_region='us-west-2';
4 |
5 | COPY(
6 | SELECT
7 | id,
8 | names.primary as primary_name,
9 | height,
10 | geometry
11 | FROM
12 | read_parquet('az://overturemapswestus2.blob.core.windows.net/release/__OVERTURE_RELEASE/theme=buildings/type=building/*', filename=true, hive_partitioning=1)
13 | WHERE
14 | names.primary IS NOT NULL
15 | AND bbox.xmin BETWEEN -84.36 AND -82.42
16 | AND bbox.ymin BETWEEN 41.71 AND 43.33
17 | LIMIT 100
18 | ) TO 'detroit_buildings.geojsonseq' WITH (FORMAT GDAL, DRIVER 'GeoJSONSeq');
19 |
--------------------------------------------------------------------------------
/src/queries/duckdb/buildings_in_division_area.sql:
--------------------------------------------------------------------------------
1 | INSTALL spatial; --noqa
2 | LOAD spatial; --noqa
3 |
4 |
5 | -- SET variable division_id =
6 |
7 | -- Or, search for it:
8 | SET variable division_id = (
9 | SELECT
10 | id
11 | FROM
12 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division/*.parquet')
13 | WHERE
14 | names.primary = 'Marion County' AND subtype = 'county'
15 | LIMIT 1
16 | );
17 |
18 | -- Fetch the bounds and geometry of the Region
19 | CREATE OR REPLACE TABLE bounds AS (
20 | SELECT
21 | id AS division_id, names.primary, geometry, bbox
22 | FROM
23 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*.parquet')
24 | WHERE
25 | division_id = getvariable('division_id')
26 | );
27 |
28 | -- Extract the bounds and geometry of the division into variables for faster table scan
29 | SET variable xmin = (select bbox.xmin FROM bounds);
30 | SET variable ymin = (select bbox.ymin FROM bounds);
31 | SET variable xmax = (select bbox.xmax FROM bounds);
32 | SET variable ymax = (select bbox.ymax FROM bounds);
33 | SET variable boundary = (select geometry FROM bounds);
34 |
35 | -- Create a local GeoParquet file.
36 | COPY(
37 | SELECT
38 | *
39 | FROM
40 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=buildings/type=building/*.parquet')
41 | WHERE
42 | bbox.xmin > getvariable('xmin')
43 | AND bbox.xmax < getvariable('xmax')
44 | AND bbox.ymin > getvariable('ymin')
45 | AND bbox.ymax < getvariable('ymax')
46 | AND ST_INTERSECTS(
47 | getvariable('boundary'),
48 | geometry
49 | )
50 | ) TO 'extract.parquet';
51 |
52 | -- Convert GeoParquet to line-delimited GeoJSON (or any other GDAL format)
53 | COPY(
54 | SELECT
55 | id,
56 | subtype,
57 | class,
58 | height,
59 | names.primary as name,
60 | geometry
61 | FROM 'extract.parquet'
62 | ) TO 'extract.geojsonseq' WITH (FORMAT GDAL, DRIVER 'GeoJSONSeq');
63 |
--------------------------------------------------------------------------------
/src/queries/duckdb/changelog_buildings_churn.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | SET s3_region='us-west-2';
4 |
5 | SELECT id, type, change_type
6 | FROM read_parquet('s3://overturemaps-us-west-2/changelog/2024-06-13-beta.0/theme=buildings/type=*/change_type=*/*', filename=true, hive_partitioning=1)
7 | WHERE
8 | bbox.xmin > 37.165914
9 | AND bbox.xmax < 37.902271
10 | AND bbox.ymin > 10.221917
11 | AND bbox.ymax < 10.751245;
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/changelog_buildings_feature_by_change_type.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | SET s3_region='us-west-2';
4 |
5 | SELECT count(*), change_type
6 | FROM read_parquet('s3://overturemaps-us-west-2/changelog/2024-06-13-beta.0/theme=buildings/type=*/change_type=*/*', filename=true, hive_partitioning=1)
7 | WHERE
8 | bbox.xmin > 37.165914
9 | AND bbox.xmax < 37.902271
10 | AND bbox.ymin > 10.221917
11 | AND bbox.ymax < 10.751245
12 | GROUP BY change_type;
13 |
--------------------------------------------------------------------------------
/src/queries/duckdb/confident_mountains.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | SET s3_region='us-west-2';
4 |
5 | COPY(
6 | SELECT
7 | id,
8 | names.primary as primary_name,
9 | geometry, -- DuckDB v.1.1.0 will autoload this as a `geometry` type
10 | categories.primary as primary_category,
11 | sources[1].dataset AS primary_source,
12 | confidence
13 | FROM read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=places/type=*/*', filename=true, hive_partitioning=1)
14 | WHERE categories.primary = 'mountain' AND confidence > .90
15 | ORDER BY confidence DESC
16 | ) TO 'overture_places_mountains_gt90.geojson'
17 | WITH (FORMAT GDAL, DRIVER 'GeoJSON');
18 |
--------------------------------------------------------------------------------
/src/queries/duckdb/county_level_geometries.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 |
3 | SET s3_region='us-west-2';
4 |
5 | COPY(
6 | SELECT
7 | id,
8 | division_id,
9 | names.primary,
10 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
11 | FROM
12 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', hive_partitioning=1)
13 | WHERE
14 | subtype = 'county'
15 | AND country = 'US'
16 | AND region = 'US-PA'
17 | ) TO 'pennsylvania_counties.gpkg' WITH (FORMAT GDAL, DRIVER 'GPKG');
18 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_border_usmx.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | *
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_boundary/*', filename=true, hive_partitioning=1)
10 | WHERE
11 | bbox.xmin > -119.13728323
12 | AND bbox.xmax < -95.63020817
13 | AND bbox.ymin > 24.93478418
14 | AND bbox.ymax < 33.43995480
15 | AND subtype = 'country';
16 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_boundary_counts.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*)
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_boundary/*', filename=true, hive_partitioning=1);
10 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_counts_per_entity.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*),
8 | subtype
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1)
11 | GROUP BY
12 | subtype;
13 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_counts_per_type.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*)
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=*/*', filename=true, hive_partitioning=1);
10 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_denmark_locality_neighborhood.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | COPY (
7 | SELECT
8 | id,
9 | names.primary as name,
10 | subtype,
11 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
12 | FROM
13 | read_parquet('s3://overturemaps-us-west-2/release/2024-07-22.0/theme=divisions/type=division/*', filename=true, hive_partitioning=1)
14 | WHERE
15 | country = 'DK'
16 | AND subtype IN ('locality','neighborhood')
17 | )
18 | TO
19 | 'overture_denmark_locality_neighborhood.shp'
20 | WITH (
21 | FORMAT GDAL,
22 | DRIVER 'ESRI Shapefile',
23 | SRS 'EPSG:4326'
24 | );
25 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_division_area_counts.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*)
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1);
10 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_division_counts.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*)
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division/*', filename=true, hive_partitioning=1);
10 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_lookup_osm.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | *
8 | FROM
9 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1)
10 | WHERE
11 | sources[1].record_id like 'r3766655@%';
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_philly_places.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 |
4 | -- Access the data on AWS in this example
5 | SET s3_region='us-west-2';
6 |
7 | COPY (
8 | -- Create a temp table with the locality of Philadelphia
9 | WITH philly AS (
10 | SELECT
11 | id AS philly_id,
12 | names.primary AS philly_name,
13 | geometry AS philly_geom -- DuckDB v.1.1.0 will autoload this as a `geometry` type
14 | FROM
15 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1)
16 | WHERE
17 | subtype = 'locality'
18 | AND country = 'US'
19 | AND region = 'US-PA'
20 | AND names.primary = 'Philadelphia'
21 | ),
22 |
23 | -- Use the geometry of Philadelphia to filter out places within the locality boundary
24 | places AS (
25 | SELECT
26 | names.primary AS name,
27 | categories.primary AS category,
28 | ROUND(confidence,2) AS confidence,
29 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
30 | FROM
31 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=places/type=*/*', filename=true, hive_partitioning=1)
32 | INNER JOIN
33 | philly
34 | ON ST_WITHIN(geometry, philly.philly_geom)
35 | )
36 |
37 | -- Export the places selection to a Parquet file
38 | SELECT
39 | *
40 | FROM
41 | places
42 | )
43 | TO
44 | 'philly_places.parquet';
45 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_query_specific_feature.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 |
4 | -- Access the data on AWS in this example
5 | SET s3_region='us-west-2';
6 |
7 | SELECT
8 | *
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_boundary/*', filename=true, hive_partitioning=1)
11 | WHERE
12 | id = '085db5bb7fffffff0173c9b945a8c25f';
13 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_subtype_counts_specific_countries.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | SELECT
7 | count(*),
8 | subtype
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/type=division_area/*', filename=true, hive_partitioning=1)
11 | WHERE
12 | country IN ('US','MX','CA')
13 | GROUP BY
14 | subtype;
15 |
--------------------------------------------------------------------------------
/src/queries/duckdb/divisions_to_parquet.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 | -- Access the data on AWS in this example
4 | SET s3_region='us-west-2';
5 |
6 | COPY (
7 | SELECT
8 | *
9 | FROM
10 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=divisions/*/*')
11 | ) TO 'all_divisions.parquet';
12 |
--------------------------------------------------------------------------------
/src/queries/duckdb/hyderabad_buildings.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 |
3 | COPY (
4 | SELECT
5 | id,
6 | level,
7 | height,
8 | names.primary AS primary_name,
9 | sources[1].dataset AS primary_source,
10 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
11 | FROM read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=buildings/type=*/*', hive_partitioning=1)
12 | WHERE
13 | bbox.xmin > 78.4194
14 | AND bbox.xmax < 78.5129
15 | AND bbox.ymin > 17.3427
16 | AND bbox.ymax < 17.4192
17 | ) TO 'buildings_hyderabad.geojson' WITH (FORMAT GDAL, DRIVER 'GeoJSON');
18 |
--------------------------------------------------------------------------------
/src/queries/duckdb/lithuania_places.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 | LOAD httpfs; -- noqa
3 |
4 | -- Access the data on AWS in this example
5 | SET s3_region='us-west-2';
6 |
7 | COPY (
8 | SELECT
9 | -- we can parse addresses into columns to make further filtering of the data simpler
10 | addresses[1].freeform as street,
11 | addresses[1].locality as locality,
12 | addresses[1].postcode as postcode,
13 | addresses[1].region as region,
14 | addresses[1].country as country,
15 | *
16 | FROM read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=places/*/*')
17 | WHERE
18 | addresses[1].country = 'LT'
19 | ) TO 'lithuania_places.parquet';
20 |
--------------------------------------------------------------------------------
/src/queries/duckdb/mountain_peaks.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 |
3 | SET s3_region='us-west-2';
4 |
5 | COPY(
6 | SELECT
7 | id,
8 | names.primary as name,
9 | CAST(elevation * 3.28084 AS INT) AS elevation_ft,
10 | geometry -- DuckDB v.1.1.0 will autoload this as a `geometry` type
11 | FROM
12 | read_parquet('s3://overturemaps-us-west-2/release/__OVERTURE_RELEASE/theme=base/type=land/*', filename=true, hive_partitioning=1)
13 | WHERE
14 | subtype = 'physical'
15 | AND class IN ('peak','volcano')
16 | AND elevation IS NOT NULL
17 | AND bbox.xmin BETWEEN -124.71 AND -116.47
18 | AND bbox.ymin BETWEEN 41.99 AND 46.30
19 | ) TO 'oregon_peaks.geojson' WITH (FORMAT GDAL, DRIVER 'GeoJSON');
20 |
--------------------------------------------------------------------------------
/src/queries/duckdb/new_york_pizza.sql:
--------------------------------------------------------------------------------
1 | LOAD spatial; -- noqa
2 |
3 | SET s3_region='us-west-2';
4 |
5 | COPY( -- COPY TO