I finally decided to install smart thermostats in my house when I received a heating bill last winter that cost more than my first used car. I don’t usually look forward to the cold of winter, but I am excited for January to come around just to see the year-over-year savings. One big deep freeze and the system might even pay for itself this year.
In a lot of ways, the on-demand control and flexibility of a smart thermostat system mirrors the advantages of containerized software. Just as it makes no sense to heat the downstairs family room when everyone’s upstairs asleep, it isn’t very economical to pay for clusters, racks or servers for that matter if they’re only used during peak hours, days, months or even seasons.
In a recent blog, we explored why container management software – Kubernetes in particular, with Docker Swarm also in play as a go-to container orchestration platform – is increasingly favored by enterprise companies, as compared with Hadoop, for big data processing. Flexibility, performance and cost were cited as the primary reasons why data-driven enterprises coping with enormous data sets are moving toward containerization.
Don’t Risk Frustrating the Customer
Those are significant benefits for the enterprise, of course. But what about the end consumer? Left unsaid in the previous blog on the topic was the impact of container management software for the customer the enterprise is trying to serve. Do they notice a difference between a pre-packaged application that runs in a container vs. a distributed cluster?
The hard truth, of course, is that the customer will generally only notice in the event of a poor experience. Which is why, to avoid that probability, enterprises that employ distributed parallel processing of large datasets with Hadoop or another big data processor often pay for what they don’t need.
In a cloud environment, that fixed monthly expense of hundreds of nodes and dozens or more of core CPUs may, at periods of high demand, provide the necessary processing power and raw speed to run an application for hundreds of thousands or even millions of users.
The risk, though, is substantial. Recent studies show that a page that takes more than three seconds to load loses around 53 percent of mobile users. That’s a lot of unhappy holiday shoppers leaving to spend their holiday budgets with another brand. Imagine a shopper with a partially filled shopping cart who clicks on one last item. Frustrated by the lag time, she abandons the cart and skips out on the entire transaction.
A superior, omnichannel customer experience is often regarded as one that delivers a next-best action for a customer in the context of an individual customer journey, regardless of channel. The shopping cart example shows that a next-best action is only as good as the delivery mechanism. A real-time decisioning engine and intelligent orchestration capabilities that produce the perfect offer at the perfect time and on the perfect channel are all for naught if a business’s notion of real-time outpaces that of an overloaded application.
A Hands-Off, Stress-Free Environment, a Satisfied Customer
A container orchestration platform significantly minimizes this very real possibility by automatically spinning up (or down) a new container as resources dictate – holiday season, peak hours, etc.
The other important aspect is this flexibility is not dependent on IT, as it is with a distributed parallel processing framework. Pre-packaged containerized applications are, as the name suggest, self-contained, with elements such as security, single sign-on, network configuration and interoperability controlled by the container orchestration platform.
In a parallel processing framework, setting up a new cluster to meet high demand involves significant code changes to match queries on distributed files – often with programming in MapReduce, Pig and Spark which require specific skillsets.
In addition to being time and resource intensive, the problem is that data-driven enterprises work with dynamic data that changes constantly. Adding clusters of nodes in an attempt to keep up with a constantly changing customer base or suddenly changing business objectives is an exercise in futility, a developer’s version of a dog chasing its tail.
With a container orchestration platform, the enterprise dispenses with every manual shortcoming and inefficiency. By fully automating complex deployments on multiple hosts, an enterprise starts instead with an objective and avoids all the intermediate steps such as allocating resources or balancing loads. The platform ensures the objective is met, and from the consumer standpoint it unknowingly eliminates a lot of potential friction touchpoints.
Another containerization benefit encompasses software selection and installation. Returning to the smart thermostat analogy, it would be as if the thermostat installation entailed little more than clicking a button in Amazon. No electrician needed, no drilling holes, site prep, etc. And, if you have a thermostat in every room, you would then be able to control everything via one interface, dialing up or down the heat in each room with one remote. That is what container orchestration platforms enable, with micro-services for sharing libraries, services, interfaces, and consoles across multiple containers.
A container orchestration platform ensures that poor customer experiences that occur because of lags will never happen. Constant monitoring, even distribution and easy scalability eliminate the traditional pressure points. And even if disaster strikes and the figurative furnace does blow – a hack, outage, natural disaster – container orchestration is like having an on-demand repairman ready at a moment’s notice to get you up-and-running before the cold sets in.