I want to understand how database storage is implemented in sqlite3. In the simplest case, it should be a table with just one primary key field. Could anybody let me know how it is implemented in sqlite3? https://en.wikipedia.org/wiki/Database_storage_structures https://jvns.ca/blog/2014/09/27/how-does-sqlite-work-part-1-pages/ The above page says that sqlite3 is based on B tree. But isn't B+ tree better than B tree? Thanks. https://www.javatpoint.com/b-plus-tree Any details about the implementation can be explained?