aspnet / DataAccessPerformance

Benchmarks, prototypes and discussions for database access performance investigation
MIT License
116 stars 26 forks source link

Standardized ADO.NET provider benchmarks #37

Open roji opened 6 years ago

roji commented 6 years ago

To facilitate comparison of provider performance and and especially to help zero in quickly on problematic areas, we could set up a standardized, cross-provider ADO.NET benchmarking suite. This would be a set of BenchmarkDotNet benchmarks that would test common, standardized scenarios and provide a clear view of where each provider is on every operation.

This could be a published nuget that each provider extends (pros: customization, disabling of certain scenarios, adding of others) or one repo where all providers are included (pros: easier to produce a simple, clear comparative report such as https://github.com/dotnet/corefx/issues/7810#issuecomment-346109151).

What do you think?

@bgrainger, @sebastienros, @divega, @ajcvickers, @anpete

niemyjski commented 6 years ago

I think this would be really good to have. Would this cover more common usages of how providers are used as well? I think one scenario that should be looked at is at using DataTables (filling / consuming). I've seen a ton of legacy code over the years that uses data tables.

roji commented 6 years ago

@niemyjski DataTables aren't really part of the ADO.NET provider - they're a layer above it, utilizing the provider underneath a bit like a loosely-typed micro-O/RM. So I don't think it would make much sense to benchmark that...