Presentation on how to chat with PDF using ChatGPT code interpreter
A Low-cost and Scalable Visualization System for Electricity Consumption
1. A Low-cost and Scalable
Visualization System
for Electricity Consumption
Ryousei Takano
Information Technology Research Institute,
National Institute of Advanced Industrial Science and Technology (AIST),
Japan
SC2011@Seattle, Nov. 17 2011
3. Background
• The power consumption of
data centers and networks
becomes an issue of vital
importance to IT industries.
Google data center in the Dalles, Oregon
• In Japan, we faced planed
power outages (rolling power
outages) due to power
shortages caused by 3.11.
Fukushima Daiichi Nuclear Power Plant
3
4. Motivation
• To plan electricity savings, visualization of electricity
consumption per segmented unit, such as a power
distribution board, is becoming essential.
• But, the total system cost and scalability are problem.
– a lot of distributed sensors...
• The system has to be low-cost, scalable, and ease to
develop applications.
Cheap power measuring hardware unit
Power logging software utilizing cloud computing
A simple REST protocol
4
5. System overview
Data collecting
unit Data collecting
unit 2 Data collecting unit
…
…
3 Data collecting server
Update power usage Google App Engine
using REST w/ JSON
Retrieve data using
Datastore
REST w/ JSON
Alert
4 Applications
Viewer
1 Data measuring unit
Observe the state of power consumption
Plan electricity saving
5
6. Small start Go big
Google App Engine
Datastore
4 sensors
32 ports
= 128 sensors
Datastore
Sensors can be incrementally installed,
GAE can scale up according to the workload.
...
6
7. Low-cost power measuring unit
• Send data to data collecting unit every second.
• The production cost is approximately 120 USD,
including the cost of 4 current sensors.
Clamp-on current sensor (max: 4)
RJ-45 port
Signal processing board
(dsPIC30F3013)
7
8. Data collecting unit (1/2)
• Gather data from up to 32 power measuring unit
• Push data to GAE
– Can be placed behind NAT
To power measuring unit To GAE via the Internet
(Not Ethernet, data transfer and power supply) (Ethernet/100BaseT)
8
9. Data collecting unit (2/2)
Power
GAE
measuring unit
RJ-45 ports x 32
CPU (SH3) board
- Linux + Python
Serial-Parallel signal transform
(Now, it has been replaced by FPGA.)
9
10. Google App Engine
• PaaS cloud service for web applications
– Java, Python, Go are supported
– Your application will have URL like
http://XXXX.appspot.com
• Scalable and stable data storage
– Data are replicated to 5 different datacenters
– Allows 2 of them to be lost during operation
• Maintenance free
– No need to manage, almost
• Almost free, for now
– Price change is scheduled this Dec. though.
10
11. REST API
path
method
description
/update
POST
Upload data
/latest
GET
Get all data for the last minute
/latest,N
GET
Get all data for the last N minutes
/summary.s/YYYYmmDDHHMMSS,N
GET
Get all data for each second start from
YYYYmmDDHHMMSS, for N seconds
/summary.m/YYYYmmDDHHMM,N
GET
Get all data for each minute start from
YYYYmmDDHHMM, for N minutes
/summary.h/YYYYmmDDHH,N
GET
Get all data for each hour start from
YYYYmmDDHH, for N hours
/summary.d/YYYYmmDD,N
GET
Get all data for each day start from
YYYYmmDD, for N days
/query.s/LOC/YYYYmmDDHHMMSS,N
GET
Get data for locations that name start with LOC
/query.m/LOC/YYYYmmDDHHMM,N
GET
/unit-config/UNIT_ID
GET
Get configuration data
/unit-config/UNIT_ID
PUT
Set configuration data
11
12. Update from Data collecting unit
Each data collection unit sends GAE
xxx.appspot.com/update
data every 20 seconds
– POST the following JSON string
{
"id": "UNIT_ID"
"time": "1319837460” /* elapsed seconds from the UNIX epoch time */
"power": { /* data for the last 20 seconds per measurement point */
"sensor0.0": [VAL0, VAL1, VAL2, VA3, ..., VAL19],
"sensor0.1": [VAL0, VAL1, VAL2, VA3, ..., VAL19],
"sensor1.0": [VAL0, VAL1, VAL2, VA3, ..., VAL19],
....
}
}
12
13. Data retrieval
Applications periodically (e.g., 1 GAE
xxx.appspot.com/latest,N
min) get data from GAE
– GET the following JSON string
{
"time": “1319837460” /* epoch time */
"timeStr": “201110290631” /* human readable
time in JST */
"power": {
"LOCATION0": [1234]
"LOCATION1": [1234]
"LOCATION2": [1234]
"LOCATION3": [1234]
"LOCATION4": [1234]
... Viewer application
}
} 13
14. Demonstration at SC11
AIST (JP)
7 data collecting units
Data collecting 82 sensor modules 1 gather
unit Data collecting 290 measurement points
unit 2 tore
1 …
3 view
Sensor module
…
Clamp-on
current transformer
2 Google App Engine
Update power usage
using REST w/ JSON
Retrieve data using
Datastore
REST w/ JSON
NICT booth #4717(US)
2 3
Data collection Viewer
unit
1 Viewer
2 sensor built-in power strips
AIST booth #917(US)
14
15. AIST server room (Japan)
Data collecting unit
in free access floor
Clamp-on
current sensor
GAE
Power distribution board
Power measuring unit
15
16. NICT booth #4717 (US)
2 sensor modules
(sensor built-in power strip)
Tiled display wall
server
Data collecting module
Juniper’s routers
GAE
16
17. Visualization App.
AIST server room
(ACS cluster) at Japan
NICT booth at the US
17
18. Summary
• Our newly developed system helps reduce total system
cost and improve scalability by employing low-cost power
measuring units (30 USD per measurement point), and
utilizing cloud computing.
– The development of the system was completed within 3 months.
– At SC11, we have successfully demonstrated visualization of
power data gathering from sensors installed at the US and Japan.
• Future work: Incorporate into reactive/dynamic server
consolidation on a data center to reduce power
consumption aggressively.
18
19. Q&A
Thanks for your attention!
Thank NICT members for their help in the demonstration."
"
This research was partially supported by the NEDO research
project entitled “Research and Development Project for Green
Network/System Technology (Green IT Project).”"
19
21. Visualization Applications
less than 90% of the upper limit
less than 95% of the upper limit
more than 95% of the upper limit
Offline
(a) Web application
(b) Desktop application
21