Freigeben über


Dataset performance improvements in frameworks V2

System.Data.DataSet contains some very significant performance improvements over prior versions – particularly for large result set scenarios.

In particular,

  • Highly efficient Binary Remoting -- For large Dataset, orders of magnitude better than v1.x
  • Row Insert, Delete and Modify operations – For large Dataset, orders of magnitude better than v1.x. For instance, for a DataTable with PrimaryKey constraint, inserting million rows in random order takes around 45 seconds. Everett took 30 Minutes.
  • Maintaining DataViews in sync with underlying DataTable was very expensive in v1.x, In Whidbey it’s extremely fast – orders of magnitude better.
  • WebServices/Remoting for TypedDataset: It can be send across to other end without having to send its schema, significantly reducing the serialized payload and giving approx 4x+ improvement in end-end latency.

The following article (in addition to highlighting some new V2 features) also details the performance improvements.

Comments

  • Anonymous
    February 16, 2005
    Ohhhh good news. I have always loved datasets and use them all the time when performance isn't an issue. They are an extremely useful tool.
  • Anonymous
    February 16, 2005
    So I can stop recommending that people should build entity classes and collections instead of using the horribly unscalable DataSet object?

    That's a relief although I'm so used to building API's without it that it will be hard to go back.

    You say it's faster, but is it as fast as non-DataSet entities?
  • Anonymous
    February 22, 2005
    Ohhhh good news. I have always loved datasets and use them all the time when performance isn't an issue. They are an extremely useful tool
  • Anonymous
    February 22, 2005
    http://www.52z.com
    http://www.yxdown.com
  • Anonymous
    February 28, 2005
    If they can be improved "orders of magnitude better than v1.x",
    - what is the performance of datasets in v1.x?
    - what features will datasets in v2.x have, that will be improved to "orders of magnitude better" in v3.x?