Monday, February 20, 2012

Queue insert statement what is the best SQL server 2005 feature to use?

Hello everybody, I'm not completly aware of the SQL server 2005 possibilities so I'd need an hints from somebody with a wide knowledge to understand the direction to take!

This is what I have to do.

I insert into a table XML message. the messages are pushed automatically by an application I have no ""control" on and I get several messages "at the same time".

Everytime the message is inserted into the database I need to trasform the XML data into the correspondent relational value and I know already that in some cases it could take a while (1 second can be considered a while..)
My worry is that in the moment I process one message I loose the other one inserted after ,,,

There is some tool that helps me to handte the process as I would..

I was looking into SQL service broker?

It can be the right choice?

Thank you for any help!!

Marina B.

I've moved this thread to the service broker forum as I think its one of 2 options you want to use.

I think what you want to do is make sure the data is in SQL Server first and then transform it. You could use broker to do this;

Add the message to a broker q and then add your shredding logic to an activation proc or have the activation proc call your existing shredding code.

The other option would be to use a staging table with a type of XML on one of the columns, when you get the data insert it into a row in that table and then run a batch job (from agent or a broker timer) that reads the XML, shreds it then deletes the row from thestaging table.

No comments:

Post a Comment