DROPLET: Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources

Tarek Elgamal, Atul Sandur, Phuong Nguyen, Klara Nahrstedt, Gul A Agha

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Internet of Things (IoT) applications generate massive amounts of real-time streaming data. IoT data owners strive to make predictions/inferences from these large streams of data often through applying machine learning, and image processing operations. A typical deployment of such applications includes edge devices to provide processing/storage operations closer to the location where the streaming data is captured. An important challenge for IoT applications is deciding which operations to execute on an edge device and which operations should be carried out in the cloud. In this paper, we propose a scalable dynamic programming algorithm called DROPLET, to partition operations in IoT applications across shared edge and cloud resources, while minimizing completion time of the end-to-end operations. We evaluate DROPLET using three real-world applications. Our results show that DROPLET finds a partitioning of operations having overall completion time within 4% of the optimum for these applications. It also scales to thousands of operations and outperforms closest heuristics in the literature, by being 10 times faster in running time while finding partitioning of operations with total completion time that is 20% better for the large applications that we simulated. We analyze DROPLET to show that it scales with total number of operations in log-linear time.

Original languageEnglish (US)
Title of host publicationProceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services
PublisherIEEE Computer Society
Pages1-8
Number of pages8
ISBN (Electronic)9781538672358
DOIs
StatePublished - Sep 7 2018
Event11th IEEE International Conference on Cloud Computing, CLOUD 2018 - San Francisco, United States
Duration: Jul 2 2018Jul 7 2018

Publication series

NameIEEE International Conference on Cloud Computing, CLOUD
Volume2018-July
ISSN (Print)2159-6182
ISSN (Electronic)2159-6190

Other

Other11th IEEE International Conference on Cloud Computing, CLOUD 2018
CountryUnited States
CitySan Francisco
Period7/2/187/7/18

Fingerprint

Internet of things
Dynamic programming
Learning systems
Image processing
Processing

Keywords

  • Cloud computing
  • Dynamic programming
  • Edge computing
  • Performance optimization
  • Pipelining
  • Placement problem
  • Scalability

ASJC Scopus subject areas

  • Artificial Intelligence
  • Information Systems
  • Software

Cite this

Elgamal, T., Sandur, A., Nguyen, P., Nahrstedt, K., & Agha, G. A. (2018). DROPLET: Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources. In Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services (pp. 1-8). [8457776] (IEEE International Conference on Cloud Computing, CLOUD; Vol. 2018-July). IEEE Computer Society. https://doi.org/10.1109/CLOUD.2018.00008

DROPLET : Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources. / Elgamal, Tarek; Sandur, Atul; Nguyen, Phuong; Nahrstedt, Klara; Agha, Gul A.

Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services. IEEE Computer Society, 2018. p. 1-8 8457776 (IEEE International Conference on Cloud Computing, CLOUD; Vol. 2018-July).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Elgamal, T, Sandur, A, Nguyen, P, Nahrstedt, K & Agha, GA 2018, DROPLET: Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources. in Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services., 8457776, IEEE International Conference on Cloud Computing, CLOUD, vol. 2018-July, IEEE Computer Society, pp. 1-8, 11th IEEE International Conference on Cloud Computing, CLOUD 2018, San Francisco, United States, 7/2/18. https://doi.org/10.1109/CLOUD.2018.00008
Elgamal T, Sandur A, Nguyen P, Nahrstedt K, Agha GA. DROPLET: Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources. In Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services. IEEE Computer Society. 2018. p. 1-8. 8457776. (IEEE International Conference on Cloud Computing, CLOUD). https://doi.org/10.1109/CLOUD.2018.00008
Elgamal, Tarek ; Sandur, Atul ; Nguyen, Phuong ; Nahrstedt, Klara ; Agha, Gul A. / DROPLET : Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources. Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services. IEEE Computer Society, 2018. pp. 1-8 (IEEE International Conference on Cloud Computing, CLOUD).
@inproceedings{10b54fada4954a0cb2eb9074e33a4a17,
title = "DROPLET: Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources",
abstract = "Internet of Things (IoT) applications generate massive amounts of real-time streaming data. IoT data owners strive to make predictions/inferences from these large streams of data often through applying machine learning, and image processing operations. A typical deployment of such applications includes edge devices to provide processing/storage operations closer to the location where the streaming data is captured. An important challenge for IoT applications is deciding which operations to execute on an edge device and which operations should be carried out in the cloud. In this paper, we propose a scalable dynamic programming algorithm called DROPLET, to partition operations in IoT applications across shared edge and cloud resources, while minimizing completion time of the end-to-end operations. We evaluate DROPLET using three real-world applications. Our results show that DROPLET finds a partitioning of operations having overall completion time within 4{\%} of the optimum for these applications. It also scales to thousands of operations and outperforms closest heuristics in the literature, by being 10 times faster in running time while finding partitioning of operations with total completion time that is 20{\%} better for the large applications that we simulated. We analyze DROPLET to show that it scales with total number of operations in log-linear time.",
keywords = "Cloud computing, Dynamic programming, Edge computing, Performance optimization, Pipelining, Placement problem, Scalability",
author = "Tarek Elgamal and Atul Sandur and Phuong Nguyen and Klara Nahrstedt and Agha, {Gul A}",
year = "2018",
month = "9",
day = "7",
doi = "10.1109/CLOUD.2018.00008",
language = "English (US)",
series = "IEEE International Conference on Cloud Computing, CLOUD",
publisher = "IEEE Computer Society",
pages = "1--8",
booktitle = "Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services",

}

