TheR1sing3un opened a new pull request, #12677: URL: https://github.com/apache/hudi/pull/12677
Consider following case when we perform snapshot-read on MoR table: 1. full schema: (`A`, `B`, `C`, `D`) 2. primary key field: `A` 3. pre-combine key field: `B` 4. query with `select D from table` > for each file group | data file | log files | operation | payload allow projection pushdown | actual read schema| |---|---|---|---|---| | exist | empty | ... | ... | (`_hoodie_record_key`, `B`, `D`) | | empty | exist | ... | ... | (`_hoodie_record_key`, `B`, `D`) | | exist | exist | skip_merge | ... | (`_hoodie_record_key`, `B`, `D`) | | exist | exist | payload_combine | Y | (`_hoodie_record_key`, `B`, `D`) | | exist | exist | payload_combine | N | (`_hoodie_record_key`, `A`, `B`, `D`) | However, except for the last two case, we only need to read column `D` on the file in other cases. ### Change Logs 1. Trim unnecessary columns during MoR snapshot read ### Impact Improves performance when MoR snapshot-read with not actually merged ### Risk level (write none, low medium or high below) low ### Documentation Update none ### Contributor's checklist - [x] Read through [contributor's guide](https://hudi.apache.org/contribute/how-to-contribute) - [x] Change Logs and Impact were stated clearly - [x] Adequate tests were added if applicable - [x] CI passed -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
