Options

how to tune "input queue wait"

hi,

   I have a 3-node vertica cluster, and when I launch a count query, it takes about 160ms to complete the query, but when I launch lots of the same query concurrently,  each query takes about 4s to complete !! so i dig out profile table and I found "input queue wait" of operator_name "Root" is outstanding large, about 3 seconds.

  According to my experience,  "Root" operator is  the root node of physical plan tree, and if "Root" operator waits so long time, and I think it 's because of the concurrency control of vertica node.  And, if I was correct, how I can tune vertica parameter?   I can not find any related parameters in hp vertica complete doc.

 

thanks.

 

 

Comments

  • Options

    I don't think that the issue comes from Query Execution. Could you check the planning time when you do the concurrent queries. The information is available in the v_internal.dc_query_executions. Check one of the transactions that you run in paralell and get the info from the initiator node. A query that I normally use is :

     

    SELECT dc_query_executions.node_name, dc_query_executions.transaction_id, dc_query_executions.statement_id, dc_query_executions.execution_step, ((dc_query_executions.completion_time - dc_query_executions."time")) AS duration FROM v_internal.dc_query_executions  WHERE
    transaction_id = :t_id and statement_id = :s_id and node_name = :init_node
    ORDER BY dc_query_executions."time";

     

    Replace the with the right predicates.

     

    Thanks

    Eugenia

     

     

     

  • Options

    I also have similar situation....How did you resolve this or what was the root cause?

  • Options

    Where you able to get the query_execution_time with this query?

    replace transaction_id, statement_id and initiator_node with the right predicated.

     

    SELECT dc_query_executions.node_name, dc_query_executions.transaction_id, dc_query_executions.statement_id, dc_query_executions.execution_step, ((dc_query_executions.completion_time - dc_query_executions."time")) AS duration FROM v_internal.dc_query_executions  WHERE
    transaction_id = :t_id and statement_id = :s_id and node_name = :init_node
    ORDER BY dc_query_executions."time";

     

    Thanks,

    Eugenia

Leave a Comment

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