-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add separate writer threads config for bucketed table write to avoid …
…max open file exceeded error (#11087) Summary: Pull Request resolved: #11087 The bucket table write could run into max open file exceeding errors. There are problems here: (1) on GBM cluster which only has 300 nodes, so the query will run on 300 nodes and the bucket table writer has 4 driver threads per node. And the remote exchange and local exchange both uses the same hive partition function but the remote exchange has 300 partitions while the local has 4 partitions and 300 is a multiple of 4 which could cause the data skew which cause one driver thread has received all the data which exceeds the open file limit. Confirmed with both 9 and 7 writer threads work (2) native cluster is generally 1/2 of the java cluster size so it is more easily run into the max open file limit so we need to bump up the write driver threads for native cluster. This PR adds a separate config at the native side to bump up the bucket table write driver threads to solve the problem. We don't want to bump up the partition writer threads as non-bucketed partition table won't have any open files (partitions) and we don't want to create too many small files unnecessarily. This PR only adds support at Velox side: extends the plan node to include a bucket table property flag to indicate if this is bucketed table as well as configure that table writer threads based on in local query planner. The followups will add support at Prestissimo side. Reviewed By: tanjialiang Differential Revision: D63325016 fbshipit-source-id: 893ad733f494c4bb92b86800ea08ec5560bd66d5
- Loading branch information
1 parent
9e1280a
commit 272995b
Showing
8 changed files
with
332 additions
and
139 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
Oops, something went wrong.