Featured Post

Mastering flat_map in Python with List Comprehension

Image
Introduction In Python, when working with nested lists or iterables, one common challenge is flattening them into a single list while applying transformations. Many programming languages provide a built-in flatMap function, but Python does not have an explicit flat_map method. However, Python’s powerful list comprehensions offer an elegant way to achieve the same functionality. This article examines implementation behavior using Python’s list comprehensions and other methods. What is flat_map ? Functional programming  flatMap is a combination of map and flatten . It transforms the collection's element and flattens the resulting nested structure into a single sequence. For example, given a list of lists, flat_map applies a function to each sublist and returns a single flattened list. Example in a Functional Programming Language: List(List(1, 2), List(3, 4)).flatMap(x => x.map(_ * 2)) // Output: List(2, 4, 6, 8) Implementing flat_map in Python Using List Comprehension Python’...

What is Elastic Nature in Cloud Computing

Natural clouds are indeed elastic, expanding and contracting based on the force of the winds carrying them. The cloud is similarly elastic, expanding and shrinking based on resource usage and cloud tenant resource demands. The physical resources (computing, storage, networking, etc.) deployed within the data center or across data centers and bundled as a single cloud usually do not change that fast.
This elastic nature, therefore, is something that is built into the cloud at the software stack level, not the hardware.
Best cloud computing example: The classic promise of the cloud is to make compute resources available on demand, which means that theoretically, a cloud should be able to scale as a business grows and shrink as the demand diminishes. Consider here, for example, Amazon.com during Black Friday. There's a spike in inbound traffic, which translates into more memory consumption, increased network density, and increased compute resource utilization. If Amazon.com had, let's say, 5 servers and each server could handle up to 100 users at a time, the whole deployment would have peak service capacity of 500 users. During the holiday season, there's an influx of 1,000 users, which is double the capacity of what the current deployment can handle.

If Amazon were smart, it would have set up 5 additional (or maybe 10) servers within its data center in anticipation of the holiday season spike. This would mean physically provisioning 5 or 10 machines, setting them up, and connecting with the current deployment of 5 servers. Once the season is over and the traffic is back to normal, Amazon doesn't really need those additional 5 to 10 servers it brought in before the season. So either they stay within the data center sitting idle and incurring additional cost or they can be rented to someone else.

What we just described is what a typical deployment looked like pre-cloud. There was unnecessary physical interaction and manual provisioning of physical resources. This is inefficient and something that cannot be linearly scaled up. Imagine doing this with millions of users and hundreds or even thousands of servers. Needless to say, it would be a mess. This manual provisioning is not only inefficient, it's also financially infeasible for startups because it requires investing significant capital in setting up or co-locating to a data center and dedicated personnel who can manually handle the provisioning.

This is what the cloud has replaced. It has enabled small, medium, and large teams and enterprises to provision and then decommission compute, network, and memory resources, all of which are physical, in an automated way, which means that you can now scale up your resources just in time to serve the traffic spike and then wind down the additional provisioned resources, effectively just paying for the time that your application served the spike with increased resources. This automated resource allocation and deallocation is what makes a cloud elastic.

Comments

Popular posts from this blog

SQL Query: 3 Methods for Calculating Cumulative SUM

Big Data: Top Cloud Computing Interview Questions (1 of 4)

5 SQL Queries That Popularly Used in Data Analysis