One of the current market shifts getting a lot of attention these days is the transition from traditional monolithic application architectures to microservices, the impact of which can be felt from technological innovation to business/team culture. We, at Sumo Logic, believe in the importance of this trend because the same forces driving companies to microservices are also driving them to cloud-based services for supporting capabilities like machine data analytics. Below are three reasons why the benefits of consuming machine data analytics as a service greatly outweighs the old monolithic application delivery model.
Focus on the Product, not the Skillsets
In recent years, the gourmet food truck has become one of my favorite food trends. The expectation of lines of food trucks all peddling some highly refined comfort food has been a welcome motivation on many family excursions. My wife can get korean-style fried chicken, my daughter a quesadilla, and I can indulge in a completely ridiculous barbeque sandwich with an egg on top.
In my mind, microservices are like food trucks while monolithic applications remind me of those cafeterias my grandma dragged us to as kids. Bin after bin of unremarkable, over salted food made by general purpose cooks counting down the hours to clock-out. Sound familiar? Companies today face the same dilemma as the food industry – optimize for predictable mediocrity or allow for creativity, with the higher risk of failure. Customers have made that decision for them – the old way of doing things is not working. What this means is the the modern, digital company has had to move to an organization philosophy focused on business capabilities, not silo-ed, generalized capabilities like database architects and web operations teams. This allows those companies to rapidly develop and experiment with new functionality without toppling the entire edifice, and, most important, make a better quality product in the process. Essentially, create specialization around your product – “korean-style fried chicken”, not platform components – “warmer of canned green beans”.
Shared ownership with shared standards
Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure.
— Melvyn Conway, 1967
What I have found with food trucks is that their product tends to be highly unique and, at least for the successful ones, highly attuned to the tastes of their users. On the other extreme, the cafeteria is attuned to nobody, and responsive to nobody. In today’s world of opinionated consumers, restaurants have to balance these extremes in order to be successful – the quality of the food truck balanced against the efficient operations of the tightly managed cafeteria.
Companies, large and small, are facing this same conundrum – moving from hierarchical decision making that produces middling applications to more dynamic shared-ownership models that can produce unique engaging experiences. For example, traditional, monolithic applications rely on shared components like databases and web services. With microservices, small, cross-functional, multi-skilled teams are expected, and empowered, to maintain stable components with well-known integrations points and APIs, built on common infrastructure components. The quality of the output and the agility of the team is valued above office politics.
Consuming your data analytics as a cloud-native service delivers similar benefits to microservices.. The service accepts data from your application in well-understood ways with published methods for processing and analyzing data. And just like with microservices, this allows your team to focus on their application services, rather than having to worry about supporting data services like log or metrics analytics.
Focus on Agility
Remaining relevant to today’s discerning customers makes speed essential to business. My grandma’s preferred cafeteria menu remained unchanged in the 20 odd years I can remember going there. Food trucks, on the other hand, can change their menu at the drop of a hat in response to the fickle foodies everywhere.
The new modern application architecture emphasizes agility and flexibility to respond to similar expectations in the Internet world. Users change loyalties as often as hipsters take food selfies, and businesses can no longer accept nail-biting code deployments every few months. Just like food trucks enable cooks to experiment at the micro-level within a standard kitchen platform, microservices have allowed engineering teams to simplify the act of making changes by pushing complexity down into the smallest box possible. Now, instead of standardizing on lumbering platform components, these companies have standardized on APIs and infrastructure automation.
The appeal of data analytics as a service is driven by the same imperatives. Engineers can bake machine data spigots into their microservices components and then depend on the data analytics services’ to provide the appropriate services, as published.
I have good memories of eating bland mash potatoes with my grandma, just like I have fond memories of supporting monolithic applications in my early career. But you won’t catch me sneaking into a cafeteria or a chain restaurant for plate full of highly-salted vegetables these days. I’ve moved on. The world has moved on. You can say the same with the modern application. It’s time to focus on making the best possible korean taco or falafel sandwich your business can possibly make, and let us take care of machine data analytics for you. Now, go get some lunch.