int metaSize() {
            int cniSize = 0;
            for (ColumnNodeMeta cni : columnNodeInfos) {
                cniSize += cni.infoSize();
            }
            int colInfoSize = 0;
            for (ColumnMeta info : columnInfos) {
                colInfoSize += ((ColumnMetaV1) info).metaSize(version);
            }
            int size = 8 + 8 + 8 + 4 + cniSize + colInfoSize;

            switch (version) {
                case Version.VERSION_0_ID:
                    return size;
                case Version.VERSION_1_ID:
                case Version.VERSION_2_ID:
                case Version.VERSION_4_ID:
                case Version.VERSION_5_ID:
                    return size + 8 + 4;
                default:
                    return size + 8 + 4 + 4;
            }
        }
Store segment column by column.

<pre>
Segment storage structure:
|  IXRSEGxx | sementMeta | column0 | column1 ... | outerIndex0 | outerIndex0 ... |
            | <---                      sectionSize                        ----> |

Column structure:
|  dpn | rsIndex | extIndex | dataPack |
</pre>
indexr-segment/src/main/java/io/indexr/segment/storage/itg/IntegrateV1.java