aws_sdk_athena/types/_query_runtime_statistics_timeline.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Timeline statistics such as query queue time, planning time, execution time, service processing time, and total execution time.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct QueryRuntimeStatisticsTimeline {
7 /// <p>The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.</p>
8 pub query_queue_time_in_millis: ::std::option::Option<i64>,
9 /// <p>The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.</p>
10 pub service_pre_processing_time_in_millis: ::std::option::Option<i64>,
11 /// <p>The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.</p>
12 pub query_planning_time_in_millis: ::std::option::Option<i64>,
13 /// <p>The number of milliseconds that the query took to execute.</p>
14 pub engine_execution_time_in_millis: ::std::option::Option<i64>,
15 /// <p>The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.</p>
16 pub service_processing_time_in_millis: ::std::option::Option<i64>,
17 /// <p>The number of milliseconds that Athena took to run the query.</p>
18 pub total_execution_time_in_millis: ::std::option::Option<i64>,
19}
20impl QueryRuntimeStatisticsTimeline {
21 /// <p>The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.</p>
22 pub fn query_queue_time_in_millis(&self) -> ::std::option::Option<i64> {
23 self.query_queue_time_in_millis
24 }
25 /// <p>The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.</p>
26 pub fn service_pre_processing_time_in_millis(&self) -> ::std::option::Option<i64> {
27 self.service_pre_processing_time_in_millis
28 }
29 /// <p>The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.</p>
30 pub fn query_planning_time_in_millis(&self) -> ::std::option::Option<i64> {
31 self.query_planning_time_in_millis
32 }
33 /// <p>The number of milliseconds that the query took to execute.</p>
34 pub fn engine_execution_time_in_millis(&self) -> ::std::option::Option<i64> {
35 self.engine_execution_time_in_millis
36 }
37 /// <p>The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.</p>
38 pub fn service_processing_time_in_millis(&self) -> ::std::option::Option<i64> {
39 self.service_processing_time_in_millis
40 }
41 /// <p>The number of milliseconds that Athena took to run the query.</p>
42 pub fn total_execution_time_in_millis(&self) -> ::std::option::Option<i64> {
43 self.total_execution_time_in_millis
44 }
45}
46impl QueryRuntimeStatisticsTimeline {
47 /// Creates a new builder-style object to manufacture [`QueryRuntimeStatisticsTimeline`](crate::types::QueryRuntimeStatisticsTimeline).
48 pub fn builder() -> crate::types::builders::QueryRuntimeStatisticsTimelineBuilder {
49 crate::types::builders::QueryRuntimeStatisticsTimelineBuilder::default()
50 }
51}
52
53/// A builder for [`QueryRuntimeStatisticsTimeline`](crate::types::QueryRuntimeStatisticsTimeline).
54#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
55#[non_exhaustive]
56pub struct QueryRuntimeStatisticsTimelineBuilder {
57 pub(crate) query_queue_time_in_millis: ::std::option::Option<i64>,
58 pub(crate) service_pre_processing_time_in_millis: ::std::option::Option<i64>,
59 pub(crate) query_planning_time_in_millis: ::std::option::Option<i64>,
60 pub(crate) engine_execution_time_in_millis: ::std::option::Option<i64>,
61 pub(crate) service_processing_time_in_millis: ::std::option::Option<i64>,
62 pub(crate) total_execution_time_in_millis: ::std::option::Option<i64>,
63}
64impl QueryRuntimeStatisticsTimelineBuilder {
65 /// <p>The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.</p>
66 pub fn query_queue_time_in_millis(mut self, input: i64) -> Self {
67 self.query_queue_time_in_millis = ::std::option::Option::Some(input);
68 self
69 }
70 /// <p>The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.</p>
71 pub fn set_query_queue_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
72 self.query_queue_time_in_millis = input;
73 self
74 }
75 /// <p>The number of milliseconds that the query was in your query queue waiting for resources. Note that if transient errors occur, Athena might automatically add the query back to the queue.</p>
76 pub fn get_query_queue_time_in_millis(&self) -> &::std::option::Option<i64> {
77 &self.query_queue_time_in_millis
78 }
79 /// <p>The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.</p>
80 pub fn service_pre_processing_time_in_millis(mut self, input: i64) -> Self {
81 self.service_pre_processing_time_in_millis = ::std::option::Option::Some(input);
82 self
83 }
84 /// <p>The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.</p>
85 pub fn set_service_pre_processing_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
86 self.service_pre_processing_time_in_millis = input;
87 self
88 }
89 /// <p>The number of milliseconds that Athena spends on preprocessing before it submits the query to the engine.</p>
90 pub fn get_service_pre_processing_time_in_millis(&self) -> &::std::option::Option<i64> {
91 &self.service_pre_processing_time_in_millis
92 }
93 /// <p>The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.</p>
94 pub fn query_planning_time_in_millis(mut self, input: i64) -> Self {
95 self.query_planning_time_in_millis = ::std::option::Option::Some(input);
96 self
97 }
98 /// <p>The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.</p>
99 pub fn set_query_planning_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
100 self.query_planning_time_in_millis = input;
101 self
102 }
103 /// <p>The number of milliseconds that Athena took to plan the query processing flow. This includes the time spent retrieving table partitions from the data source. Note that because the query engine performs the query planning, query planning time is a subset of engine processing time.</p>
104 pub fn get_query_planning_time_in_millis(&self) -> &::std::option::Option<i64> {
105 &self.query_planning_time_in_millis
106 }
107 /// <p>The number of milliseconds that the query took to execute.</p>
108 pub fn engine_execution_time_in_millis(mut self, input: i64) -> Self {
109 self.engine_execution_time_in_millis = ::std::option::Option::Some(input);
110 self
111 }
112 /// <p>The number of milliseconds that the query took to execute.</p>
113 pub fn set_engine_execution_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
114 self.engine_execution_time_in_millis = input;
115 self
116 }
117 /// <p>The number of milliseconds that the query took to execute.</p>
118 pub fn get_engine_execution_time_in_millis(&self) -> &::std::option::Option<i64> {
119 &self.engine_execution_time_in_millis
120 }
121 /// <p>The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.</p>
122 pub fn service_processing_time_in_millis(mut self, input: i64) -> Self {
123 self.service_processing_time_in_millis = ::std::option::Option::Some(input);
124 self
125 }
126 /// <p>The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.</p>
127 pub fn set_service_processing_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
128 self.service_processing_time_in_millis = input;
129 self
130 }
131 /// <p>The number of milliseconds that Athena took to finalize and publish the query results after the query engine finished running the query.</p>
132 pub fn get_service_processing_time_in_millis(&self) -> &::std::option::Option<i64> {
133 &self.service_processing_time_in_millis
134 }
135 /// <p>The number of milliseconds that Athena took to run the query.</p>
136 pub fn total_execution_time_in_millis(mut self, input: i64) -> Self {
137 self.total_execution_time_in_millis = ::std::option::Option::Some(input);
138 self
139 }
140 /// <p>The number of milliseconds that Athena took to run the query.</p>
141 pub fn set_total_execution_time_in_millis(mut self, input: ::std::option::Option<i64>) -> Self {
142 self.total_execution_time_in_millis = input;
143 self
144 }
145 /// <p>The number of milliseconds that Athena took to run the query.</p>
146 pub fn get_total_execution_time_in_millis(&self) -> &::std::option::Option<i64> {
147 &self.total_execution_time_in_millis
148 }
149 /// Consumes the builder and constructs a [`QueryRuntimeStatisticsTimeline`](crate::types::QueryRuntimeStatisticsTimeline).
150 pub fn build(self) -> crate::types::QueryRuntimeStatisticsTimeline {
151 crate::types::QueryRuntimeStatisticsTimeline {
152 query_queue_time_in_millis: self.query_queue_time_in_millis,
153 service_pre_processing_time_in_millis: self.service_pre_processing_time_in_millis,
154 query_planning_time_in_millis: self.query_planning_time_in_millis,
155 engine_execution_time_in_millis: self.engine_execution_time_in_millis,
156 service_processing_time_in_millis: self.service_processing_time_in_millis,
157 total_execution_time_in_millis: self.total_execution_time_in_millis,
158 }
159 }
160}