Git Product home page Git Product logo

pynacolada's Introduction

pynacolada

Library for easily processing big netCDF files and xarrays, and manage them in hierarchical processing flows.

Description

Ever want to manipulate databases of huge xarrays in an easy, efficient, memory-friendly, and traceable way? You may have noticed memory limitations and loss of overview of all the sorts of the datasets. This library aims to tackle these challenges.

On the one hand, this package implements an apply_func routine that circumvents the memory issue by automatically dividing the xarray into chunks that fit your computer memory. On the fly writing to disk, parallel processing of (overlapping) chunks are supported simultaneously.

On the other hand, the library allows anyone to create modular data processing flows for processing different datasets with different formats, in which the multiple processes are executed in a hierarchical order and in parallel where possible. Herewidth, It implements a data management framework in which process arguments on the one hand and xarray (netcdf) attributes on the other hand are propagated in between the processing modules. Therefore, attributes from the xarray/netcdf files in the databases are tracked with pandas tables.While executing the multiple processing steps, the Pynacolada library checks whether particular data is already (being) generated. In that case, another build of the data is omitted, and only the reference (pandas table) to the existing data is provided instead.

The library is currently used for different projects climate services developed by the Climate team of the Flemish Institute for Technological Research (VITO) in Belgium, amongst others, https://climtag.vito.be. For examples and usage, please contact [email protected].

pynacolada's People

Contributors

hendrikwout avatar

Stargazers

Jessica Keune avatar

Watchers

 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.