We're Moving!

The Vertica Forum is moving to a new OpenText Analytics Database (Vertica) Community.

Join us there to post discussion topics, learn about

product releases, share tips, access the blog, and much more.

Create My New Community Account Now


Scheduled analyzed_statistics on a table — Vertica Forum

Scheduled analyzed_statistics on a table

kxukxu Administrator

Is it better to have a scheduled analyze_statistics on specific table as opposed to having it done as part of the code? How would you avoid unnecessary statements like running analyze_statistics if the operation is already in progress on the projection?
Optimizing Query Performance and Resource Pool Tuning
@rbankula @bat

Answers

  • baron42bbabaron42bba Vertica Customer

    In the code makes most sense if a lot of the table get's modified. Like re-ingesting the data of a complete day.
    a query like

    SELECT 'analyze_statistics(''' || table_schema || '.' || table_name || '.' || table_column_name || ''')' AS suggested_action
    FROM projection_columns
    INNER JOIN
    (SELECT
           DISTINCT
           qe.suggested_action AS suggested_action
    FROM
                v_monitor.query_events   qe
           JOIN v_monitor.query_requests qr
             ON qr.transaction_id        = qe.transaction_id
            AND qr.statement_id          = qe.statement_id
    WHERE
           qr.request_type                        = 'QUERY'
      AND  qe.event_type                          = 'NO HISTOGRAM'
      AND  qe.suggested_action NOT LIKE '%v_temp_schema.%'
    ORDER  BY
           1
    ) sugg ON suggested_action = sugg.suggested_action
    WHERE statistics_type != 'FULL' AND table_schema != 'dba'
    GROUP BY 1
    

    run once a day might give you a list of queries for tables to optimize.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file