|
|
|
|
|
by ahachete
2316 days ago
|
|
Don't get me wrong, both RocksDB and the work done by CCDB is pretty cool. Yet I still believe that layering a row model as the V of a K-V introduces by definition inefficiencies when accessing columnar data in a way that row stores do, as compared to a pure row storage. Is not that it can't work, but that I believe it can never be as efficient as a more row-oriented storage (say like Postgres). |
|
In case you didn't know, a row [idA, valA, valB, valC] is not stored as [idA: [valA, valB, valC]]. It's more [id/colA: valA, id/colB: valB, id/colC: valC] (modulo caveats around what we call column families[0], where you can have it be more like option (a) if you want). My explanation here is pretty bad, but [1][2] go into more details.
[0]: https://www.cockroachlabs.com/docs/stable/column-families.ht...
[1]: https://www.cockroachlabs.com/blog/sql-in-cockroachdb-mappin...
[2]: https://github.com/cockroachdb/cockroach/blob/master/docs/te...