SlideShare a Scribd company logo
1 of 14
ICS 691:
             WattDepot 2.0 and
            Project Opportunities


                       Robert Brewer
     Collaborative Software Development Laboratory
       Dept of Information and Computer Sciences
              University of Hawaii at Manoa
                 http://www.kukuicup.org/
1)
Quickie Quiz!




     What are the 3 architectural components of
     WattDepot?




2)
Quickie Quiz Answer

                         WattDepot                             WattDepot
     Devices    Meters    Sensors                               Clients

                                            WattDepot
                                             Server

                                     HTTP
                                                        HTTP




3)
WattDepot 2.0
     Paper was written in early 2010
      • 11 releases since then
      • 2 years is a long time

     Outline of talk
     • What’s new since paper
     • Exciting project opportunities!

     Credit
     • Andrea Connell made WattDepot 2.0 happen

4)
New for Developers
     Source control
      • svn -> git

     Build system
     • Ant -> Maven

     Many new library updates
     • Restlet 2.1RC5



5)
New for Client Developers
     REST API
     • Fully implemented (finally)
     • New conveniences for client developers

     Google visualization integrated into REST API
     • Now listens on just 1 port




6)
New for End Users (Server)
     New storage backends
      • BerkeleyDB (George Lee)
      • PostgreSQL (Andrea Connell)
     Ephemeral data storage
      • Cache high frequency data
      • Persist to disk at lower frequency
     Cloud-enabled
      • Can (almost) be run on Heroku
     Load tested
      • Though more can be done

7)
New for End Users (Client)
     New sensors
     • Shark 200S meter
     • eGauge meter

     Sensor improvements
      • Multithreaded sensors
      • Can “embed” sensors in server process




8)
Project Ideas




9)
WattDepot Apps 2.0
      WattDepot lacks good UI
      • Timeline & monitor viz in separate app
      • No CRUD for users & sources!
      • Poor user experience

      Create a Single Page Application
       • Serve up static HTML/JS/CSS from WD server
       • Now it’s built in
      Features
       • Timeline, monitor viz
       • Also CRUD for users, sources, sensordata
10)
WattDepot in the Cloud
      Technically works on Heroku
      Many practical issues
       • Configuring sensors
       • Port problem
      Frontend tightly coupled to backend
       • Can’t just ramp up frontend processes

      Make WattDepot cloudirific
      • Solve practical issues
      • Decouple frontend from backend
      • Maybe explore other cloud providers?
11)
Supercharge WattDepot
      Performance adequate for Kukui Cup
       • Much room for improvement
       • Many parameters & layers to tweak

      Characterize current performance
       • Different backends, paramters, local vs cloud
      Profile system
       • Where are the bottlenecks
      Supercharge!
       • Fix bottlenecks
       • Measure performance improvement
12)
Environmental Data Support
      Currently focused on energy
      • What about water use?
      • Environmental data: temp, humidity, wind

      Support additional data types
       • How to generalize REST API?
       • What value add does WD provide?
       • What does this mean for backends?



13)
PostgreSQL Improvements
      Implement properties as hstore
       • Arbitrary key-value storage in Postgres




14)

More Related Content

What's hot

SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on Kubernetes
SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on KubernetesSUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on Kubernetes
SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on KubernetesJuan Herrera Utande
 
Aks pimarox from zero to hero
Aks pimarox from zero to heroAks pimarox from zero to hero
Aks pimarox from zero to heroJohan Biere
 
Bitfusion Overview Tensorflow Meetup
Bitfusion Overview Tensorflow MeetupBitfusion Overview Tensorflow Meetup
Bitfusion Overview Tensorflow MeetupSubbu Rama
 
Working with kubernetes
Working with kubernetesWorking with kubernetes
Working with kubernetesNagaraj Shenoy
 
Stateful set in kubernetes implementation & usecases
Stateful set in kubernetes implementation & usecases Stateful set in kubernetes implementation & usecases
Stateful set in kubernetes implementation & usecases Krishna-Kumar
 
Kafka for begginer
Kafka for begginerKafka for begginer
Kafka for begginerYousun Jeong
 
One cluster to serve them all
One cluster to serve them allOne cluster to serve them all
One cluster to serve them allloodse
 
Spark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on KubernetesSpark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on KubernetesYousun Jeong
 
Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma
Kubernates : An Small introduction for Beginners by Rajiv VishwkarmaKubernates : An Small introduction for Beginners by Rajiv Vishwkarma
Kubernates : An Small introduction for Beginners by Rajiv VishwkarmaRajiv Vishwkarma
 
