Department of Rtificial Ntelligence & Achine Earning: PE - 1: Internet of Things Analytics UAME0524
Department of Rtificial Ntelligence & Achine Earning: PE - 1: Internet of Things Analytics UAME0524
Cloud computing helps users in easily accessing computing resources like storage, and
processing over internet rather than local hardware's. Here we discussing how it works
in nutshell:
1. Infrastructure: Cloud computing depends on remote network servers hosted on
internet for store, manage, and process the data.
2. On-Demand Access: Users can access cloud services and resources based on-
demand they can scale up or down the without having to invest for physical
hardware.
3. Types of Services: Cloud computing offers various benefits such as cost saving,
scalability, reliability and accessibility it reduces capital expenditures, improves
efficiency.
Architecture Of Cloud Computing
1. Scalability: IaaS enables users to adjust computing capacity according to their demands without requiring
long lead times or up-front hardware purchases.
2. Elasticity: IaaS allows users to dynamically modify their computing resources in response to shifting
demand, ensuring optimum performance and financial viability.
3. Self-Service: IaaS offers consumers "self-service" portals that let them independently deploy, administer,
and monitor their computing resources without the assistance of IT employees.
4. Security: To safeguard their infrastructure and client data, IaaS companies adopt security measures,
including data encryption, firewalls, access controls, and threat detection.
Characteristics of IaaS are:
1. Storage: Back-end storage services are provided by IaaS providers, enabling users to store and access their
files and data. This offers scalable and trustworthy storage solutions for a variety of use cases and can include
block storage, object storage, or file storage alternatives.
2. Load balancers: Infrastructure-layer load balancing services are provided by IaaS providers. Incoming
network traffic is split up among many virtual machines (VMs) or resources by load balancers, resulting in
effective resource management and excellent application and service availability.
3. Backup and disaster recovery services are provided by some IaaS providers, enabling customers to create
backup copies of their data and software and put recovery plans in place in the event of data loss or system
problems. This promotes business continuity and data security.
Advantages of IaaS Cloud Computing Layer
Shared infrastructure
Web access to the resources
Pay-as-per-use model
On-demand scalability
Platform as a Service ( PaaS )
a. Scalability : One of the best parts about PaaS is that it can automatically scale your apps up or down based on
demand. No more guessing how much infrastructure you’ll need! The platform is like a personal assistant for
your app, monitoring its workload and adjusting resources as required.
b. Development Tools
PaaS saves you from headaches by providing all the dev tools and environments you could ever need for your
app, all set up and configured for you out of the box.
c. Runtime Services
Now for the environment, your app actually needs to run and operate. The PaaS provides the full runtime system
already configured and ready to host your app once it’s developed.
Public Cloud
✓ Public cloud is open to all to store and access information via
the Internet using the pay-per-usage method.
✓ In public cloud, computing resources are managed and
operated by the Cloud Service Provider (CSP). The CSP
looks after the supporting infrastructure and ensures that the
resources are accessible to and scalable for the users.
✓ Due to its open architecture, anyone with an internet
connection may use the public cloud, regardless of location
or company size. Users can use the CSP's numerous services,
store their data, and run apps.
✓ By using a pay-per-usage strategy, customers can be assured
that they will only be charged for the resources they actually
use, which is a smart financial choice.
Characteristics of Public Cloud
Accessibility: Public cloud services are available to anyone with an internet connection. Users can access their
data and programs at any time and from anywhere.
Shared Infrastructure: Several users share the infrastructure in public cloud settings. Cost reductions and
effective resource use are made possible by this.
Scalability: By using the public cloud, users can easily adjust the resources they need based on their
requirements, allowing for quick scaling up or down.
Pay-per-Usage: When using the public cloud, payment is based on usage, so users only pay for the resources they
actually use. This helps optimize costs and eliminates the need for upfront investments.
Managed by Service Providers: Cloud service providers manage and maintain public cloud infrastructure. They
handle hardware maintenance, software updates, and security tasks, relieving users of these responsibilities.
Advantages of Public Cloud
1. Public cloud is owned at a lower cost than the private and hybrid cloud.
2. Public cloud is maintained by the cloud service provider, so do not need to worry about the maintenance.
3. Public cloud is easier to integrate. Hence it offers a better flexibility approach to consumers.
4. Public cloud is location independent because its services are delivered through the internet.
5. Public cloud is highly scalable as per the requirement of computing resources.
6. It is accessible by the general public, so there is no limit to the number of users.
7. Rapid deployment of services and applications.
8. Reduced time and effort in hardware procurement and setup.
9. The cloud provider offers a range of services and resources that you can avail of.
10. Built-in redundancy and resilience for enhanced reliability.
Disadvantages of Public Cloud
1. Exclusive Use: Private cloud is dedicated to a single organization, ensuring the resources and
services are tailored to its needs. It is like having a personal cloud environment exclusively for
that organization.
2. Control and Security: Private cloud offers organizations higher control and security than public
cloud options. Organizations have more control over data governance, access controls, and
security measures.
3. Customization and Flexibility: Private cloud allows organizations to customize the
infrastructure according to their specific requirements. They can configure resources, networks,
and storage to optimize performance and efficiency.
4. Scalability and Resource Allocation: The private cloud can scale and allocate resources.
According to demand, businesses may scale up or down their infrastructure, effectively using
their resources.
Advantages of Private Cloud
1. Private cloud provides a high level of security and privacy to the users.
2. Private cloud offers better performance with improved speed and space capacity.
3. It allows the IT team to quickly allocate and deliver on-demand IT resources.
4. The organization has full control over the cloud because it is managed by the organization itself. So, there is
no need for the organization to depends on anybody.
5. It is suitable for organizations that require a separate cloud for their personal use and data security is the first
priority.
6. Higher reliability and uptime compared to public cloud environments.
Disadvantages of Private Cloud
1. Skilled people are required to manage and operate cloud services.
2. Private cloud is not suitable for organizations that have a high user base, and organizations that do not have
the prebuilt infrastructure, sufficient manpower to maintain and manage the cloud.
3. Higher upfront costs and ongoing maintenance expenses.
4. Scaling resources can be challenging compared to public or hybrid cloud options.
5. Relies on internal IT staff for management and troubleshooting.
6. Slower deployment timelines and implementation compared to public cloud solutions.
7. Challenges in keeping up with hardware and software upgrades and compatibility.
8. Higher risks of technology becoming outdated and the need for regular infrastructure updates.
Hybrid Cloud
1. At least one public infrastructure as a service (IaaS) platform, such as AWS, Azure or Google.
2. Private computing resources, such as an on-premises data center, which typically includes some
private cloud capability.
3. An adequate network connection to the hybrid cloud's private and public cloud environments.
4. A common software platform capable of discovering, operating and managing private and public
cloud elements as a unified, highly automated, policy-driven environment.
HTTP
✓ Fundamentally, HTTP is a communication protocol that
enables clients (such as a web browser) and servers to share
information.
✓ For example, HTML documents, images, application data
(JSON), and more.
✓ HTTP follows the request-response messaging pattern where
the client makes a request and the web server sends a
response that includes not only the requested content, but also
relevant information about the request.
Realtime updates with HTTP
✓ WAMP sessions are established over web socket transport within the lifetime of
web socket transport.
✓ The client (in the publisher role) Runs a WAMP application component that
publishes a message to the router.
✓ The router (in the broker role) runs on the server and routes the message to the
subscriber. It decouples the publisher from the subscribers.
✓ The communication between publisher- broker and broker to publisher happens
over a WAMP web web-socket session
Advantages
✓ This protocol combines two patterns (Pub-Sub & RPC), allowing it to be used for
the entire messaging requirements of an application, reducing technology stack
complexity.
✓ Reduces networking overhead.
Disadvantages
✓ Not (yet) an official standard.
✓ No higher-level software architectural styles like REST (for now).
✓ Requires to deploy an additional component- the WAMP router. This additional
component increases the time that takes to exchange messages between
components compared to a direct WebSocket connection since all messages have
to go through the router.
Amazon Web Services for IOT
AWS IoT Device Defender: AWS IOT device defender is mainly used to secure a group of IoT
devices. It is responsible for the safety of IoT devices. It enforces the safety measures such as identity,
authentication, authorization of devices, and encryption of the device’s data.
AWS IoT Device Management: AWS IoT Device Management mainly helps in monitoring and
tracking IoT devices. It is very much useful for the management of IoT devices. Using this we can
remotely monitor the health of each device, problems with the devices, and necessary steps to be
taken.
AWS – IoT : Analytics Services
1. AWS IoT Events: As the name indicates AWS IOT Events helps the user to watch over the
devices by the events or notifications it sends. Its events are sent when an error occurs or when
any actions need to be triggered.
2. AWS IoT Analytics: AWS IOT Analytics mainly analyzes and scales the IoT data. It easily
supports up to petabytes of IoT data. So it is highly efficient. It eliminates the need to manage
complex IoT infrastructure and helps in building fast and responsive IoT applications.
3. AWS IoT SiteWise: AWS IoT Sitewise allows us to collect, model, and analyze the data from
the industrial IOT devices which are at scale. One can also gain insights into industrial
operations by configuring the suitable metrics using AWS IOT Sitewise.
4. AWS IoT ThingsGraph: AWS IoT Things Graph is used to connect web services and other
different devices visually for building IoT applications. It provides a drag and drop interface
which makes it easy to build IoT applications easily by connecting devices and web services
quickly.
Xively Cloud Services
✓ Xively is a system for deploying IoT applications on the cloud. It is offered as PaaS. Xively is basically a data
collection, management, and distribution infrastructure. It also provides APIs to connect and develop IoT
applications.
✓ Xively Python Libraries can also be used to embed python code as per the Xively APIs. A Xively Web
interface is provided to be used for easy implementation of the front-end interface.
✓ Xively also comes with multiple languages and platform support. We can implement HTTP protocols, APIs,
Message Queuing Telemetry Transport (MQTT). This makes device connectivity a lot easier with Xively
cloud.
✓ All the devices can be connected to Xively Cloud for real-time processing and archiving to the cloud. IoT
application developers can write the front end for IoT applications as per their requirements. This helps in the
convenient management of apps with Xively cloud and other APIs.
✓ Xively is very popular with companies that deal with IoT-based device manufacturing and development.
Companies using Xively can rely on the secure connectivity of devices as well as the seamless data
management capability.
How to use Xively?
1. Programmers or Developers have to register with Xively to use cloud services.
2. After registration and account creation, developers can create different devices for which he has to create an
IoT app. It can be easily done using the templates provided in the Web Interface of Xively.
3. Each connected device is allocated a unique FEED_ID. It specifies the data stream and metadata of the
connected device.
4. Once this is done permissions on the IoT devices are assigned using the available APIs. The available
permissions are Create, Update, Delete, and Read.
5. One or more bidirectional channels are created after we connect a device with Xively. Each channel is unique
to the device connected.
6. Xively cloud is connected with the help of these channels.
7. Xively APIs are used by IoT devices to create communication-enabled products.
Key Features of Xively
Device Management
✓ Xively offers extensive device management capabilities, allowing businesses to register, monitor, and control
their IoT devices remotely.
✓ This includes device provisioning, firmware updates, and real-time status monitoring. Effective device
management is essential for maintaining the health and functionality of IoT systems.
2. web2py
✓ With web2py, one can develop, deploy, debug, test, administer the database, and maintain applications via the
provided web interface. It has no configuration files, and you can even run it off a USB drive.
✓ web2py uses the MVC (Model-View-Controller) built-in ticketing system to manage errors.
Python Full-Stack Frameworks
3. CubicWeb
✓ CubicWeb is a semantic web application framework that features a query language and a selection+view
mechanism. It also features multiple databases, security, workflows, and reusable components.
4. Giotto
✓ A strict MVC framework that strictly separates Model, View and Controller elements, Giotto makes sure that
designers, Web developers, and sysadmins can work independently. It also includes controller modules that
allow you to build applications on top of the web and the command line.
Thank You