As we continue to work on Dodeca, we continue to stretch the limit. Today was certainly evidence of that. Dodeca already has the most powerful relational/spreadsheet technology available in the world, but our development team is not yet satisfied. Instead, they are working on making it even better. Specifically, they have implemented a cursored retrieval that will allow the Dodeca client to request a specified number of rows on each trip to the server.
To test this functionality, our dev team created some very large retrieves. The SQL itself was fairly simple in that it returned only 7 columns of data and joined only 2 tables. The performance we saw, however, was outstanding. In tests conducted on a debug build of Dodeca, they saw over 1,030,000 rows of data, or a total of over 7,200,000 cells of data, retrieved from SQL Server and filled into a worksheet in about 37 seconds. That means Dodeca is processing nearly 195,000 cells per second!
Many people ask me, "Why would you want to retrieve 1,000,000 rows of data into a spreadsheet?" Well, we have customers who retrieve massive amounts of data. We believe that, as a software provider, it isn't our place to second-guess why a customer wants to do something like that. Instead, we focus on allowing customers the freedom to do their business their way; Dodeca just makes it faster and easier. At 195,000 cells per second, I would call it really fast! How would you like to see performance like that when you do an Essbase drill-through?
Fun with Unix join (on Windows too!)
10 hours ago