cluster spec sheet: make the MySQL seeding instructions bloat-proof - #38415
cluster spec sheet: make the MySQL seeding instructions bloat-proof#38415peterdukelarsen wants to merge 1 commit into
Conversation
4f8ac2f to
12d9492
Compare
The QA table now carries a PRIMARY KEY, and the seeding INSERT emits customer_id in scattered order; inserted out of key order, the clustered index page-splits to ~2.5x its packed size (11.5 GiB instead of 4.6 GiB for 50M rows), which is what doubled the source_ingestion hydration measurement from ~4m to ~8m after the July 24 re-seed. OPTIMIZE TABLE rebuilds it packed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
12d9492 to
61f8502
Compare
QA LLM Review1. MEDIUM -- reseeding the MySQL table without bumping
|
Motivation
Old single-threaded snapshots would run count() then read all rows in a table in just 4m. Now it takes 3m30s just to run a count(), which likely accounts for the performance regression flagged here: https://linear.app/materializeinc/issue/QAR-144/mysql-ingestion-performance-extremely-bad-on-large-cluster-50x-bad-on.
Specific trigger is unclear but I suspect the data was re-inserted fragmented whereas historically someone had run OPTIMIZE TABLE tbl before. I want to try to get the table into a consistent state across reseeds.
Changes
Add an OPTIMIZE TABLE tbl to ensure the table is more consistently densly packed.