Working on some code the last few days. Was using one design that was really nice, but someone brought up that it might be a little slower than another approach. My design was nicer - but we need to worry about performance so I figured I'd better benchmark it.
It took an extra second to process 2500 records. Doesn't sound like much, but when you process 25 million records - it comes out to 2.77 hours in a day. So yeah, need to update the design.
And given we are processing 280 million records a day overall, in some cases you have to make it a bit more ugly if its going to save you some time.