Skip to main content
10 events
when toggle format what by license comment
Jun 17, 2016 at 23:57 comment added Jordan Rieger I just finished a test in my production environment, and it was 3x faster, presumably due to much better I/O. I also found that my parsing of the child lists was taking up more time than I thought during the inserts. But this answer set me on the right track.
Jun 17, 2016 at 23:55 vote accept Jordan Rieger
Jun 17, 2016 at 20:38 comment added Jordan Rieger Less logging, lower footprint? I dunno, I don't have any experience with it, which is part of the reason for my question. My use case is not very "relational", it's essentially two tables with a bunch of giant set/list operations. But my instinct is that SQL Server should be fine with the right hardware.
Jun 17, 2016 at 15:37 comment added Greg I am not sure why you would think nosql would solve your issue.
Jun 17, 2016 at 15:02 comment added Jordan Rieger Yes, I'm starting to think the same thing. I did the initial staged insert without any indexes, and it still took 50 minutes to insert 130 million rows. The total space used for the table was about 3 GB, meaning it was only working at about 1 MB/s. (But I will try to get more exact numbers from performance counters.) The Dev database I'm using is on an older VM and serves some other applications, so maybe it's heavily I/O bound. I'm going to have to setup a test on my faster Production DB to really tell whether SQL Server will cut it or if I should adopt some NoSQL tool.
Jun 17, 2016 at 5:19 comment added Greg If you are disk bound, I don't think there is much more you can do. Can you tell us your disk Io numbers?
Jun 16, 2016 at 21:08 comment added Jordan Rieger I think for my next attempt, I will try inserting without indexes, and then creating the index afterward while filtering duplicates.
Jun 16, 2016 at 21:08 comment added Jordan Rieger I have the database configured to Simple recovery model, which I think is even faster than Bulk Logged. I'm not concerned about disaster recovery as we can get fresh data from the downloads each night. I know it's not auto-growing because I set the initial size to 10 GB and the tables are still under 6 GB total (plus no growth events are present in the trace log.) As for table variables, I'm not using them for anything other than passing the data to the SP that inserts into the staging table (i.e. no filtered queries against the table-valued parameter.)
Jun 16, 2016 at 20:27 history edited Greg CC BY-SA 3.0
added 270 characters in body
Jun 16, 2016 at 20:15 history answered Greg CC BY-SA 3.0