I wrote recently about the reasons In-Memory Data Grids (IMDGs) could be a game-changer for enterprise mobility. In that blog I argued that faster processing would allow more users to access business processes on mobile, with instant data retrieval and smart searches; but that this increased connectivity would place greater strain on networks.
Today I want to talk about how smart mobile platforms, underpinned with In-Memory Data Grids, can be used to optimise your enterprise applications’ data needs, and provide some pointers for what to look for in your enterprise mobility solution.
Here are five things organizations should demand from a mobile application development platform:
Why use a mobile platform?
The advantages of using In Memory Data Grid architecture far outweigh the potential future disadvantages of running out of bandwidth, but you can sidestep this problem altogether with a smart mobile platform which will also help your users work more effectively today. In Memory Data Grids are key to this.
Today’s enterprise mobility isn’t just about building “an app” (or even several apps) or providing mobile access to your CRM or ERP, for instance. It’s all about giving your users the ability to complete work tasks where and when they want, on whatever device they want. This means that enterprise mobility is about providing windows onto a business process, and that’s a very different proposition.
Consider a travelling salesperson who needs to update customer records after a meeting. Not only do they need to access the CRM, but if the meeting has been successful then the next step might be for a credit check or for an order fulfilment in the ERP. That user can work far more effectively if their sales process app can access data across multiple systems.
So what we end up with as a smart enterprise mobility solution is in fact a multitude of back-end processes which can present integrated data in a natural way on any mobile device. That’s a smart mobile platform, and In Memory Data Grids are the enabler.
Recap: What are in-memory data grids?
As a quick refresher (or take a look at my previous blogs on this subject, “Why In-Memory Data Grids Are A Mobile Game-Changer” and “Why In-Memory Data Grids Are A Must For Enterprise Integration”), In-memory data grids are a combination of in-memory computing and data grids.
In-memory computing uses memory as a storage area while tasks are being processed, rather than writing to a disk, thus providing greater processing speeds. Data grids distribute the data across a network, storing it in servers which are all active, and this provides dynamic scalability and redundancy in the system.
Scalable, rapid and resilient messaging
There are three advantages of in-memory data grids that will provide your mobile apps with rapid, scalable and resilient messaging: dynamic scaling, co-location and write behind:
Dynamic scaling: by underpinning your applications with an in-memory data grid, your APIs can be served by multiple server processes running across multiple machines, both physical and virtual. The nodes of machines in your in-memory data grid space work together, storing large amounts of data in memory and achieving high performance, dynamic scaling, and fail-safe redundancy. Because data and business logic are replicated across all machines in the grid, you have redundancy and high availability even if machines or software fail.
Co-location: because data and processing are located together, processes execute as they enter the system, reducing network traffic and the overhead of serialisation and de-serialisation. By reducing data transport requirements, co-location boosts elasticity through scalability and reduced maintenance, allowing in-memory data grids to serve real-time business clients.
Write-behind: in-memory data grids can use write-behind to provide reliable asynchronous persistency, or in plainer language, both users and the system can continue working while data in held in memory, and can be written to disk at a later time. By avoiding the performance disadvantage of writing to a database, in-memory data grids can greatly increase the responsiveness of mobile applications, without risking data integrity.
Why In-Memory Data Grids Enable The Smart Mobile Platform
If the goal of enterprise mobility can only be attained with effective business data and logic integration to create robust business processes, then In Memory Data Grids are key due to their ability to accelerate data processing, provide failover and fault-tolerance, and elastic scalability. In user language, this means the applications are always available, always fast, and always reliable.
This means that users are able to rely on mobile for an increasing number of business processes, as they know they can easily complete any business task on any device, rapidly and predictably. However, the advantages of using In Memory Data Grids don’t end when you run into network problems: you can set up your smart mobile platform to use data intelligently, enabling offline working and maintaining performance on congested and slow networks.
Any good modern mobile application development platform will include the ability to build in offline access to your enterprise applications, along with all the management and security this requires. This is particularly relevant for us because offline access isn’t just about working where you have no data network: it also allows you to intelligently set policies to cache information to work on later, avoid user access conflicts and work effectively when networks are slow or expensive (such as data roaming).
The value of in memory data grids in this instance is the fast processing times, which allow users to very quickly cache data on their device and upload the work they have completed when they do have good network access, making them more efficient, more likely to trust mobile working and less likely to think caching is too much of a chore.
David Akka is Managing Director at Magic Software Enterprises UK. Follow David Akka on Twitter: www.twitter.com/davidakka
Click for the online version