4 ms·
Most definitely. If, for example you've got a vector of structs (which is a basic tabular store, that is row major). Depending on the operations you're perform
by hermitdev 7y ago
Most definitely.
If, for example you've got a vector of structs (which is a basic tabular store, that is row major). Depending on the operations you're performing, you may see huge performance benefits from instead using a column oriented data structure. Especially with very large datasets. A large part of this because of cache locality and prefetch.
I see this in finance often. For querying large, slowly changing datasets, column store RDBMS destroy traditional row oriented stores. Column stores can be colloquially an order of magnitude faster for some operations, such as computing aggregates grouped by a date (but theyre significantly much slower for inserts and even more so for updates).
As usual, when it comes down to optimizations, depends on the use case, and experiment and measure, measure, measure.
Also, another big caveate is that it can change arbitrarily with different hardware or even OS revisions.
Edit: spelling