If speeding up view time for your test data is your goal, then here are some
options.
For speeding up a DataSet, you end up turning off all constraints, which it
sounds like you have already hit apon. I am not 100% sure the best way to
turn off all type checking, other than perhaps make everything a string.
There is a danger in going that direction, however, as you have no type
checking if you approve the test data.
I do not know of any other way to speed things up tremendously with
DataSets. Other directions to try are LINQ and the EntityFramework. I can
tell you, from experience, that LINQ may load faster, but it will certainly
bog down on putting thousands of rows into the database. It also requires an
open context the entire time, which may or may not be a no go for you. The
EntityFramework is promising, but I have not played with it for this type of
work.
One other option is to create custom objects that you load and then your
biggest worry is putting them into the database. You can load them back into
a dataset and perhaps put up with the slowness at that point (already
approved data) or you can set up a DAL of your own. You might also choose to
bulk load from the objects at this point.
For speed, I you might also consider putting up a temp table and creating a
bulk load file. This is likely to have low impact on your current design.
You can then examine the contents from the database rather quickly or
migrate directly into the main table from there. Creating the file should
take a second or two at max, bulk loading a few thousand rows is very fast
as well. Not sure on load of the DataSet from the database, but that should
be fairly fast.
--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA
Subscribe to my blog
http://feeds.feedburner.com/GregoryBeamer#
or just read it:
http://feeds.feedburner.com/GregoryBeamer
********************************************
| Think outside the box! |
********************************************