Giter Club home page Giter Club logo

global-energy-data's Introduction

Global Energy Data

This repository contains my final project submission for COE332. See prompt here. It contains a system of applications that can store, modify, and graph energy data from the EIA. This data is included.

Applications

The following applications make up the system. They can be run in either a Docker container or a Kubernetes pod.

  • global-energy-data-db: a Redis server that stores data
  • global-energy-data-api: a Flask server that can be used for CRUD functionality and putting 'jobs' in the queue
  • global-energy-data-wrk: a scalable worker that reads jobs from a queue and creates graphs of the data presented

File Description

The following is a brief description of each file

- /data
    - dump.rdb   : dump for redis database
    - redis.conf : configuration for creating a redis image
    - olddata.json : data downloaded directly from EIA
    - newdata.json : formatted version of olddata.json
    - read_data.py : script for formatting olddata.json and creating newdata.json
- /docker
    - Dockerfile.app : Dockerfile for creating api and worker images
    - Dockerfile.db  : Dockerfile for creating redis db
- /docs
    - user.md : a readme for interacting with the system
    - deploy.md : a readme for deploying the system
    - /img
        - contains images for docs
- /k8s
    contains .yml files for creating a k8s system in either a production or testing environment
- /src
    - api.py  : contains script for running flask routes
    - data.py : contains functions used for finding keys given sub-parameters
    - jobs.py : contains script for queueing jobs and connecting to redis database
    - worker.py : contains script to generate image from job id
- Makefile : used for make commands (ease of access)

global-energy-data's People

Contributors

bradenpecora 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.