{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.Athena.Types.QueryExecutionStatistics where
import Amazonka.Athena.Types.ResultReuseInformation
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
data QueryExecutionStatistics = QueryExecutionStatistics'
{
QueryExecutionStatistics -> Maybe Text
dataManifestLocation :: Prelude.Maybe Prelude.Text,
QueryExecutionStatistics -> Maybe Integer
dataScannedInBytes :: Prelude.Maybe Prelude.Integer,
QueryExecutionStatistics -> Maybe Integer
engineExecutionTimeInMillis :: Prelude.Maybe Prelude.Integer,
QueryExecutionStatistics -> Maybe Integer
queryPlanningTimeInMillis :: Prelude.Maybe Prelude.Integer,
QueryExecutionStatistics -> Maybe Integer
queryQueueTimeInMillis :: Prelude.Maybe Prelude.Integer,
QueryExecutionStatistics -> Maybe ResultReuseInformation
resultReuseInformation :: Prelude.Maybe ResultReuseInformation,
QueryExecutionStatistics -> Maybe Integer
serviceProcessingTimeInMillis :: Prelude.Maybe Prelude.Integer,
QueryExecutionStatistics -> Maybe Integer
totalExecutionTimeInMillis :: Prelude.Maybe Prelude.Integer
}
deriving (QueryExecutionStatistics -> QueryExecutionStatistics -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: QueryExecutionStatistics -> QueryExecutionStatistics -> Bool
$c/= :: QueryExecutionStatistics -> QueryExecutionStatistics -> Bool
== :: QueryExecutionStatistics -> QueryExecutionStatistics -> Bool
$c== :: QueryExecutionStatistics -> QueryExecutionStatistics -> Bool
Prelude.Eq, ReadPrec [QueryExecutionStatistics]
ReadPrec QueryExecutionStatistics
Int -> ReadS QueryExecutionStatistics
ReadS [QueryExecutionStatistics]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [QueryExecutionStatistics]
$creadListPrec :: ReadPrec [QueryExecutionStatistics]
readPrec :: ReadPrec QueryExecutionStatistics
$creadPrec :: ReadPrec QueryExecutionStatistics
readList :: ReadS [QueryExecutionStatistics]
$creadList :: ReadS [QueryExecutionStatistics]
readsPrec :: Int -> ReadS QueryExecutionStatistics
$creadsPrec :: Int -> ReadS QueryExecutionStatistics
Prelude.Read, Int -> QueryExecutionStatistics -> ShowS
[QueryExecutionStatistics] -> ShowS
QueryExecutionStatistics -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [QueryExecutionStatistics] -> ShowS
$cshowList :: [QueryExecutionStatistics] -> ShowS
show :: QueryExecutionStatistics -> String
$cshow :: QueryExecutionStatistics -> String
showsPrec :: Int -> QueryExecutionStatistics -> ShowS
$cshowsPrec :: Int -> QueryExecutionStatistics -> ShowS
Prelude.Show, forall x.
Rep QueryExecutionStatistics x -> QueryExecutionStatistics
forall x.
QueryExecutionStatistics -> Rep QueryExecutionStatistics x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep QueryExecutionStatistics x -> QueryExecutionStatistics
$cfrom :: forall x.
QueryExecutionStatistics -> Rep QueryExecutionStatistics x
Prelude.Generic)
newQueryExecutionStatistics ::
QueryExecutionStatistics
newQueryExecutionStatistics :: QueryExecutionStatistics
newQueryExecutionStatistics =
QueryExecutionStatistics'
{ $sel:dataManifestLocation:QueryExecutionStatistics' :: Maybe Text
dataManifestLocation =
forall a. Maybe a
Prelude.Nothing,
$sel:dataScannedInBytes:QueryExecutionStatistics' :: Maybe Integer
dataScannedInBytes = forall a. Maybe a
Prelude.Nothing,
$sel:engineExecutionTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
engineExecutionTimeInMillis = forall a. Maybe a
Prelude.Nothing,
$sel:queryPlanningTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
queryPlanningTimeInMillis = forall a. Maybe a
Prelude.Nothing,
$sel:queryQueueTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
queryQueueTimeInMillis = forall a. Maybe a
Prelude.Nothing,
$sel:resultReuseInformation:QueryExecutionStatistics' :: Maybe ResultReuseInformation
resultReuseInformation = forall a. Maybe a
Prelude.Nothing,
$sel:serviceProcessingTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
serviceProcessingTimeInMillis = forall a. Maybe a
Prelude.Nothing,
$sel:totalExecutionTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
totalExecutionTimeInMillis = forall a. Maybe a
Prelude.Nothing
}
queryExecutionStatistics_dataManifestLocation :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Text)
queryExecutionStatistics_dataManifestLocation :: Lens' QueryExecutionStatistics (Maybe Text)
queryExecutionStatistics_dataManifestLocation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Text
dataManifestLocation :: Maybe Text
$sel:dataManifestLocation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Text
dataManifestLocation} -> Maybe Text
dataManifestLocation) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Text
a -> QueryExecutionStatistics
s {$sel:dataManifestLocation:QueryExecutionStatistics' :: Maybe Text
dataManifestLocation = Maybe Text
a} :: QueryExecutionStatistics)
queryExecutionStatistics_dataScannedInBytes :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_dataScannedInBytes :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_dataScannedInBytes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
dataScannedInBytes :: Maybe Integer
$sel:dataScannedInBytes:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
dataScannedInBytes} -> Maybe Integer
dataScannedInBytes) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:dataScannedInBytes:QueryExecutionStatistics' :: Maybe Integer
dataScannedInBytes = Maybe Integer
a} :: QueryExecutionStatistics)
queryExecutionStatistics_engineExecutionTimeInMillis :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_engineExecutionTimeInMillis :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_engineExecutionTimeInMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
engineExecutionTimeInMillis :: Maybe Integer
$sel:engineExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
engineExecutionTimeInMillis} -> Maybe Integer
engineExecutionTimeInMillis) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:engineExecutionTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
engineExecutionTimeInMillis = Maybe Integer
a} :: QueryExecutionStatistics)
queryExecutionStatistics_queryPlanningTimeInMillis :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_queryPlanningTimeInMillis :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_queryPlanningTimeInMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
queryPlanningTimeInMillis :: Maybe Integer
$sel:queryPlanningTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
queryPlanningTimeInMillis} -> Maybe Integer
queryPlanningTimeInMillis) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:queryPlanningTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
queryPlanningTimeInMillis = Maybe Integer
a} :: QueryExecutionStatistics)
queryExecutionStatistics_queryQueueTimeInMillis :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_queryQueueTimeInMillis :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_queryQueueTimeInMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
queryQueueTimeInMillis :: Maybe Integer
$sel:queryQueueTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
queryQueueTimeInMillis} -> Maybe Integer
queryQueueTimeInMillis) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:queryQueueTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
queryQueueTimeInMillis = Maybe Integer
a} :: QueryExecutionStatistics)
queryExecutionStatistics_resultReuseInformation :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe ResultReuseInformation)
queryExecutionStatistics_resultReuseInformation :: Lens' QueryExecutionStatistics (Maybe ResultReuseInformation)
queryExecutionStatistics_resultReuseInformation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe ResultReuseInformation
resultReuseInformation :: Maybe ResultReuseInformation
$sel:resultReuseInformation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe ResultReuseInformation
resultReuseInformation} -> Maybe ResultReuseInformation
resultReuseInformation) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe ResultReuseInformation
a -> QueryExecutionStatistics
s {$sel:resultReuseInformation:QueryExecutionStatistics' :: Maybe ResultReuseInformation
resultReuseInformation = Maybe ResultReuseInformation
a} :: QueryExecutionStatistics)
queryExecutionStatistics_serviceProcessingTimeInMillis :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_serviceProcessingTimeInMillis :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_serviceProcessingTimeInMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
serviceProcessingTimeInMillis :: Maybe Integer
$sel:serviceProcessingTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
serviceProcessingTimeInMillis} -> Maybe Integer
serviceProcessingTimeInMillis) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:serviceProcessingTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
serviceProcessingTimeInMillis = Maybe Integer
a} :: QueryExecutionStatistics)
queryExecutionStatistics_totalExecutionTimeInMillis :: Lens.Lens' QueryExecutionStatistics (Prelude.Maybe Prelude.Integer)
queryExecutionStatistics_totalExecutionTimeInMillis :: Lens' QueryExecutionStatistics (Maybe Integer)
queryExecutionStatistics_totalExecutionTimeInMillis = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\QueryExecutionStatistics' {Maybe Integer
totalExecutionTimeInMillis :: Maybe Integer
$sel:totalExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
totalExecutionTimeInMillis} -> Maybe Integer
totalExecutionTimeInMillis) (\s :: QueryExecutionStatistics
s@QueryExecutionStatistics' {} Maybe Integer
a -> QueryExecutionStatistics
s {$sel:totalExecutionTimeInMillis:QueryExecutionStatistics' :: Maybe Integer
totalExecutionTimeInMillis = Maybe Integer
a} :: QueryExecutionStatistics)
instance Data.FromJSON QueryExecutionStatistics where
parseJSON :: Value -> Parser QueryExecutionStatistics
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"QueryExecutionStatistics"
( \Object
x ->
Maybe Text
-> Maybe Integer
-> Maybe Integer
-> Maybe Integer
-> Maybe Integer
-> Maybe ResultReuseInformation
-> Maybe Integer
-> Maybe Integer
-> QueryExecutionStatistics
QueryExecutionStatistics'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DataManifestLocation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DataScannedInBytes")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"EngineExecutionTimeInMillis")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"QueryPlanningTimeInMillis")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"QueryQueueTimeInMillis")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ResultReuseInformation")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ServiceProcessingTimeInMillis")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"TotalExecutionTimeInMillis")
)
instance Prelude.Hashable QueryExecutionStatistics where
hashWithSalt :: Int -> QueryExecutionStatistics -> Int
hashWithSalt Int
_salt QueryExecutionStatistics' {Maybe Integer
Maybe Text
Maybe ResultReuseInformation
totalExecutionTimeInMillis :: Maybe Integer
serviceProcessingTimeInMillis :: Maybe Integer
resultReuseInformation :: Maybe ResultReuseInformation
queryQueueTimeInMillis :: Maybe Integer
queryPlanningTimeInMillis :: Maybe Integer
engineExecutionTimeInMillis :: Maybe Integer
dataScannedInBytes :: Maybe Integer
dataManifestLocation :: Maybe Text
$sel:totalExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:serviceProcessingTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:resultReuseInformation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe ResultReuseInformation
$sel:queryQueueTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:queryPlanningTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:engineExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:dataScannedInBytes:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:dataManifestLocation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dataManifestLocation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
dataScannedInBytes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
engineExecutionTimeInMillis
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
queryPlanningTimeInMillis
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
queryQueueTimeInMillis
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ResultReuseInformation
resultReuseInformation
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
serviceProcessingTimeInMillis
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
totalExecutionTimeInMillis
instance Prelude.NFData QueryExecutionStatistics where
rnf :: QueryExecutionStatistics -> ()
rnf QueryExecutionStatistics' {Maybe Integer
Maybe Text
Maybe ResultReuseInformation
totalExecutionTimeInMillis :: Maybe Integer
serviceProcessingTimeInMillis :: Maybe Integer
resultReuseInformation :: Maybe ResultReuseInformation
queryQueueTimeInMillis :: Maybe Integer
queryPlanningTimeInMillis :: Maybe Integer
engineExecutionTimeInMillis :: Maybe Integer
dataScannedInBytes :: Maybe Integer
dataManifestLocation :: Maybe Text
$sel:totalExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:serviceProcessingTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:resultReuseInformation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe ResultReuseInformation
$sel:queryQueueTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:queryPlanningTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:engineExecutionTimeInMillis:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:dataScannedInBytes:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Integer
$sel:dataManifestLocation:QueryExecutionStatistics' :: QueryExecutionStatistics -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dataManifestLocation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
dataScannedInBytes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
engineExecutionTimeInMillis
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
queryPlanningTimeInMillis
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
queryQueueTimeInMillis
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ResultReuseInformation
resultReuseInformation
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
serviceProcessingTimeInMillis
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
totalExecutionTimeInMillis