Mendix has been a valued Technology Partner of eMagiz for some time now. In October during Mendix World 2.0, they announced the Mendix Data Hub and launched their Data Hub Partner Program with eMagiz as one of the launching partners. During the session, Tim Kuijper (Program Director @Mendix) explained more about the Mendix Data Hub, Bart Buschmann (Commercial Manager @eMagiz) disclosed some of the advantages of integrating with the Mendix Data Hub and Alexander Willemsen (CTO @eMagiz) demonstrated an integration between Salesforce, Hubspot & Mendix Data Hub. To watch their session on Mendix World you can follow this link.
Since October, Mendix has further developed their Data Hub and in this blog we want to talk to you about technical details of the Data Hub. I’m Samet Kaya, Software Delivery Manager @eMagiz and Mendix MVP, and in this blog I will tell you a little more about the latest developments of the Data Hub.
Share your data effortlessly with the Data Hub
Since the announcement of the Mendix Data Hub, Mendix has made it a lot easier to share data between your Mendix apps. Although the first version only supports reading data, this already is a major step in sharing data on a much easier way in your Mendix landscape than we are used to. That said, the benefits of the current feature set only applies to integration between Mendix apps. Integrating with other external systems is only quick & easy if there is OData support.
Before we dive into the details, it’s good to mention other Mendix partners also published articles on the Mendix Data Hub. There is the official Mendix Data Hub documentation and Mendix also developed a learning path to give you a quick start on learning how to work with the Data Hub. But Mendix is of course not alone in this area, there are more Data Hubs on the market and Gartner named ‘Digital Integration Hubs’ as the next big thing. If you want to know a little more about that, I can recommend this article.
Now, let’s focus on the Mendix Data Hub. The Mendix Data Hub distinguishes itself from others by tailoring the user experience specifically for Mendix developers. There is a native integration with Studio Pro, Mendix detects automatically published services within your Mendix applications, and it gives you a nice overview in the Data Catalog. Especially when you have many Mendix applications in your organization, the Data Catalog can be beneficial for your DevOps team to find the right data for their business needs. Because of the required extra commercial license, a thorough business case is needed.
The two main limitations
Obviously, Mendix has a long roadmap for the Data Hub. With the current product features there are two main limitations:
- You can only read data, writing data back is not supported yet. At least not the easy way, you need to fall back on traditional integration methods within Mendix.
- Only OData is supported for external systems, making it hard to govern all your non-Mendix apps and systems. Except for Mendix, Siemens (Teamcenter and Mindsphere) and SAP products that already support OData, you can only easily integrate with an external system if there is OData support.
While the Mendix community is waiting for the next set of product features to make it a more complete product, there are a couple of usecases where the Data Hub really makes a difference in terms of development speed & governance.
Searching and using data on the fly
In a microservices architecture with mainly Mendix apps, organizations can really benefit from the easiness of the Data Hub. It’s a common practice to retrieve data on-demand when you need it and use it in your functional process. For instance, you want to use business data, like address or customer information, which is managed in another app and is the single source. You could call a REST service or use your middleware layer to fetch this data, but you would still need to build a couple of REST services in Studio Pro. Everyone who develops in Mendix knows how easy it is to do this, but it will still take some time. You will need the help of other people and have some dependencies, and of course: with every integration there is always a catch.
This is where the magic of the purple entities come in, these are called ‘External Entities’. When the Catalog assets are used from the Data Hub pane in Studio Pro, literally drag and dropping is enough to add data from another external apps to your own app. A consume action is automatically generated, and little authentication configuration is needed. You can directly start building pages and microflows on these magic purple entities. No need to worry about paging, sorting and retrieving the data. In a of couple minutes you have a working integration and in this example you can easily use the address or customer information in your Mendix app, without the need for replicating the data or building a specific REST service.
Getting an overview of connected apps in a landscape
Another helpful feature is that Mendix automatically detects and administers which Mendix applications are using which Catalog assets. This is presented in a nice graphical feature called the Datahub Landscape. From the Mendix documentation: “The Data Hub Landscape presents a graphical view of the registered OData services in your Data Hub. It provides a landscape visualization of items registered in the Data Hub Catalog and their relationships with apps that consume the datasets that they connect to.”
So it gives an overview, together with some nice visuals. With a graph-like presentation layer, Mendix made it really look nice and helpful. Giving a generated & automated overview of your integration landscape is something common for integration and middleware products, but in Mendix landscapes with many apps this was not possible until this day.
In a real-life practice with hundreds of services, giving a clear overview will still be difficult and messy, but the landscape view is a great help to see which versions of which services are used where. Knowing this as a Mendix developer operating in a large ecosystem is already very valuable because you will get informed on:
- Relationships & dependencies between apps
- Interconnection between datasets
- Multiple versions of datasets used in apps
- Discover the context of the data
Connecting the outside world
What if you need to integrate with systems and applications with no OData support? Mendix works with partners providing additional services on top of the Mendix Data Hub. The strategic partners of Mendix, Siemens and SAP both have tightly integrated services with the Data Hub. Siemens with the MindSphere platform, bringing the business intelligence of IoT assets to the Datahub. SAP with out-of-the-box OData services for a wide variety of SAP solutions. Next to the strategic partnersthere are also technology partners like iPaaS Platforms bringing their capabilities to the Data Hub.
eMagiz, as a launching partner, delivers extra features fueling the Mendix Data Hub capabilities. Registering services and integrations from eMagiz iPaaS is easy with a ‘publish to Datahub’ feature from your eMagiz catalog. In the Data Hub Catalog, eMagiz assets are usable, even when the source systems don’t support OData. eMagiz handles the transformation to other protocols, for example SOAP and REST, but also other exotic and less common protocols (such as IBM RPG Functions on AS400, TCP, etc) are supported. Next to protocol transformation, eMagiz also handles the data, text and semantics transformation. You are no longer forced to use the data structure of the source system.
eMagiz automatically parses OData queries, which are required to make Data Hub integrations work. This makes it possible to add numerous other types of applications and systems to the Data Hub, which are natively not supported. As an extra, eMagiz makes it also possible to access systems that do not support polling mechanisms. Imagine there are many applications and legacy systems that are only able to push data, eMagiz makes it possible to leverage this data into the Data Hub by supporting OData queries on top of this data.
If you are interested in a little more information about the Mendix Data Hub or about the extra features eMagiz provides, message me on LinkedInI’ll be happy to tell you some more about it. Thank you for reading!
By Samet Kaya, Software Delivery Manager @ eMagiz