Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-3288

Automatic HTAP DDL

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Won't Do
    • Affects Version/s: None
    • Fix Version/s: N/A
    • Component/s: N/A
    • Labels:
      None

      Description

      If deploying an HTAP databases, allow MaxScale handle all aspects of row+columnar storage. Specifically, this assumes a new attribute in services to specify whether or not the workload is HTAP.

      If the workload is HTAP, and a create table statement is received with the InnoDB engine, MaxScale should duplicate the statement and change the engine so there are two create table statements. One to create the InnoDB table, and one to create the ColumnStore table.

      For example

      If MaxScale sees CREATE TABLE tbl_customers... engine=innodb

      It should send this to the primary:

      CREATE TABLE tbl_customers... engine=innodb
      CREATE TABLE tbl_customers_hist... engine=columnstore

      The goal is to abstract away the specific of using multiple storage engines in an HTAP configuration, both for developers (so they only ever need to know about tbl_customers) and for DBAs so they don't have to worry about creating the ColumnStore table.

      When combined with MXS-3287, HTAP should be completely transparent to applications and developers, and require little overhead from DBAs.

      The "_hist" could be a parameter in MaxScale, allowing DBAs to use the convention of their choice.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              toddstoffel Todd Stoffel
              Reporter:
              shane.johnson@mariadb.com Shane Johnson (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Git Integration