Ajarn Mark Caldwell Blog

Bringing Business Sense to the IT World…

Native Web Services in SQL 2005

Just got back from the local SQL Server User's Group meeting tonight where the topic of discussion was Native Web Services in SQL 2005.  There were a few points that stood out, which I will share with you here.  But before doing that, a note to everyone who attended the PASS Community Summit in Orlando, or who by other means acquired the SQL Server 2005 Beta 2 Resource Kit.  When this was handed out at PASS, it didn't sink in just what all was on here.  We were reminded tonight that, in addition to SQL Server 2005 Developer Edition Beta 2, the resource kit contains about 70 technical training webcasts, and a dozen or so hands-on labs all prepared within Virtual PCs.  Very cool!

Now, back to web services...our speaker was very knowledgeable, and I'm sure there are many important things he covered that just sailed by me, but here's a recap of some of the things that stuck:

  • Native Web Services in SQL 2005 is a complementary technology to, not a replacement for SQL XML.  They have different capabilities.
  • One big goal was outreach, meaning that Microsoft wanted to enable any client on any platform the ability to connect to SQL Server.  So, a perl application or a Unix workstation would still be able to connect and query a SQL Server.
  • NWS could make a good alternative to JDBC for Java applications.
  • Do NOT use NWS for real-time highly concurrent access databases with short duration transactions.  The overhead of SOAP and Web Services is too high right now for this to be efficient.
  • When using NWS, a key part is the definition of an Endpoint, which is essentially the listener, configured to recognize its requests and to fire your procedures.  The Endpoint is created with a DDL command (CREATE ENDPOINT...).  The Endpoint is secured in that only members of sysadmin, and the owner of the Endpoint can access it by default.  Individual users or roles can be GRANTed CONNECT access.
  • Coming soon (perhaps in Beta 3) Endpoints will be able to be defined for TCP connections, not just SOAP.  This will enable you to do things like IP Filtering for added security.

That about covers what I got out of tonight.  I had to leave early, and there was a lot more covered that I just didn't get written down.  I would again encourage any SQL professionals to locate and join their local user group.  There is a lot of good information out there being shared for little or no cost.  Take advantage of it!