{
  "slug": "b-plus-tree",
  "term": "B+ tree",
  "aliases": [
    "B+Tree",
    "B plus tree"
  ],
  "definition": "A B+ tree is a balanced ordered search tree whose application records or record references reside at the leaves, with internal nodes routing searches.",
  "note": "Leaves share a common depth; sibling links commonly support ordered traversal. Internal separators guide searches and need not be complete copies of current leaf keys. This leaf-oriented layout is a variant within the broader B-tree family, not an exact synonym for every implementation called B-tree. [cmu]\n\nA page-layout label alone does not specify transaction visibility or crash recovery; those are additional implementation contracts. PostgreSQL's documented B-Tree structure, for example, separates leaf row references from internal downlinks. [postgresql]",
  "related": [
    "b-tree",
    "b-epsilon-tree",
    "lmdb"
  ],
  "citations": [
    {
      "id": "cmu",
      "title": "Carnegie Mellon 15-445/645, Fall 2024: Indexes & Filters I, sections 2 and 4.5",
      "url": "https://15445.courses.cs.cmu.edu/fall2024/notes/08-indexes1.pdf",
      "accessed": "2026-10-22"
    },
    {
      "id": "postgresql",
      "title": "PostgreSQL 18: B-Tree indexes, structure and page splits",
      "url": "https://www.postgresql.org/docs/18/btree.html#BTREE-IMPLEMENTATION",
      "accessed": "2026-10-22"
    },
    {
      "id": "hesela-buffered",
      "title": "Hesela: B-epsilon trees, B-tree foundations and observed page placement",
      "url": "https://hesela.com/analyses/b-epsilon-trees-buffered-updates/",
      "accessed": "2026-10-22"
    }
  ],
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-22"
}
