InnoDB

I’ve written the following posts about InnoDB internals, structures, and behavior:

  1. On learning InnoDB: A journey to the core: An introduction to the innodb_ruby and innodb_diagrams projects.
  2. A quick introduction to innodb_ruby: How to set up innodb_ruby and a few demos of what it can do.
  3. The basics of InnoDB space file layout: How InnoDB structures its space files and the pages they contain.
  4. Page management in InnoDB space files: Structures related to management of file segments, extents, and pages within space files.
  5. Exploring InnoDB page management with innodb_ruby: Interactive exploration of the page management data structures from a real InnoDB space file.
  6. The physical structure of InnoDB index pages: A description of InnoDB’s index pages, where data is stored, and how records are placed in them.
  7. B+Tree index structures in InnoDB: A logical high-level exploration of InnoDB’s B+Tree indexes and their efficiency.
  8. The physical structure of records in InnoDB: A low-level illustration of InnoDB’s row storage formats.
  9. Efficiently traversing InnoDB B+Trees with the page directory: A deep examination of efficiency in traversing B+Trees in InnoDB.
  10. InnoDB bugs found during research on InnoDB data storage: An explanation about 7 different bugs found during the research for this work
  11. How does InnoDB behave without a Primary Key?: A short discussion about InnoDB’s implicit ROW_ID column which is used in tables without a suitable PRIMARY KEY.
  12. InnoDB Tidbit: The doublewrite buffer wastes 32 pages (512 KiB): How the file segment allocation used in InnoDB plus a bit of programming laziness caused 512 KiB to be wasted in every InnoDB system tablespace.
  13. The basics of the InnoDB undo logging and history system: A short introduction to multi-version concurrency control, undo logging, InnoDB’s history system, and how they are all related.
  14. A little fun with InnoDB multi-versioning: A fun and somewhat scary look at the “hidden” effects of multi-versioning and InnoDB’s history system.
  15. InnoDB with reduced page sizes wastes up to 6% of disk space: InnoDB’s required bookkeeping information for each extent wastes many pages, and it gets a lot worse with reduced (4k or 8k) page sizes.

5 thoughts on “InnoDB

  1. InnoDB bugs found during research on InnoDB data storage – Jeremy Cole

  2. InnoDB: A journey to the core: At the MySQL Conference – Jeremy Cole

  3. InnoDB Tidbit: The doublewrite buffer wastes 32 pages (512 KiB) – Jeremy Cole

  4. Engineer duo from Google, LinkedIn join again for InnoDB talks

  5. innodb_flush_logs_on_trx_commit and Galera Cluster | Open Query blog

What do you think?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s