A Primer on Kubernetes and Google Container Engine
A Primer on Kubernetes and Google Container EngineA Primer on Kubernetes and Google Container Engine
A Primer on Kubernetes and Google Container EngineRightScale
 
Cncf event driven autoscaling with keda
Cncf   event driven autoscaling with kedaCncf   event driven autoscaling with keda
Cncf event driven autoscaling with kedaJurajHantk
 
Kubernetes - A Short Ride Throught the project and its ecosystem
Kubernetes - A Short Ride Throught the project and its ecosystemKubernetes - A Short Ride Throught the project and its ecosystem
Kubernetes - A Short Ride Throught the project and its ecosystemMaciej Kwiek
 
Managing add-ons across clusters
Managing add-ons across clustersManaging add-ons across clusters
Managing add-ons across clustersLibbySchulze
 
DockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and DockerDockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and DockerDocker, Inc.
 

What's hot (20)

How Kubernetes make OpenStack & Ceph better
How Kubernetes make OpenStack & Ceph betterHow Kubernetes make OpenStack & Ceph better
How Kubernetes make OpenStack & Ceph better
 
SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on Kubernetes
SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on KubernetesSUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on Kubernetes
SUSE CaaSP: deploy OpenFaaS and Ethereum Blockchain on Kubernetes
 
Gdg izmir kubernetes
Gdg izmir kubernetesGdg izmir kubernetes
Gdg izmir kubernetes
 
Aks pimarox from zero to hero
Aks pimarox from zero to heroAks pimarox from zero to hero
Aks pimarox from zero to hero
 
Bitfusion Overview Tensorflow Meetup
Bitfusion Overview Tensorflow MeetupBitfusion Overview Tensorflow Meetup
Bitfusion Overview Tensorflow Meetup
 
AKS
AKSAKS
AKS
 
Working with kubernetes
Working with kubernetesWorking with kubernetes
Working with kubernetes
 
KEDA Overview
KEDA OverviewKEDA Overview
KEDA Overview
 
Kubernetes Presentation
Kubernetes PresentationKubernetes Presentation
Kubernetes Presentation
 
Stateful set in kubernetes implementation & usecases
Stateful set in kubernetes implementation & usecases Stateful set in kubernetes implementation & usecases
Stateful set in kubernetes implementation & usecases
 
Kafka for begginer
Kafka for begginerKafka for begginer
Kafka for begginer
 
One cluster to serve them all
One cluster to serve them allOne cluster to serve them all
One cluster to serve them all
 
Spark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on KubernetesSpark day 2017 - Spark on Kubernetes
Spark day 2017 - Spark on Kubernetes
 
Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma
Kubernates : An Small introduction for Beginners by Rajiv VishwkarmaKubernates : An Small introduction for Beginners by Rajiv Vishwkarma
Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma
 
A Primer on Kubernetes and Google Container Engine
A Primer on Kubernetes and Google Container EngineA Primer on Kubernetes and Google Container Engine
A Primer on Kubernetes and Google Container Engine
 
Cncf event driven autoscaling with keda
Cncf   event driven autoscaling with kedaCncf   event driven autoscaling with keda
Cncf event driven autoscaling with keda
 
K8s monitoring with elk
K8s monitoring with elkK8s monitoring with elk
K8s monitoring with elk
 
Kubernetes - A Short Ride Throught the project and its ecosystem
Kubernetes - A Short Ride Throught the project and its ecosystemKubernetes - A Short Ride Throught the project and its ecosystem
Kubernetes - A Short Ride Throught the project and its ecosystem
 
Managing add-ons across clusters
Managing add-ons across clustersManaging add-ons across clusters
Managing add-ons across clusters
 
DockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and DockerDockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and Docker
 

Viewers also liked

WattDepot: A software ecosystem for energy data collection, storage, analysis...
WattDepot: A software ecosystem for energy data collection, storage, analysis...WattDepot: A software ecosystem for energy data collection, storage, analysis...
WattDepot: A software ecosystem for energy data collection, storage, analysis...Robert Brewer
 
SocialSense: A System For Social Environment Awareness
SocialSense: A System For Social Environment AwarenessSocialSense: A System For Social Environment Awareness
SocialSense: A System For Social Environment AwarenessRobert Brewer
 
From Smart Grids to Smart Consumers
From Smart Grids to Smart ConsumersFrom Smart Grids to Smart Consumers
From Smart Grids to Smart ConsumersRobert Brewer
 
