InfoQ

News

SQL Server Data Services: Microsoft's Answer to Amazon S3

Posted by Hartmut Wilms on Mar 06, 2008 03:27 PM

Community
.NET,
SOA
Topics
SaaS
Tags
SQL Server 2005,
SQL Server 2008

Microsoft has announced SQL Server Data Services (SSDS) at MIX08. Being a storage service on the web, SSDS is Microsoft's Amazon S3 competitor.

SSDS is another Microsoft service running on the web in addition to BizTalk Services. Neil Hutson offers a concise summary of what SSDS is all about:

SSDS you can think of as a structured data store in the cloud(building block service), which is accessed using Internet protocols using a basic data manipulation language. SSDS is for developers and businesses that need scalable, easily programmable, and cost-effective data storage with robust database query capabilities.

The SQL Server Data Services offer a flexible data model, which is structured as follows: Customer > Account > Authority > Container > Entity. Customers are companies or individuals that use SSDS. Each customer might open an arbitrary amount of accounts, which is connected with a unique Windows Live Id. Authorities are a concept analogous to namespaces,  and are  a in the context of billing and geo-location. Containers are a unit of consistency, defining boundaries for search and update operations.  The smallest and fundamental data unit is the entity.

Neil Hudson describes this fundamental data unit as "a Flexible Entity Model, where no schema required and you can update name/value pairs (which is the smallest unit of storage)". The name/value pairs represent properties, whose type information can be changed on the fly. Properties maybe added at any time. SSDS supports "simple types such as decimal, string, bool, etc and all the properties are indexed".

Data can be accessed and altered in many ways:

  • Microsoft Sync Framework (offline access)
  • ADO.NET Data Services
  • REST
  • SOAP

Data can be manipulated by CRUD operations on authorities, containers, and entities. Queries can be executed based on a text base query language, whose syntax follows the LINQ pattern for C#.

Regarding the predominance of Amazon S3 on the web storage market Robert Scoble said:

It’s almost too late for the others to get into the game [of data storage on the web]. It’s amazing (or maybe it should be “amazoning”) to me that Ray Ozzie over at Microsoft has let Amazon have so much runway.

According to Jamie Thomson nothing's carved in stone, yet:

Can [Microsoft] stop Amazon? Who knows, it might slow them down a bit (when SSDS finally gets released - it hasn't even reached beta yet) but Amazon are already miles and miles ahead with this. Having said that, its difficult to know how far Amazon have got into the enterprise data storage market and that will be Microsoft's key battleground.

Further information can be found on the product web site and the SSDS whitepaper.

2 comments

Reply

WS computer cloud and S3 surpassed the usage of all of Amazon.com's global by Jean-Jacques Dubray Posted Mar 7, 2008 8:22 AM
Good to have some competition by Ted Slusser Posted Mar 7, 2008 8:44 AM
  1. Hartmut: an interesting piece of information came out yesterday on the Seattle Times. Brier Dudley reported that:

    Bandwidth usage by the AWS computer cloud and S3 storage services during the fourth quarter of 2007 surpassed the usage of all of Amazon.com's global Web sites. That's during the holiday shopping season.
    If anyone doubt that this is real, this is yet another piece of evidence.

  2. Back to top

    Good to have some competition

    Mar 7, 2008 8:44 AM by Ted Slusser

    I see this more as a competitor to SimpleDB than S3, but nevertheless, I think this is a great thing for the market. Amazon, please pay attention. I really like these features of SSDS that SimpleDB is lacking - Support for simple types: string, numeric, datetime, boolean - Query language supports the retrieval of complete entities - Use the same service interfaces for your storage needs at any scale (SimpleDB vs S3) AWS outage notwithstanding the future is very "cloudy"

Exclusive Content

Rationalizing the Presentation Tier

Thin client paradigm characterized by web applications is a kludge that needs to be repudiated. Old compromises are no longer needed and it's time to move the presentation tier to where it belongs.

Agile Project Management: Lessons Learned at Google

In this presentation filmed during QCon 2007, Jeff Sutherland, the creator of Scrum, talks about his visit at Google to do an analysis of Google's first implementation of Scrum.

AtomServer – The Power of Publishing for Data Distribution

In this article, Bryon Jacob and Chris Berry introduce AtomServer, their implementation of a full-fledged Atom Store based on Apache Abdera, which is now available as open source.

An Introduction to Virtualization

It is easy to think that virtualization applies only to servers. In reality the recent resurgence of the concept is also being applied to networking, storage, and application infrastructure.

REST Anti-Patterns

In this article, Stefan Tilkov explains some of the most common anti-patterns found in applications that claim to follow a "RESTful" design and suggests ways to avoid them.

Choosing between Routing and Orchestration in an ESB

In this article, Adrien Louis and Marc Dutoo discuss the differences and relative merits of using orchestration vs. routing in a typical ESB setup, and discuss various implementation options.

Enterprise Batch Processing with Spring

Wayne Lund discusses batch processing, Spring Batch objectives and features, scenarios for usage, Spring Batch architecture, scaling, example code, failures and retrying, and the future roadmap.

User Story Estimation Techniques

Developer Jay Fields draws on his experiences as a ThoughtWorks consultant to describe effective user story estimation techniques.