Size of indices

Quick question about indices (I’m getting my information from — is 40 bytes of memory the average amount (I realize the precise value is probabilistic) both simple and composite indices take per row, or is that value per column indexed? I understand from the docs that if I index column A, I use 40 bytes per row no matter the datatype, and if I composite-index (A, B), I use 40 bytes per row per column, so 80 bytes per row. Is that correct?

VoltDB ( is more explicit about index sizing, so that’s where I’m coming from. E.g. BINARY(1024) will have an index size of 1024+1 bytes, while BIGINT will have an index size of 8 bytes. Seems like it’s not so cut and dry for MemSQL.

It’s 40 bytes per row per index - the number of columns in a composite index and the columns’ datatypes do not affect the index size.

Perfect, that makes me rest much easier. Thanks so much!