App integration is complex, and since every enterprise has a unique mix of apps and platforms, there's no blueprint for success. Analyst Massimo Pezzini explains how architects should craft a plan.
Every enterprise runs on a combination of apps and platforms tailored to its goals, so it stands to reason that each company's integration needs differ. Complexity ratchets up when you throw in the inherent difficulties of hybrid cloud integration, which combines on-premises and cloud applications, as well as digital transformation projects.
Massimo Pezzini, research fellow at Gartner, has some advice for application architects that wish to strengthen their integration strategies in a hybrid cloud architecture. In this Q&A, Pezzini describes what hybrid integration entails and outlines some top challenges to overcome.
Editor's note: The following interview has been edited for clarity and brevity.
Hybrid integration, or hybrid cloud integration, goes beyond just integrating on-premises with cloud. Could you paint a picture of how hybrid integration can mean a lot of different things and involve different moving parts?
Massimo Pezzini
Massimo Pezzini: I would make the picture even more complex. In real life, there is cloud-to-on-premises integration, cloud-to-cloud integration and multi-cloud integration. But we also should add the integration of mobile applications and IoT applications. ... In the modern digital world we need to connect ... mobile devices, IoT devices, mobile applications, cloud applications and on-premises applications with each other.
When it comes to integrating all these different technologies, where do architects struggle the most?
Pezzini: The first challenge is to figure out exactly what your requirements are as an architect. You can have a narrow perspective and focus on hybrid integration in the context of a particular project or initiative, or you can have a holistic perspective. And if you have a holistic perspective, it's hard work to figure out exactly what your integration requirements are today and what they will be in the next, let's say, three to five years, because of all these things happening.
The second is selecting the appropriate combination of technologies. Architects would love to have one single [hybrid integration] platform that can cover them all, which can connect IoT devices, mobile devices, APIs, cloud, etc. This is difficult. In the market, there are many [hybrid integration] products, but few are good at supporting all these different scenarios. So, identify what is the right combination of technologies that can be used to solve the problem.
For the third challenge, let me use an example. Say you have applications running in your data center, applications running on Amazon [Web Services] and applications running on [Microsoft] Azure and you need to connect them all together. Do you put the integration platform on premises? Do you put it in the cloud? And if in the cloud, then in which cloud?
If you have a lot of integration via many on-premises applications connecting into each other, then it makes sense to run the integration platform on premises. If you have a lot of applications in Amazon, it makes sense to deploy the integration platform in Amazon. And the same applies to Azure. But what if you have many applications on Azure, on Amazon and on premises? Where do you put the integration platform? In reality, you will have to put it everywhere. You will have to put it on Amazon, on Azure and on premises.
Sometimes, you cannot put the same platform in the three environments. Maybe on-premises, you have more demanding requirements than in the cloud. Depending on what the use cases are and depending on what the functional and nonfunctional requirements are, defining the integration architecture from a technology perspective may not be that simple and may require architects to combine multiple technology platforms. There are a number of tradeoffs to consider, including latency, security and scalability.
There is a complex topological exercise that the architects go through to simultaneously minimize security risks and provide the performance, latency and scalability needs. This topological discussion of where it makes sense to put the integration platform encompasses the third challenge.
Lastly, integration can be performed in many ways. You can send data in batch once a day, you can send data in real time by sending messages and sending events or you can connect applications using APIs.
APIs are great, but there are scenarios for which APIs are not good enough -- for example, when you need good old file transfer to send large amounts of data from one application to the other. The last challenge is to identify which [hybrid integration patterns] make the most sense to support the specific use cases. It could be batch, near-real-time message-oriented or APIs -- or it could be some combination of those.