174
F. Firouzi and B. Farahani
4.8 Data Visualization and Reporting Layer ................................................. 227
4.8.1 Data Visualization Frameworks ................................................. 227
4.8.2 Business Intelligence Frameworks .............................................. 227
4.8.3 Advanced Data Analytical and Machine Learning Frameworks .............. 228
4.8.4 Load Balancing .................................................................. 229
4.9 Orchestration Layer ....................................................................... 231
4.10 Virtualization .............................................................................. 232
4.10.1 Main Categories of Virtualization ............................................... 232
4.10.2 Behind the Scene of FaaS: OpenWhisk ......................................... 235
4.11 Scaling ..................................................................................... 237
4.11.1 Vertical Scaling (Scale-Up) ..................................................... 237
4.11.2 Horizontal Scaling (Scale-Out or Clustering) .................................. 237
4.12 A Paradigm Shift from Cloud to Fog Computing ....................................... 238
4.13 Summary .................................................................................. 240
References ........................................................................................ 240
4.1 The IoT Cloud
The independent arenas of Cloud and IoT have been evolving quickly. Although
these models are distinct from one another, their elements are often complimentary
of one another. Integrating them provides benefits for specific application situations.
IoT benefits from the limitless resources and capabilities of Cloud to tackle its technological constraints such as processing power, less storage, and communication.
For example, Cloud offers IoT service management as well as the ability to deploy
applications and services that use IoT things or generated IoT data. Cloud can also
provide services in many real-life scenarios by acting as an intermediary between
the things and applications. On the other hand, Cloud benefits from IoT’s ability
to address problems in a more dynamic and distributed approach. The primary
motivations for Cloud and IoT integration can be summarized as follows [1]:
• Communication – Application and data sharing are two communication-oriented
drivers for integration. Through a combined Cloud/IoT model, personalized,
pervasive applications can be provided through IoT, while data collection and
distribution can be automated for minimal cost. Cloud technology provides
a cost-effective solution to manage, connect, and monitor anything from any
location at any time through incorporated applications and customized portals.
High-speed networks allow productive coordination, monitoring, communication, and control of remote IoT things as well as real-time data access. While
the Cloud can remarkably improve IoT communication, it can also lead to some
bottlenecks. In fact, while broadband capacity increased by a factor of only 10 4
over the last 20 years, data storage density has grown by a factor of 10 18 and
processor power has grown by a factor of 10 15 . Therefore, limitations become
apparent when trying to move huge amounts of raw data to the Cloud from the
edge of the Internet.
• Storage – IoT incorporates a large number of data sources (i.e., IoT
things/devices), generating a large amount of semi-structured or unstructured
data. This data is characterized similarly to big data based on volume, data
F. Firouzi and B. Farahani
4.8 Data Visualization and Reporting Layer ................................................. 227
4.8.1 Data Visualization Frameworks ................................................. 227
4.8.2 Business Intelligence Frameworks .............................................. 227
4.8.3 Advanced Data Analytical and Machine Learning Frameworks .............. 228
4.8.4 Load Balancing .................................................................. 229
4.9 Orchestration Layer ....................................................................... 231
4.10 Virtualization .............................................................................. 232
4.10.1 Main Categories of Virtualization ............................................... 232
4.10.2 Behind the Scene of FaaS: OpenWhisk ......................................... 235
4.11 Scaling ..................................................................................... 237
4.11.1 Vertical Scaling (Scale-Up) ..................................................... 237
4.11.2 Horizontal Scaling (Scale-Out or Clustering) .................................. 237
4.12 A Paradigm Shift from Cloud to Fog Computing ....................................... 238
4.13 Summary .................................................................................. 240
References ........................................................................................ 240
4.1 The IoT Cloud
The independent arenas of Cloud and IoT have been evolving quickly. Although
these models are distinct from one another, their elements are often complimentary
of one another. Integrating them provides benefits for specific application situations.
IoT benefits from the limitless resources and capabilities of Cloud to tackle its technological constraints such as processing power, less storage, and communication.
For example, Cloud offers IoT service management as well as the ability to deploy
applications and services that use IoT things or generated IoT data. Cloud can also
provide services in many real-life scenarios by acting as an intermediary between
the things and applications. On the other hand, Cloud benefits from IoT’s ability
to address problems in a more dynamic and distributed approach. The primary
motivations for Cloud and IoT integration can be summarized as follows [1]:
• Communication – Application and data sharing are two communication-oriented
drivers for integration. Through a combined Cloud/IoT model, personalized,
pervasive applications can be provided through IoT, while data collection and
distribution can be automated for minimal cost. Cloud technology provides
a cost-effective solution to manage, connect, and monitor anything from any
location at any time through incorporated applications and customized portals.
High-speed networks allow productive coordination, monitoring, communication, and control of remote IoT things as well as real-time data access. While
the Cloud can remarkably improve IoT communication, it can also lead to some
bottlenecks. In fact, while broadband capacity increased by a factor of only 10 4
over the last 20 years, data storage density has grown by a factor of 10 18 and
processor power has grown by a factor of 10 15 . Therefore, limitations become
apparent when trying to move huge amounts of raw data to the Cloud from the
edge of the Internet.
• Storage – IoT incorporates a large number of data sources (i.e., IoT
things/devices), generating a large amount of semi-structured or unstructured
data. This data is characterized similarly to big data based on volume, data