ICS 690 talk: Personal Environmental Trainer
ICS 690 talk: Personal Environmental TrainerICS 690 talk: Personal Environmental Trainer
ICS 690 talk: Personal Environmental TrainerRobert Brewer
 
Smart Grid to Smart Consumers (ICS 690)
Smart Grid to Smart Consumers (ICS 690)Smart Grid to Smart Consumers (ICS 690)
Smart Grid to Smart Consumers (ICS 690)Robert Brewer
 
Population growth and Natural resources
Population growth and Natural resourcesPopulation growth and Natural resources
Population growth and Natural resourcesSagar Divetiya
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 

Viewers also liked (7)

WattDepot: A software ecosystem for energy data collection, storage, analysis...
WattDepot: A software ecosystem for energy data collection, storage, analysis...WattDepot: A software ecosystem for energy data collection, storage, analysis...
WattDepot: A software ecosystem for energy data collection, storage, analysis...
 
SocialSense: A System For Social Environment Awareness
SocialSense: A System For Social Environment AwarenessSocialSense: A System For Social Environment Awareness
SocialSense: A System For Social Environment Awareness
 
From Smart Grids to Smart Consumers
From Smart Grids to Smart ConsumersFrom Smart Grids to Smart Consumers
From Smart Grids to Smart Consumers
 
ICS 690 talk: Personal Environmental Trainer
ICS 690 talk: Personal Environmental TrainerICS 690 talk: Personal Environmental Trainer
ICS 690 talk: Personal Environmental Trainer
 
Smart Grid to Smart Consumers (ICS 690)
Smart Grid to Smart Consumers (ICS 690)Smart Grid to Smart Consumers (ICS 690)
Smart Grid to Smart Consumers (ICS 690)
 
Population growth and Natural resources
Population growth and Natural resourcesPopulation growth and Natural resources
Population growth and Natural resources
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 

Similar to WattDepot 2.0 presentation

Distributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDDistributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDMichael Blackstock
 
Asynchronous design with Spring and RTI: 1M events per second
Asynchronous design with Spring and RTI: 1M events per secondAsynchronous design with Spring and RTI: 1M events per second
Asynchronous design with Spring and RTI: 1M events per secondStuart (Pid) Williams
 
Monitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with PrometheusMonitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with PrometheusJulien Pivotto
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014Hojoong Kim
 
Iot meets Serverless
Iot meets ServerlessIot meets Serverless
Iot meets ServerlessNarendran R
 
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC WongDocker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC WongDocker, Inc.
 
Scaling Hadoop at LinkedIn
Scaling Hadoop at LinkedInScaling Hadoop at LinkedIn
Scaling Hadoop at LinkedInDataWorks Summit
 
Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalRAdam Mokan
 
Trend Micro Big Data Platform and Apache Bigtop
Trend Micro Big Data Platform and Apache BigtopTrend Micro Big Data Platform and Apache Bigtop
Trend Micro Big Data Platform and Apache BigtopEvans Ye
 
MongoDB World 2016: Get MEAN and Lean with MongoDB and Kubernetes
MongoDB World 2016: Get MEAN and Lean with MongoDB and KubernetesMongoDB World 2016: Get MEAN and Lean with MongoDB and Kubernetes
MongoDB World 2016: Get MEAN and Lean with MongoDB and KubernetesMongoDB
 
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...Edward Burns
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realistsKarthik Gaekwad
 
Nodeless and serverless kubernetes
Nodeless and serverless kubernetesNodeless and serverless kubernetes
Nodeless and serverless kubernetesNills Franssens
 
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...Spark Summit
 
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Nathan O'Hanlon
 
Alex Wade, Digital Library Interoperability
Alex Wade, Digital Library InteroperabilityAlex Wade, Digital Library Interoperability
Alex Wade, Digital Library Interoperabilityparker01
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler
 

Similar to WattDepot 2.0 presentation (20)

Distributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDDistributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-RED
 
Asynchronous design with Spring and RTI: 1M events per second
Asynchronous design with Spring and RTI: 1M events per secondAsynchronous design with Spring and RTI: 1M events per second
Asynchronous design with Spring and RTI: 1M events per second
 
Monitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with PrometheusMonitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with Prometheus
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
 
Iot meets Serverless
Iot meets ServerlessIot meets Serverless
Iot meets Serverless
 
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC WongDocker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
 
