forked from facebookincubator/velox
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: Support compress UnsafeRow and CompactRow (facebookincubator#11497
) Summary: Convert the buffers to `folly::IOBuf`, then compress it, and record some stats, skip compression when compressedSize/uncompressedSize exceeds minCompressionRatio with default value 0.8. Serialization format is: | uncompressedSize | compressedSize | compressed | serializedData for Iterator[Row] | Test the RowVector with all types and size is 500, the test output is as following: row kind | compression kind | uncompressedSize | compressedSize | compression ratio -- | -- | -- | -- | -- UnsafeRow | zlib | 519344 | 227749 | 44% UnsafeRow | snappy | 307936 | 115012 | 37% UnsafeRow | zstd | 689544 | 273433 | 40% UnsafeRow | lz4 | 622688 | 205956 | 33% UnsafeRow | gzip | 759608 | 213922 | 28% CompactRow | zlib | 263474 | 129241 | 49% CompactRow | snappy | 388313 | 78297 | 20% CompactRow | zstd | 224144 | 92744 | 41% CompactRow | lz4 | 110043 | 61615 | 56% CompactRow | gzip | 224631 | 93989 | 42% Pull Request resolved: facebookincubator#11497 Test Plan: With ZSTD compression, the shuffle volume has been reduced by half from 59.25 TB (20241218_182541_00001_4w82c) down to 40TB (20241219_001045_00001_6rkjb) for row-wise shuffle which is only one stage of the query The followup is to integrate with Prestissimo which only support LZ4 and change from process wide to per-query and test with columnar shuffle Reviewed By: miaoever Differential Revision: D67380519 Pulled By: xiaoxmeng fbshipit-source-id: a173422b87b54ff77597c23482595e3558f85387
- Loading branch information
1 parent
67e858c
commit 0ee82f3
Showing
17 changed files
with
460 additions
and
129 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.