Materialize is a low level vreplication API that allows for generalized materialization of tables. The target tables
can be copies, aggregations or views. The target tables are kept in sync in near-realtime.
You can specify multiple tables to materialize using the json_spec parameter.
Be careful to avoid using the INSTANT ADD COLUMN feature in MySQL 8.0+ and MariaDB 10.3+ with materialization source tables as this can cause the vreplication based materialization workflow to break.
source_keyspace keyspace containing the source table
target_keyspace keyspace to materialize to
table_settings list of views to be materialized and the associated query
target_table name of table to which to materialize the data to
source_expression the materialization query
stop_after_copy if vreplication should be stopped after the copy phase
cell name of a cell, or a comma separated list of cells, that should be
used for choosing source tablet(s) for the materialization. If this
parameter is not specified, only cell(s) local to the target tablet(s) is
tablet_types a Vitess tablet_type, or comma separated list of tablet
types, that should be used for choosing source tablet(s) for the
materialization. If not specified, this defaults to the tablet type(s)
specified by the -vreplication_tablet_type VTTablet command line flag