Why the Database as a Service is a Bad Idea - InformationWeek
IoT
IoT
Government // Enterprise Architecture
Commentary
8/16/2008
12:00 AM
Commentary
Commentary
Commentary
50%
50%
RELATED EVENTS
Moving UEBA Beyond the Ground Floor
Sep 20, 2017
This webinar will provide the details you need about UEBA so you can make the decisions on how bes ...Read More>>

Why the Database as a Service is a Bad Idea

Microsoft recently released SP1 for .NET. While the SP brings some nice stuff it seems, it also has some bugs and a few less than inspiring components

Microsoft recently released SP1 for .NET. While the SP brings some nice stuff it seems, it also has some bugs and a few less than inspiring components . Another example for a less-than-stellar idea is the "ADO.NET data services" component.

 

Before I go on to explain why I think that, I should probably mention that this isn't just a Microsoft thing, as IBM also mentions similar ideas as part of its (broader and sometimes even worse) view of "Information as a Service"

So why is exposing the database through a web service (RESTful or otherwise) wrong? Let me count the ways:

  1. It circumvents the whole idea about "Services". There's no business logic.
  2. It makes for CRUD resources/services.
  3. It is exposing internal database structure or data rather than a thoughtout contract.
  4. It encourages bypassing real services and going straight to their data.
  5. It creates a blob service (the data source).
  6. It encourages minuscule demi-serices (the multiple "interfaces" of said blob) that disregard few of the fallacies of distributed computing .
  7. It is just client-server in sheep's clothing.
When it comes for ADO.NET data services you can add a few other problems like
  1. it isn't really RESTful. You can also "enhance" the services with operations like example 18 in "Using ADO.NET data services" : http://host/vdir/northwind.svc/CustomersByCity?city=London   (though it does support caching and hypermedia ). Not being only RESTful is not a bad thing in itself. It is the inconsistency of the API when the reson de etre of the service is exposing data
  2. Also (on not being RESTful) it doesn't really externalize a state machine --  it externalizes a relational model
  3. It is built on Entity Services.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
How Enterprises Are Attacking the IT Security Enterprise
How Enterprises Are Attacking the IT Security Enterprise
To learn more about what organizations are doing to tackle attacks and threats we surveyed a group of 300 IT and infosec professionals to find out what their biggest IT security challenges are and what they're doing to defend against today's threats. Download the report to see what they're saying.
Register for InformationWeek Newsletters
White Papers
Current Issue
IT Strategies to Conquer the Cloud
Chances are your organization is adopting cloud computing in one way or another -- or in multiple ways. Understanding the skills you need and how cloud affects IT operations and networking will help you adapt.
Video
Slideshows
Twitter Feed
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.
Flash Poll