Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have an issue (I think) with my SharePoint 2010 ADO.NET Data Services.

I understand that using Data Services is an extra layer and as such might inhibit performance a little, but I was not expecting what I found.

I am running SharePoint 2010 in a VMWare machine on an SSD drive (Windows 2008 R2).

Currently, requesting mt lists of lists takes 0.5 seconds consistently, even though it's only a collection of 20 list names:

http://localhost:99/sites/blah/_vti_bin/ListData.svc

Using the Server Object Model, this takes 0.05 seconds. ADO.NET seems to be 10x slower Obviously the overhead might be flat and at higher volumes plateau at a 0.4 second overhead regardless. But it's still slow in my opinion.

I have done a lot of tests of serializing XML, custom WCF services etc. and nothing seems to indicate that such a small results set should take so long to load.

Any suggestions would be incredibly welcome!!

Or is this the performance I should expect??

What do other people get?

Many thanks

share|improve this question
add comment

1 Answer

up vote 1 down vote accepted

My experience has been that the Client OM (at least for JavaScript) is a bit faster than the List Data service, but the performance differences for most queries has been very close. Certainly not the kind of difference you are seeing, but I never specifically measured the $metadata operation.

Normal List Data queries against a list are just mapped to the underlying Linq provider and executed using native SharePoint CAML. In this regard, the List Data service is a relatively thin layer over native SharePoint functionality.

When you invoke the root ListData.svc to return the lists on the site, you are invoking the $metadata operation of OData, and the List Data Service has to create and format the AtomPub feed for that operation custom. There is no native SharePoint equivalent. I suspect that is what is taking the extra time.

share|improve this answer
    
Thanks for the feedback. I get this half second delay on any request, it's a bit baffling. –  Josh Comley Jun 16 '11 at 9:34
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.