views:

34

answers:

1

I'm trying to design a system similar to the traditional server monitoring systems like MOM, Tivoli, Open View, where an agent will record data and then upload it to a central database once a day, but them also be able to send immediate alerts back to the server. I'm not sure what the best methodology might be for this. I've started looking at Microsoft sync services but I'm not sure if it will fit my needs. I'm using VS2008 and C#. Does anyone have any experience or ideas about how I should go about this task?

A: 

This entirely depends on the scale and type of data. A simple solution would be to monitor your data and then store it to a flat file to use SQLBulkLoader to your database. If you had immediate alerts and wanted them to still be handled by the DB you could simply do an insert statement when those alerts happen rather then adding them to flat file.

You can look at: http://dev.mysql.com/doc/refman/5.1/en/load-data.html for info on loading large amounts of data via an infile (SQLBulkLoader library for C#).

NebuSoft
Thanks. The scale I'm looking at is about 500 client machines (citrix servers) uploading performance metrics.I have a simple solution at the moment based on vbscripts, mysql and php web pages. The clients send only a small amount of data in a flat file to the server but this means I have to create a shared folder on the server with "everyone" write access so that the clients can copy their data to it. There may be a better way of doing it that I'm missing. SQL bulk load is quick though
RickBowden
Well the only advantage I'd see for SqlBulkLoader over how you're doing it now would be it would eliminate need for that shared folder on the server with everyone write access. The .NET Connector would automatically handle transferring the data to the MySQL Server, so the client doesn't require any filesystem permissions. There are certainly other ways of designing it, but it depends how complex you want it.
NebuSoft
Thanks for the info, I'll look into the .NET connector. I don't like the shared folder approach.
RickBowden
Ah, for this project I'm using SQLExpress not MySQL. How would I go about getting the data in the flat file uploaded from the client to the server without file permission issues?
RickBowden