Scaling Hadoop at LinkedIn
Scaling Hadoop at LinkedInScaling Hadoop at LinkedIn
Scaling Hadoop at LinkedIn
 
Introduction to SignalR
Introduction to SignalRIntroduction to SignalR
Introduction to SignalR
 
Trend Micro Big Data Platform and Apache Bigtop
Trend Micro Big Data Platform and Apache BigtopTrend Micro Big Data Platform and Apache Bigtop
Trend Micro Big Data Platform and Apache Bigtop
 
MongoDB World 2016: Get MEAN and Lean with MongoDB and Kubernetes
MongoDB World 2016: Get MEAN and Lean with MongoDB and KubernetesMongoDB World 2016: Get MEAN and Lean with MongoDB and Kubernetes
MongoDB World 2016: Get MEAN and Lean with MongoDB and Kubernetes
 
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
 
Introduction to Virtual Kubelet
Introduction to Virtual KubeletIntroduction to Virtual Kubelet
Introduction to Virtual Kubelet
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Nodeless and serverless kubernetes
Nodeless and serverless kubernetesNodeless and serverless kubernetes
Nodeless and serverless kubernetes
 
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
Unified Framework for Real Time, Near Real Time and Offline Analysis of Video...
 
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
 
56k.cloud training
56k.cloud training56k.cloud training
56k.cloud training
 
Alex Wade, Digital Library Interoperability
Alex Wade, Digital Library InteroperabilityAlex Wade, Digital Library Interoperability
Alex Wade, Digital Library Interoperability
 
Afs manager
Afs managerAfs manager
Afs manager
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New Contexts
 

Recently uploaded

Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingTeacherCyreneCayanan
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 

Recently uploaded (20)

Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 

WattDepot 2.0 presentation

  • 1. ICS 691: WattDepot 2.0 and Project Opportunities Robert Brewer Collaborative Software Development Laboratory Dept of Information and Computer Sciences University of Hawaii at Manoa http://www.kukuicup.org/ 1)
  • 2. Quickie Quiz! What are the 3 architectural components of WattDepot? 2)
  • 3. Quickie Quiz Answer WattDepot WattDepot Devices Meters Sensors Clients WattDepot Server HTTP HTTP 3)
  • 4. WattDepot 2.0 Paper was written in early 2010 • 11 releases since then • 2 years is a long time Outline of talk • What’s new since paper • Exciting project opportunities! Credit • Andrea Connell made WattDepot 2.0 happen 4)
  • 5. New for Developers Source control • svn -> git Build system • Ant -> Maven Many new library updates • Restlet 2.1RC5 5)
  • 6. New for Client Developers REST API • Fully implemented (finally) • New conveniences for client developers Google visualization integrated into REST API • Now listens on just 1 port 6)
  • 7. New for End Users (Server) New storage backends • BerkeleyDB (George Lee) • PostgreSQL (Andrea Connell) Ephemeral data storage • Cache high frequency data • Persist to disk at lower frequency Cloud-enabled • Can (almost) be run on Heroku Load tested • Though more can be done 7)
  • 8. New for End Users (Client) New sensors • Shark 200S meter • eGauge meter Sensor improvements • Multithreaded sensors • Can “embed” sensors in server process 8)
  • 10. WattDepot Apps 2.0 WattDepot lacks good UI • Timeline & monitor viz in separate app • No CRUD for users & sources! • Poor user experience Create a Single Page Application • Serve up static HTML/JS/CSS from WD server • Now it’s built in Features • Timeline, monitor viz • Also CRUD for users, sources, sensordata 10)
  • 11. WattDepot in the Cloud Technically works on Heroku Many practical issues • Configuring sensors • Port problem Frontend tightly coupled to backend • Can’t just ramp up frontend processes Make WattDepot cloudirific • Solve practical issues • Decouple frontend from backend • Maybe explore other cloud providers? 11)
  • 12. Supercharge WattDepot Performance adequate for Kukui Cup • Much room for improvement • Many parameters & layers to tweak Characterize current performance • Different backends, paramters, local vs cloud Profile system • Where are the bottlenecks Supercharge! • Fix bottlenecks • Measure performance improvement 12)
  • 13. Environmental Data Support Currently focused on energy • What about water use? • Environmental data: temp, humidity, wind Support additional data types • How to generalize REST API? • What value add does WD provide? • What does this mean for backends? 13)
  • 14. PostgreSQL Improvements Implement properties as hstore • Arbitrary key-value storage in Postgres 14)