Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add data download capability for user-selected datasets #25

Open
mwengren opened this issue Feb 4, 2021 · 4 comments
Open

Add data download capability for user-selected datasets #25

mwengren opened this issue Feb 4, 2021 · 4 comments
Labels
GSoC Project ideas for Google Summer of Code

Comments

@mwengren
Copy link
Member

mwengren commented Feb 4, 2021

Project Description:

This issue focuses on generating ERDDAP API URLs to extract individual datasets from ERDDAP servers. #14 aims to improve how efficient colocate is in searching ERDDAP servers for relevant data and extracting a subset of points to plot on the map view.

A goal for this project is to develop a dashboard-like UI allowing unified search across all known public ERDDAP services for oceanographic or environmental data that match supplied filter criteria (see #29).

In addition to allowing users to select individual datasets that match their filter criteria for display in a HoloViz-based map, it would be nice if they could download the data in one of the available ERDDAP TableDAP output formats.

This project would entail determining any limitations for downloading data from ERDDAP from a secondary website (CORS requirements for remote ERDDAP servers, for example), how to auto-detect any such issues, and create UI elements to allow the user to select an individual dataset for download, select an output format, and perhaps provide any other filter criteria that might be necessary to send to ERDDAP (bounding box, time extent, vertical extent, etc).

Expected Outcomes:
New function/control in the UI allowing direct download of datasets from remote ERDDAP services.

Skills required:
Python, HTTP/web programming, ERDDAP familiarity a plus

Difficulty:
Medium

Student Test:

  • Familiarize yourself with ERDDAP's tabledap documentation.
  • A basic implementation of a data download capability could consist of a dropdown list of dataset IDs similar to what's already in Cell 16, plus a few other controls/widgets. Combining this with a dropdown list corresponding to ERDDAP tabledap's output formats plus whatever other options might be appropriate to submit to ERDDAP tabledap service and a 'Download' button to submit the request to the ERDDAP server would work. Try developing a Panel UI with these controls on your own. Use the erddapy library to submit the request.
  • Issues you encounter will probably have to do with specifying the filter parameters in the ERDDAP query URL, determining the variable name(s) to request based on the CF 'standard name' selected in the colocate UI, and other aspects particular to the dataset(s). It's ok to not complete this test, since it's a large part of the project as a whole, but starting to work on this should get you used to working with ERDDAP and develop a plan for how to approach the project.
  • For your proposal/application, describe how you did the above, any issues encountered with submitting data download requests to ERDDAP, and suggest other ideas for how the colocate library might better provide the capability for users to download data from one or many datasets they choose from the search results.
@mwengren mwengren added the GSoC Project ideas for Google Summer of Code label Feb 4, 2021
@mwengren mwengren changed the title Add data download capability for user-selected datasets Add data download capability for user-selected datasets (GSoC Project 1) Mar 10, 2021
@Arraxx
Copy link

Arraxx commented Mar 10, 2021

Venerated Sir,
I hope you are safe and in good health in the wake of prevailing COVID-19.
My name is Aman Kumar and I am a 3rd-year Computer Science undergraduate student at Shri Mata Vaishno Devi University. I have been working with Python, CPP, Web Development and deep learning for a couple of years now and have in-depth knowledge of it. I look forward to contributing to this idea as part of this year's GSoC.
It would be a great assistance if you could suggest how to get started.
My Linkedin Profile:- https://www.linkedin.com/in/aman-kumar-6b31b9127/

@RATED-R-SUNDRAM
Copy link

hello sir,
I am shivam sundram 2nd year undergraduate at IIT Mandi , I have been studying python for over two years and have good experience in handling data and apis in python. I have a two year experience in web development and several projects under it also I did my internship for UI design and web development at a startup and been actively practicing this

I feel this project lies in my area of knowledge and interest and would surely like to work on it
my online resume: https://drive.google.com/file/d/1qeSXvrXk-RVurSV_SllDmncP4pO3JIef/view?usp=sharing

Please reply to me about how to get started so I can start working at the earliest

@mwengren
Copy link
Member Author

I added a 'Student Test' section to this issue to give anyone interested in submitting an application some ideas for how to start. Please take a look!

@RATED-R-SUNDRAM
Copy link

I have gone through the student tests of this issue and issue #14 and based on my understanding of the project meanwhile I have created a student proposal "https://docs.google.com/document/d/13Zx1hBk42hHPZuacIIlSohCtS7q-LrGcfvgVkd89lmI/edit?usp=sharing"

@mwengren mwengren changed the title Add data download capability for user-selected datasets (GSoC Project 1) Add data download capability for user-selected datasets Feb 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GSoC Project ideas for Google Summer of Code
Projects
None yet
Development

No branches or pull requests

3 participants