B+ tree is a data structure used to store (key, value) pairs in a tree-like structure for fast retrieval. It has a root node, intermediary nodes that point to leaf nodes but do not store data, and leaf nodes that store the actual records. Leaf nodes must contain a minimum and maximum number of values, and non-leaf nodes a minimum and maximum number of child nodes. B+ trees allow fast traversal and search via balanced structure and sorted nodes. Records are inserted and deleted by searching the tree to the appropriate leaf node and updating pointers and values.