For a long time I’ve been saying that the Grid is nothing but an application domain of distributed computing and that it needs no new infrastructure. Our latest paper supports this statement and proposes the use of stable infrastructure technologies (in the WS-* space) for realizing high-level, Grid application domain-specific services. Mark Baker suggested we should have used the term “Web” instead.
Well, I disagree (surprise surprise :-)! I see the Web primarily as a way for accessing information (it’s a hypermedia application after all, no?). Over the last few years it has been used as a platform for the delivery of services which is fantastic! However, shall we refer to those banking-related services as “the Web”? Shall we call the bioinformatics-related services as “the Web”? What about the credit-card related services? Are those the “Web” again? Granted, they can all be built on top of the Web, but so what? The Web itself is built on top of TCP/IP, the Internet. I don’t hear anyone supporting the use of the term “Internet” instead of “Web”.
We need terms like “Grid”, “banking”, “astronomy” to disambiguate application domains, irrespective of the platform or suite of technologies that are used to realize them. Could the set of services specific to the “Grid” application domain have been built using Web-only technologies? Sure it could. Mark McKeown in Manchester and Jon MacLaren at Louisiana State University are trying hard to prove just that. They are doing excellent Computing Science-related research (HARC: A Highly Available Robust Co-scheduler) based on Leslie Lamport‘s and Jim Gray‘s works and they are building their demonstrators using POX over HTTP (brave souls that they are :-)! You should definitely have a look at their work. I know that they have just submitted something to a good conference and I hope it’ll get accepted because this is excellent work. I am sure there are other examples out there. But so what? There are also examples using WS-* technologies, CORBA, or even plain-old-good-TCP/UDP.
Back to our story. No, it’s not everything about the Web. And it’s not about REST or Service-Orientation or MEST. It’s about coming up with architectural principles as guidelines or food for thought rather than religious and dogmatic beliefs (something that I’ve been learning here in Microsoft close to Don). So I agree with Don‘s post on “pragmatics”! We have to support everything, we have to be able to enable all approaches. No more REST vs Service-Orientation (I know people like to refer to this argument as “REST vs SOAP” but we’ve already covered this in the past).
Now, why the reference to Alanis‘ song in the title of this post? Well, it turns out that in addition to “SSDL”, people here in Microsoft have been hearing me saying the word “Web” too many times 🙂 Who? Me? 🙂 I have been advocating in favor of some of the Web principles (and I am not the only one here or in other companies). It’s not necessary the case that something will happen but one has to try. Please note that this is not about product integration with the Web (the information kind :-); this is already happening to a certain degree (you should see some of the Office 2007 stuff). Instead, we need to bring some of the good ideas of the Web in the way we build applications, in the way we build infrastructure for enterprises.
I have been partly responsible for the vision, architecture, and delivery of some investigation work related to resource ‘indexing’, ‘retrieval’, ‘metadata’, and more. The work finishes at the end of the week when we are presenting our findings internally. It’s going to be very interesting. Lots of “Web” ideas in the way our Information Model was designed and also few hints about that “S” word we sometimes see in front of the “Web” (although I am avoiding its explicit reference in the discussions 🙂
And all the above is related to some degree to the more general “Overlay Webs” idea about which I have hinted before. Still haven’t found the time to write about it though.
2 responses to ““Web” or “Grid” – Isn’t it ironic?”
Couldn’t agree more. I also hate the slavish way in which the mantra of “Web Services are good for Grid” is repeated by many people. Most of the largest Grid applications I know of today don’t use Web Services (or even the Web) and AFAIK never will: however, they do use some very similar architectural patterns! That’s an important aspect that we’ve taken on board in the development of the JBoss SOA infrastructure.
I think you misunderstood the intent of my comment, Savas. I was just pointing out that the description you offered for the Grid is one that could just as easily describe the Web.
Since the goals are so similar, a consequence is that grids aren’t on the Web and therefore don’t get to benefit from the network effects of the Web; they’re starting from scratch, where network effects = zero. And given the 15 year head start of the Web, and the nature of network effects, it’s inevitable that the Grid will eventually be part of the Web. So why not start off on the Web?