Search

US-20260127171-A1 - ZERO-SHOT TUNING FOR LARGE-SCALE DATA PROCESSING QUERIES

US20260127171A1US 20260127171 A1US20260127171 A1US 20260127171A1US-20260127171-A1

Abstract

A configuration system generates operational computing configurations for data processing queries, such as computer model and artificial intelligence training and inference, using historic execution plans to determine suitable parameter values for the computing configuration. By using historic execution plans to determine an operational computing configuration, the configuration system avoids computationally expensive conventional methods for optimizing data processing queries by instead using zero-shot or “offline” tuning. The configuration system uses embedding representations of execution plans to identify historic execution plans that are similar to an execution plan for a new query. Based on the optimized execution configurations of the similar historic execution plans, the configuration system determines an operational computing configuration for the execution plan for the new query.

Inventors

  • Raunaq Suri
  • Ilan Gofman
  • Guangwei YU
  • Jesse Cole CRESSWELL
  • Maksims Volkovs

Assignees

  • THE TORONTO-DOMINION BANK

Dates

Publication Date
20260507
Application Date
20250623

Claims (20)

  1. 1 . A system for configuration of an execution plan for data query, comprising: one or more processors; and a non-transitory computer-readable medium having instructions executable by the one or more processors for: receiving the execution plan, the execution plan characterizing one or more logical processing steps for executing a query; generating an execution plan embedding for the execution plan, the execution plan embedding being a vector representation of the execution plan; identifying a set of similar execution plan embeddings for historic execution plans from a set of historic execution plan embeddings; retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings; determining an operational computing configuration for the execution plan based on the retrieved set of associated configurations; and transmitting the operational computing configuration for executing the execution plan with the operational computing configuration.
  2. 2 . The system of claim 1 , wherein generating an embedding for the execution plan further comprises applying a large language model (LLM) to the execution plan.
  3. 3 . The system of claim 1 , wherein determining an operational computing configuration for the execution plan further comprises determining mean configuration values of one or more parameters of the set of historic execution plans.
  4. 4 . The system of claim 1 , wherein identifying a set of similar execution plan embeddings for historic execution plans further comprises selecting one or more of the similar execution plan embeddings based on a cosine similarity to the vector representation of the execution plan.
  5. 5 . The system of claim 1 , wherein retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings further comprises retrieving a top-k set of similar execution plan embeddings and corresponding optimized execution configurations.
  6. 6 . The system of claim 1 , wherein retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings further comprises: retrieving a first plurality of optimized execution configurations; determining that one or more configuration values of the first plurality of optimized execution configurations substantially differ from other configuration values within the first plurality of optimized execution configurations; and retrieving an additional plurality of optimized execution configurations.
  7. 7 . The system of claim 1 , wherein the execution plan includes steps for applying a computer model.
  8. 8 . The system of claim 1 , wherein the historic execution plans are optimized by repeated execution of queries and the execution plan is a one-time operational computing configuration.
  9. 9 . A method for configuration of an execution plan for data query, comprising: receiving the execution plan, the execution plan characterizing one or more logical processing steps for executing a query; generating an execution plan embedding for the execution plan, the execution plan embedding being a vector representation of the execution plan; identifying a set of similar execution plan embeddings for historic execution plans from a set of historic execution plan embeddings; retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings; determining an operational computing configuration for the execution plan based on the retrieved set of associated configurations; and transmitting the operational computing configuration for executing the execution plan with the operational computing configuration.
  10. 10 . The method of claim 9 , wherein generating an embedding for the execution plan further comprises applying a large language model (LLM) to the execution plan.
  11. 11 . The method of claim 9 , wherein determining an operational computing configuration for the execution plan further comprises determining mean configuration values of one or more parameters of the set of historic execution plans.
  12. 12 . The method of claim 9 , wherein identifying a set of similar execution plan embeddings for historic execution plans further comprises selecting one or more of the similar execution plan embeddings based on a cosine similarity to the vector representation of the execution plan.
  13. 13 . The method of claim 9 , wherein retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings further comprises retrieving a top-k set of similar execution plan embeddings and corresponding optimized execution configurations.
  14. 14 . The method of claim 9 , wherein retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings further comprises: retrieving a first plurality of optimized execution configurations; determining that one or more configuration values of the first plurality of optimized execution configurations substantially differ from other configuration values within the first plurality of optimized execution configurations; and retrieving an additional plurality of optimized execution configurations.
  15. 15 . The method of claim 9 , wherein the execution plan includes steps for applying a computer model.
  16. 16 . The method of claim 9 , wherein the historic execution plans are optimized by repeated execution of queries and the execution plan is a one-time operational computing configuration.
  17. 17 . A non-transitory computer-readable medium for configuration of an execution plan for data query, the non-transitory computer-readable medium comprising instructions executable by a processor for: generating an execution plan embedding for the execution plan, the execution plan embedding being a vector representation of the execution plan; identifying a set of similar execution plan embeddings for historic execution plans from a set of historic execution plan embeddings; retrieving a set of optimized execution configurations for the historic execution plans associated with the set of similar execution plan embeddings; determining an operational computing configuration for the execution plan based on the retrieved set of associated configurations; and transmitting the operational computing configuration for executing the execution plan with the operational computing configuration.
  18. 18 . The non-transitory computer-readable medium of claim 17 , wherein the instructions for generating an embedding for the execution plan are further executable for applying a large language model (LLM) to the execution plan.
  19. 19 . The non-transitory computer-readable medium of claim 17 , wherein the instructions for determining an operational computing configuration for the execution plan are further executable for determining mean configuration values of one or more parameters of the set of historic execution plans.
  20. 20 . The non-transitory computer-readable medium of claim 17 , wherein the instructions for identifying a set of similar execution plan embeddings for historic execution plans are further executable for selecting one or more of the similar execution plan embeddings based on a cosine similarity to the vector representation of the execution plan.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of U.S. Provisional Application No. 63/715,095, filed Nov. 1, 2024, the contents of which are incorporated by reference in its entirety. BACKGROUND This disclosure relates generally to data processing, and more specifically to a system for optimizing execution of data queries. Data processing systems for managing large-scale data processing may be used in a variety of applications and industries, such as in training or applying machine learning models, artificial intelligence applications, processing of large data sets, and the like. As data sets become larger or more complex, queries to the data sets also become more computationally complex. Rather than execute the query directly, an execution plan may be developed for received queries to optimize the processing steps for executing a query effectively. Execution plans may break down queries into a set of logical processing steps, such that various steps or groups of steps within a query may be executed in parallel across clusters of machines. Execution plans may be optimized for, variously, resource allocation, memory management, execution strategies, execution time, and so on. Execution plans may have hundreds of tunable parameters impacting performance. Optimization of these parameters ensures that queries are run for efficient resource utilization in distributed processing. Poor configuration parameter selection can result in under-utilization of system resources, or worse, over-commitment resulting in application failures. Conventionally, parameter optimization is tuned to the specific job being run. However, most common methods for parameter optimization rely on online tuning methods, such as Bayesian Optimization (BO) techniques. These tuning methods iteratively run execution plans for observation of runtime characteristics and update parameters for each subsequent run based on the runtime observations until optimal parameters are determined. For large data sets and complex queries, this iterative processing is often computationally expensive and may be infeasible or prohibitive, particularly for ad hoc queries that are intended to be run only once or infrequently. Because of the large number of potential processing steps and configuration settings for an execution plan, it is difficult to directly determine relevant configuration settings to use in zero-shot tuning. SUMMARY A configuration system uses optimized historic execution plans to generate configuration parameters for execution plans for new queries using zero-shot tuning. Zero-shot tuning, where parameters of execution plans are automatically set before an initial run of the execution plan, can provide significant computational savings for data processing systems, but may be more difficult than conventional methods of online tuning, as runtime information for the specific query is not available. Configuration systems with access to historic information about previously executed and optimized execution plans, however, may determine an operational execution configuration for an execution plan based on optimized execution configurations for other, similar execution plans. By determining what execution plans are similar and how to determine parameters for the operational execution configuration from the similar plans, the configuration system enables data processing systems to execute the corresponding query more effectively (e.g., with faster execution time, improved memory usage, etc.) and without relying on unoptimized (e.g., default) parameters. In various embodiments, the configuration system identifies similar execution plans based on embeddings representative of the execution plans. In some embodiments, the embeddings are vector representations of the execution plans, such that an embedding for the execution plan may be directly compared by the configuration system to embeddings corresponding to stored historic execution plans. When similar historic execution plans are identified, the configuration system retrieves the set of optimized execution configurations for the identified similar historic execution plans. For example, the configuration system may retrieve a top-k set of similar historic execution plans and their corresponding optimized execution configurations. The configuration system determines the operational computing configuration for the execution plan based on the optimized execution configurations corresponding to the similar historic execution plans. In various embodiments, the configuration system may calculate mean configuration values of the optimized execution configurations and apply the mean configuration values to the operational computing configuration. The configuration system thus enables the data processing system to run the execution plan with the operational execution configuration rather than a default parameter configuration, bypassing the necessity for iteratively running the query