Giter VIP home page Giter VIP logo

cog-best-practices's Introduction

cog-best-practices

Best practices with cloud-optimized-geotiffs (COGs)

The goal of this repository is to determine best practices for accessing the increasing amount of COG data with Pangeo tooling (GDAL, Rasterio, Xarray, Dask).

A Cloud Optimized GeoTIFF (COG) is a regular GeoTIFF file, aimed at being hosted on a HTTP file server (or Cloud object storage like S3), with an internal organization that enables more efficient workflows on the cloud. It does this by leveraging the ability of clients issuing HTTP GET range requests to ask for just the parts of a file they need. Read more at https://www.cogeo.org

One great use-case of COGS is downloading small pieces of a big file to your laptop. Another use-case is accessing COGs from within the same datacenter where they are stored over very efficient network connections.

This repository focuses on distributed computing within the same datacenter using this great new AWS public dataset in us-west-2 https://registry.opendata.aws/sentinel-1/ (Sentinel-1 Synthetic Aperture Radar images covering the United States).

Computing environment

We can use Pangeo Cloud and Pangeo Binder on AWS us-west-2 to iterate on examples in a common computing environment, click the button below to run the notebooks in this repository interactivel via Pangeo Binder on AWS:

badge

Organization

For starters there are four notebooks in this repository with the following focus:

  1. Accessing a single COG
  2. Working with multiple COGs (concatenated in time)
  3. Dask LocalCluster
  4. Dask GatewayCluster

Unit tests and examples often are simplified to an extreme and consequently fail to translate to ‘real world examples’. At the other extreme, full scientific analysis or large-scale computations are complex and difficult to follow. The goal with these examples is to explore the middle ground - simple operations that are commonplace on ~10-1000GB datasets.

Goals

  1. Figure out ways to improve these notebooks for better efficiency and clarity (this might involve opening issues and pull requests in other projects)
  2. Add new notebooks for common workflows e.g. creating COGs, rechunking COGs, applying custom functions, reprojection...

cog-best-practices's People

Contributors

richardscottoz avatar scottyhq avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.