TY - GEN

T1 - DROPLET

T2 - Distributed Operator Placement for IoT Applications Spanning Edge and Cloud Resources

AU - Elgamal, Tarek

AU - Sandur, Atul

AU - Nguyen, Phuong

AU - Nahrstedt, Klara

AU - Agha, Gul A

PY - 2018/9/7

Y1 - 2018/9/7

N2 - Internet of Things (IoT) applications generate massive amounts of real-time streaming data. IoT data owners strive to make predictions/inferences from these large streams of data often through applying machine learning, and image processing operations. A typical deployment of such applications includes edge devices to provide processing/storage operations closer to the location where the streaming data is captured. An important challenge for IoT applications is deciding which operations to execute on an edge device and which operations should be carried out in the cloud. In this paper, we propose a scalable dynamic programming algorithm called DROPLET, to partition operations in IoT applications across shared edge and cloud resources, while minimizing completion time of the end-to-end operations. We evaluate DROPLET using three real-world applications. Our results show that DROPLET finds a partitioning of operations having overall completion time within 4% of the optimum for these applications. It also scales to thousands of operations and outperforms closest heuristics in the literature, by being 10 times faster in running time while finding partitioning of operations with total completion time that is 20% better for the large applications that we simulated. We analyze DROPLET to show that it scales with total number of operations in log-linear time.

AB - Internet of Things (IoT) applications generate massive amounts of real-time streaming data. IoT data owners strive to make predictions/inferences from these large streams of data often through applying machine learning, and image processing operations. A typical deployment of such applications includes edge devices to provide processing/storage operations closer to the location where the streaming data is captured. An important challenge for IoT applications is deciding which operations to execute on an edge device and which operations should be carried out in the cloud. In this paper, we propose a scalable dynamic programming algorithm called DROPLET, to partition operations in IoT applications across shared edge and cloud resources, while minimizing completion time of the end-to-end operations. We evaluate DROPLET using three real-world applications. Our results show that DROPLET finds a partitioning of operations having overall completion time within 4% of the optimum for these applications. It also scales to thousands of operations and outperforms closest heuristics in the literature, by being 10 times faster in running time while finding partitioning of operations with total completion time that is 20% better for the large applications that we simulated. We analyze DROPLET to show that it scales with total number of operations in log-linear time.

KW - Cloud computing

KW - Dynamic programming

KW - Edge computing

KW - Performance optimization

KW - Pipelining

KW - Placement problem

KW - Scalability

UR - http://www.scopus.com/inward/record.url?scp=85057456611&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85057456611&partnerID=8YFLogxK

U2 - 10.1109/CLOUD.2018.00008

DO - 10.1109/CLOUD.2018.00008

M3 - Conference contribution

AN - SCOPUS:85057456611

T3 - IEEE International Conference on Cloud Computing, CLOUD

SP - 1

EP - 8

BT - Proceedings - 2018 IEEE International Conference on Cloud Computing, CLOUD 2018 - Part of the 2018 IEEE World Congress on Services

PB - IEEE Computer Society

ER -