These benchmarks were produced by our benchmark program.
"SFD" stands for "SuperFastDistinct!" and is represented by the dark blue bars.
- The red bars are those of the 3rd party database SQL engine.
- The database was local shared, on the same machine as the benchmark program with only 1 user
- Shorter bars indicate better performance.
The time to retrieve 50 distinct values from 1 million row table (local database)
SuperFastDistinct! (SFD) is over 20x faster than SQL on large million row tables
(Smaller bars are better. These results are uncached)
Distinct values from small tables can be retrieved in virtually no time at all,
without using any memory cache!
(Smaller bars are better)
Super fast over the Network
Not only can SQL queries consume a lot of memory, but with a LAN based (non-client/server) table like Paradox, or any 3rd party LAN database for that matter, it has to move the entire table (700MB) over the network to the client machine in order to find the distinct values. This can dramatically impact network performance. But SuperFastDistinct! doesn't have that problem because it doesn't have to see the entire table in order to get the distinct values. It just "cherry picks" the distinct values from the table using our proprietary algorithm that traverses the index. This will barely amount to a blip on the network traffic monitor.
To test it, we ran our benchmark program over a 100mb network to extract the distinct values from a 1 million row Paradox table. Paradox SQL took 5.9 minutes to find all the distinct values and re-running the benchmark a second time took roughly the same amount of time. We then ran SuperFastDistinct! on the same table over the same network and it took 156 milliseconds. That's right, milliseconds. That's quite a speed improvement, 0.156 seconds compared to 5.9 minutes. But it gets even better. Running SuperFastDistinct! several more times dropped the time down to between 0ms and 16ms. So unlike SQL, SuperFastDistinct! will actually speed up the second time it is run over a network. Over a network, SuperFastDistinct! was over 2,000x faster than Paradox SQL with large LAN based tables. Hey, we did said it was fast. :) We also re-ran the benchmark with all of the supported 3rd party LAN based databases and SuperFastDistinct! was still 500x faster than the nearest rival. So if you need to retrieve distinct values from large LAN based tables over the network, it better be SuperFastDistinct!.