9 ms·
>> I dealt with a near-billion row DB and shaving a few bytes off a row would matter to us bigly. A billion rows require a gigabyte per each extra byte in a ro
by heavenlyblue 8y ago
>> I dealt with a near-billion row DB and shaving a few bytes off a row would matter to us bigly.
A billion rows require a gigabyte per each extra byte in a row. That's nothing.
- willvarfar 8y agoI have 200 billion row mysql dbs and have measured the impact of the UUID and ULID keys its forced to deal with. In my high-insert-rate scenarios the extra bytes of these long keys equates to losing about 2000 inserts/sec, just in all the network overhead, compared to if we'd had a 64-bit auto-inc. And then, for storage, I'm using tokudb (when you have tables this big there really isn't any other viable alternative, although myrocks is newer and I haven't evaluated it). Tokudb compresses things really well, and the result is in the tens of terabytes compressed. And the problem with UUIDs and the random part of ULIDs? They are, by definition, uncompressible! Again a lot of that storage footprint is because of the damn things.