The GT.M database structure is hierarchical, based on a balanced tree (B-tree) structure. The B-tree contains blocks that are either index or data blocks. An index block contains pointers used to locate data in data blocks, while the data blocks actually store the data. Each block contains a header and records. Each record contains a key and data.