Skip to main content

SQL query optimization hints

Project description

## Introduction This API will help you optimize your sql queries for better performance.

## How to use Create an optimizer object specific to a single (database, schema) pair e.g. optimizer = get_optimizer(“presto”, schema)

Get optimization hints using optimize_query(query) e.g. presto_op.optimize_query(query)

Initial Optimization Checks
  • Using approximate algorithms (approx_distinct() instead of COUNT(DISTINCT …))

  • Selecting the columns the user wants explicitly, rather than using (SELECT *)

  • Filtering on partitioned columns

  • Try to extract nested subqueries using a WITH clause.

  • Suggest filtering on most effective columns, by parquet-file ordering

  • Eliminate filtering overhead for partitioned columns

Other Stuff
  • Replace UNION with UNION ALL if duplicates do not need to be removed

  • Aggregate a series of LIKE clauses into one regexp_like expression

  • Push down a complex join condition into a sub query

  • Specify GROUP BY targets with numbers for expressions

### Testing To run unit tests, run py.test (or py.test -s to see stdout) in the tests directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

user-query-optimizer-0.1.5.tar.gz (12.7 kB view details)

Uploaded Source

File details

Details for the file user-query-optimizer-0.1.5.tar.gz.

File metadata

File hashes

Hashes for user-query-optimizer-0.1.5.tar.gz
Algorithm Hash digest
SHA256 225b8d3fec68ddf741be8e053afa16df28b5ea079999fb1acd87350259067356
MD5 eaaf3acf0613d9eef0943ec5c5ab5d7f
BLAKE2b-256 24abeae2067c4cc6c3de0e2a3c6759470082f01cad18f2e705f13dde5a8d68b4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page