Just lately I've been doing a bit of searching around to see what data-centric offerings, other than the ones I normally deal with, Microsoft are pulling together. The one that has most caught my eye has been Astoria. I can't remember where exactly I first heard about it but it was this blog entry by Alex Barnett that really piqued my interest. The elevator statement to describe Astoria would go something like this: "Astoria is a technology that delivers relational data over HTTP via a RESTful web service". Another way of looking at it is that it maps the HTTP verbs POST, GET, PUT, DELETE to the create, read, update, delete (CRUD) semantics of relational data that anyone reading this blog should be familiar with. And yet another way of thinking about is "SQL statements in a URI".
Astoria is also built upon the Entity Data Model (EDM). Why is that a good thing? The EDM unifies access to data in that whoever the consumer be (be it a web app developer, ETL developer, etc...) they all access data in the same way. The EDM is an abstraction of the data that we can all use.
All the talk about Astoria currently is around using it to deliver data to web applications and some people are getting particularly frenzied about how it will be used with Silverlight when that particular technology enters the mainstream. Web applications are not my bag though; I'm all about data integration and to that end I'm interested in what Astoria could bring to the table. My northern bruvver in arms, Mick Horne, and I have written on this site about Service Oriented Business Intelligence (SoBI) and one of the key facets of that is the transfer of data in a service oriented architecture (SOA). Now, a service doesn't necassarily constitute a web service per se, but we envision that when people start to realise the benefits of this architecture then web services will proliferate. I work predominantly on the Microsoft platform so clearly Astoria will be a good fit for future SoBI projects that I work on.
My main focus on my current SoBI implementation is around Master Data Management (MDM) and one thing that is currently playing on my mind is how to deliver data out of our MDM system to the data consumer. I am exploring the use of web services for this due to the inherent openness that they provide via standards and well-understood protocols. I confess that REST isn't something I know much about right now but hopefully that will change soon.
Astoria is currently in beta but as it approaches being fully baked you'll probably find me talking about it a lot more. In the meantime, here's some great links to get you started:
- The public face of Astoria is Pablo Castro. Check out his blog here.
- Here is a demo of Astoria that allows access to Tagspace data. Alex talks through the demo at the post that I linked to above.
- Astoria homepage - http://astoria.mslivelabs.com/
Is anyone else out there interested in integrating data over an HTTP network? Or is it just me?
-Jamie
UPDATE: Jon Udell has done an interview with Pablo Castro. Read more here: http://blog.jonudell.net/2007/07/03/a-conversation-with-pablo-castro-about-astorias-restful-data-services/
Posted to SoBI (RSS feed), MDM (RSS feed), Astoria (RSS feed), REST (RSS feed)