|Home • Patterns • Ramblings • Articles • Talks • Download • Links • Books • Contact|
Mashups Tools Market
August 18, 2007
|DDD - Diagram Driven Design|
|What Does It Mean to Use Messaging?|
|A Chapter a Day...|
|Clouds and Integration Patterns at JavaOne|
|My First Google Wave Robot|
|Into the Clouds on New Acid|
|Design Patterns: More than meets the eye|
|Reflecting on Enterprise Integration Patterns|
|Google Gears Live From Japan|
|Double-Dipping: OOPSLA and Colorado Software Summit|
|Enterprise Mashup Summit|
|Facebook Developer Garage|
|Mashups Tools Market|
|Mashups == EAI 2.0?|
As I reported from Mashup Camp, an increasing number of vendors play in the mashup space. I am obviously not the only one who noticed. Dion Hincliffe recently discussed 17 different mashup tools. Maybe I have an MBA hidden inside me (or 10 years of consulting left some marks), but I was temped to conduct my own market segmentation. Gartner would be proud of me. Just be aware that my analysis is not meant to be comprehensive and all statements carry a 0.5 probability of being right :-)
Being an old EAI type, one classification that immediately sprung to my mind is the separation between adapters, transformation, and presentation. These terms might be a little dated but each segment still offers a critical piece of behavior. My "picture" of the market would look something like this:
Mashups are all about data. So let's start with the data sources, i.e. the right hand side. Mashups like simple XML data sources, ideally RSS or Atom feeds. These are not yet too common in the enterprise, so making data sources available is step one. These tools might scrape information off HTML pages (e.g. Dapper or OpenKapow), or enable more traditional data sources like data bases or enterprise applications. In the mashup world these "adapters" either produce feeds or allow REST-like requests against their data entities.
Mashups are also about combining data in interesting ways, for example plotting meeting locations on a map, correlating neighborhoods with crimes, and the like. This is the domain of transformation and aggregation tools. These tools can enrich incoming data streams, extract data from XML documents, or perform more advanced functions such as geocoding. Yahoo! Pipes is probably the most prototypical implementation of the transformation layer.
Of course the real world is not all black and white. A number of tools span more than a single layer. For example, Microsoft's Popfly seems to combine presentation and transformation (I don’t have an account yet). Pipes has a default presentation layer, which for example plots locations on a map. Snaplogic does both data sourcing and transformation.
You might have noticed that my picture does not include any service providers. These are the folks who provide data feeds or services and enable to Web to become a true platform. I omitted them because I wanted to focus on tools. Highlights in the provider / API space are Amazon, eBay, Google, Yahoo, AOL, and many more. Programmable Web listed 498 of them at last count...
With things running in the cloud, functionality is only one half of the equation. The (possibly even bigger) half is considered with operational aspects. Is it going to scale? Is it secure? Can it survive DDOS attacks? How do I manage a large set of these mashups? Such concerns run orthogonal to the division of functionality. The only company I have come across in this space is mashery. I am sure there are others (or at least there are going to be).
Of course there are many other ways to segment this market. For example, we see open source, free (closed source) software, and commercial vendors. We also see small players and the usual heavyweights (Microsoft, IBM, Yahoo, Google etc). We can also distinguish newcomers from "converts", i.e. companies that shifted their attention from EAI or ETL into mashups.
In the Web services / SOA world, some of the operational considerations have led to the advent of integration and XML appliances (see my first rambling ever!). Should we expect to see mashup appliances? I think it would be great if I could run and manage Pipes on an appliance in my enterprise. The pitch would be analogous to the Google Search Appliance: run the service you love from the external cloud inside your enterprise, where you have full control, have access to your private data, and make sure your data never leaves your network. Anyone willing to fund me?
I have a day job, so I have limited time to play with mashup tools (my 20% project, perhaps?) High on my list is IBM's DAMIA. I heard the code name used to be "Mafia" (Mashup Fabric for Intranet Applications). No wonder that didn't make it past the corporate approval. Also, my Core J2EE Patterns friends now work at JackBe. I'll need to check out what they are up to -- they have mashup written all over them.
Lastly, my ramblings are a lot more fun if done with the proper accent, ja! My podcast on mashups in the enterprise is now live on the Google Code Blog. Enjoy!
MORE RAMBLINGS SUBSCRIBE TO GREGOR'S RAMBLINGS
Gregor is a software architect with Google. He is a frequent speaker on asynchronous messaging and service-oriented architectures and co-authored Enterprise Integration Patterns (Addison-Wesley). His mission is to make integration and distributed system development easier by harvesting common patterns and best practices from many different technologies.
|© 2010 • All rights reserved.|