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
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
Metadata Files
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:yesWORKER_QUEUE- name of queueAWS_ACCESS_KEY_ID- access key id with access to queue and s3AWS_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
- Website: https://www.azavea.com
- Repositories: 383
- Profile: https://github.com/azavea
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)