https://github.com/azavea/nex2json-ingest

https://github.com/azavea/nex2json-ingest

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.7%) to scientific vocabulary
Last synced: 9 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: azavea
  • License: apache-2.0
  • Language: Python
  • Default Branch: develop
  • Size: 1.82 MB
Statistics
  • Stars: 0
  • Watchers: 19
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created over 10 years ago · Last pushed over 10 years ago
Metadata Files
Readme License

README.md

nex2json-ingest

Extracts data from NASA NEX datasets and uploads them to S3 as json.

Building

docker build -t quay.io/azavea/nex2json .

Running (example)

Downloading a dataset, processing, and uploading the result

bash docker run -e AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_HERE \ -e AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY_HERE \ quay.io/azavea/nex2json \ ./process_dataset.py rcp85 tasmax MIROC5 2050 \ TARGET_BUCKET_HERE

Submitting jobs to the queue

The use of the all keyword below in place of a list of model names causes the script to use a list of all models for which a base time is defined.

bash docker run -e AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_HERE \ -e AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY_HERE \ quay.io/azavea/nex2json \ ./worker.py SQS_QUEUE_NAME \ rcp45,rcp85 all 2010,2050,2099 tasmin,tasmax,pr \ TARGET_BUCKET_HERE

Running jobs from the queue

bash docker run -e AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_HERE \ -e AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY_HERE \ -e WORKER_QUEUE=SQS_QUEUE_NAME \ -e IS_WORKER=yes \ quay.io/azavea/nex2json ./worker.py

Running jobs in the queue in AWS

Create queue if one does not exist

Visibility timeout: 30 minutes

Submit jobs to the queue using above example

Push Docker image

docker push quay.io/azavea/nex2json

Create ECS cluster

Create task definition

  • Add container
    • Container name: nex2json
    • Image: quay.io/azavea/nex2json
    • Maximum memory: 2048MB
    • CPU units: 2
    • Command: ./worker.py
    • Environment variables
    • IS_WORKER: yes
    • WORKER_QUEUE - name of queue
    • AWS_ACCESS_KEY_ID - access key id with access to queue and s3
    • AWS_SECRET_ACCESS_KEY - secret access key

Create IAM role for ECS instances, if it doesn't already exist

Attach AmazonEC2ContainerServiceforEC2Role policy

Start a number of EC2 spot instances

Use AMI id from http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launchcontainerinstance.html

Use IAM role created earlier

Under "Advanced Details", enter the following:

```bash

!/bin/bash

echo ECSCLUSTER=yourcluster_name >> /etc/ecs/ecs.config ```

Run task

Under the ECS cluster intance, when instances are registered, click "Run Task" under "Tasks" and start the created task.

Monitor queue

Monitor the queue to see if tasks are being completed

Owner

  • Name: Azavea
  • Login: azavea
  • Kind: organization
  • Location: Philadelphia, PA

Geospatial software engineering for good

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 4
  • Average time to close issues: N/A
  • Average time to close pull requests: 4 days
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 2.5
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • sharph (1)
Pull Request Authors
  • sharph (3)
Top Labels
Issue Labels
Pull Request Labels