Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-31492

Provide a way to "pin" InnoDB table in memory

    XMLWordPrintable

Details

    Description

      Some systems with a lot of data (data size on disk is notably larger than the amount of RAM available) need a way to make sure that specific table remains in the buffer pool even when some other, bigger nut less important tables are accessed at times. I see two ways to implement this kind of feature:

      1. Provide a way to create several named buffer pools of different sizes and then specify in CREATE or ALTER TABLE what pool to use (with default unnamed one used by default).

      2. Provide a way to "pin" table to memory somehow via DDL, for example with a clause like STORAGE (BUFFER_POOL_KEEP) in Oracle RDBMS and some way to define what share of the buffer pool is to use for KEEP pool.

      No matter how is this implemented, we need some table (INFORMATION_SCHEMA.TABLES or some other) where we can find out if the table is "pinned" to memory or specific buffer pool.

      See also https://bugs.mysql.com/bug.php?id=68544 for a similar feature request.

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              valerii Valerii Kravchuk
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.