4 Architecting IoT Cloud
229
• Splunk: At its beginning, Splunk was a log analysis platform. It has gained a
solid foundation of loyal users and organizations that appreciate the ability to
share graphs and dashboards as well as the way it enables data visualization and
manipulation. It is well known for its analytic abilities as well as a web-based,
user-friendly log review. These capabilities can be also be used to review big data
stored in Hadoop.
• H2O: H2O is a distributed, in-memory, open-source platform for machine
learning that supports linear scalability. It comes with several out-of-box machine
learning and statistical algorithms (i.e., general linear models, deep learning, and
gradient boosted machines, etc.).
• Knime: Knime is an enterprise-level, open-source analytics platform designed
for use by data scientists. The visualization interface includes many nodes for a
variety of uses from data extraction to data presentation, with a clear focus on
statistical models.
• MLlib: MLlib is a component of Apache Spark and provides a scalable library
for machine learning with several methods for regression, collaborative filtering,
optimization primitives, classification, clustering, and dimensionality reduction.
The details of the MLlib will be addressed in Chap. 6.
• IBM Watson Studio: IBM is one of the most widely recognized brands all around
the globe. IBM Watson Studio is an appealing platform useful for creating and
deploying deep learning and machine learning models. It also enables you to
explore, refine, and transform data.
4.8.4 Load Balancing
Adding additional servers are necessary to enable the computing to scale efficiently
and meet high request volumes. Load balancing is a means of effectively spreading
incoming network traffic to a group of backend servers, sometimes referred to as a
server pool or server farm (see Fig. 4.34). You can think of the load balancer much
like the “traffic cop,” of the server pool, sending requests to endpoint servers in a
way that it keeps the workload evenly distributed and avoids lowering performance
level. If one server goes down, the load balancer is able to send requests to the other
servers, and if a new server is added to the pool, the load balancer automatically
starts sending some incoming requests to the newly added server. Generally, a load
balancer handles the following functions:
• Request Distribution – Spreads client requests or network load across multiple
servers in an efficient manner
• Performance Improvement – Guarantees network dependability and high availability by only sending requests to online servers
• Flexibility Increase – Allows servers to be added or removed based on client
demand
Précédent

- 236/647

Suivant