// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package glue import ( "fmt" "time" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/internal/awsutil" ) var _ aws.Config var _ = awsutil.Prettify // Defines an action to be initiated by a trigger. type Action struct { _ struct{} `type:"structure"` // The job arguments used when this trigger fires. For this job run, they replace // the default arguments set in the job definition itself. // // You can specify arguments here that your own job-execution script consumes, // as well as arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own Job arguments, // see the Calling AWS Glue APIs in Python (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) // topic in the developer guide. // // For information about the key-value pairs that AWS Glue consumes to set up // your job, see the Special Parameters Used by AWS Glue (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) // topic in the developer guide. Arguments map[string]string `type:"map"` // The name of the crawler to be used with this action. CrawlerName *string `min:"1" type:"string"` // The name of a job to be executed. JobName *string `min:"1" type:"string"` // Specifies configuration properties of a job run notification. NotificationProperty *NotificationProperty `type:"structure"` // The name of the SecurityConfiguration structure to be used with this action. SecurityConfiguration *string `min:"1" type:"string"` // The JobRun timeout in minutes. This is the maximum time that a job run can // consume resources before it is terminated and enters TIMEOUT status. The // default is 2,880 minutes (48 hours). This overrides the timeout value set // in the parent job. Timeout *int64 `min:"1" type:"integer"` } // String returns the string representation func (s Action) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Action) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Action"} if s.CrawlerName != nil && len(*s.CrawlerName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("CrawlerName", 1)) } if s.JobName != nil && len(*s.JobName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("JobName", 1)) } if s.SecurityConfiguration != nil && len(*s.SecurityConfiguration) < 1 { invalidParams.Add(aws.NewErrParamMinLen("SecurityConfiguration", 1)) } if s.Timeout != nil && *s.Timeout < 1 { invalidParams.Add(aws.NewErrParamMinValue("Timeout", 1)) } if s.NotificationProperty != nil { if err := s.NotificationProperty.Validate(); err != nil { invalidParams.AddNested("NotificationProperty", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Records an error that occurred when attempting to stop a specified job run. type BatchStopJobRunError struct { _ struct{} `type:"structure"` // Specifies details about the error that was encountered. ErrorDetail *ErrorDetail `type:"structure"` // The name of the job definition that is used in the job run in question. JobName *string `min:"1" type:"string"` // The JobRunId of the job run in question. JobRunId *string `min:"1" type:"string"` } // String returns the string representation func (s BatchStopJobRunError) String() string { return awsutil.Prettify(s) } // Records a successful request to stop a specified JobRun. type BatchStopJobRunSuccessfulSubmission struct { _ struct{} `type:"structure"` // The name of the job definition used in the job run that was stopped. JobName *string `min:"1" type:"string"` // The JobRunId of the job run that was stopped. JobRunId *string `min:"1" type:"string"` } // String returns the string representation func (s BatchStopJobRunSuccessfulSubmission) String() string { return awsutil.Prettify(s) } // Defines a binary column statistics data. type BinaryColumnStatisticsData struct { _ struct{} `type:"structure"` // Average length of the column. // // AverageLength is a required field AverageLength *float64 `type:"double" required:"true"` // Maximum length of the column. // // MaximumLength is a required field MaximumLength *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s BinaryColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *BinaryColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "BinaryColumnStatisticsData"} if s.AverageLength == nil { invalidParams.Add(aws.NewErrParamRequired("AverageLength")) } if s.MaximumLength == nil { invalidParams.Add(aws.NewErrParamRequired("MaximumLength")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a boolean column statistics. type BooleanColumnStatisticsData struct { _ struct{} `type:"structure"` // Number of false value. // // NumberOfFalses is a required field NumberOfFalses *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` // Number of true value. // // NumberOfTrues is a required field NumberOfTrues *int64 `type:"long" required:"true"` } // String returns the string representation func (s BooleanColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *BooleanColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "BooleanColumnStatisticsData"} if s.NumberOfFalses == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfFalses")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if s.NumberOfTrues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfTrues")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a table definition in the AWS Glue Data Catalog. type CatalogEntry struct { _ struct{} `type:"structure"` // The database in which the table metadata resides. // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` // The name of the table in question. // // TableName is a required field TableName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CatalogEntry) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CatalogEntry) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CatalogEntry"} if s.DatabaseName == nil { invalidParams.Add(aws.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DatabaseName", 1)) } if s.TableName == nil { invalidParams.Add(aws.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("TableName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure containing migration status information. type CatalogImportStatus struct { _ struct{} `type:"structure"` // True if the migration has completed, or False otherwise. ImportCompleted *bool `type:"boolean"` // The time that the migration was started. ImportTime *time.Time `type:"timestamp"` // The name of the person who initiated the migration. ImportedBy *string `min:"1" type:"string"` } // String returns the string representation func (s CatalogImportStatus) String() string { return awsutil.Prettify(s) } // Specifies an AWS Glue Data Catalog target. type CatalogTarget struct { _ struct{} `type:"structure"` // The name of the database to be synchronized. // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` // A list of the tables to be synchronized. // // Tables is a required field Tables []string `min:"1" type:"list" required:"true"` } // String returns the string representation func (s CatalogTarget) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CatalogTarget) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CatalogTarget"} if s.DatabaseName == nil { invalidParams.Add(aws.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DatabaseName", 1)) } if s.Tables == nil { invalidParams.Add(aws.NewErrParamRequired("Tables")) } if s.Tables != nil && len(s.Tables) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Tables", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Classifiers are triggered during a crawl task. A classifier checks whether // a given file is in a format it can handle. If it is, the classifier creates // a schema in the form of a StructType object that matches that data format. // // You can use the standard classifiers that AWS Glue provides, or you can write // your own classifiers to best categorize your data sources and specify the // appropriate schemas to use for them. A classifier can be a grok classifier, // an XML classifier, a JSON classifier, or a custom CSV classifier, as specified // in one of the fields in the Classifier object. type Classifier struct { _ struct{} `type:"structure"` // A classifier for comma-separated values (CSV). CsvClassifier *CsvClassifier `type:"structure"` // A classifier that uses grok. GrokClassifier *GrokClassifier `type:"structure"` // A classifier for JSON content. JsonClassifier *JsonClassifier `type:"structure"` // A classifier for XML content. XMLClassifier *XMLClassifier `type:"structure"` } // String returns the string representation func (s Classifier) String() string { return awsutil.Prettify(s) } // Specifies how Amazon CloudWatch data should be encrypted. type CloudWatchEncryption struct { _ struct{} `type:"structure"` // The encryption mode to use for CloudWatch data. CloudWatchEncryptionMode CloudWatchEncryptionMode `type:"string" enum:"true"` // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `type:"string"` } // String returns the string representation func (s CloudWatchEncryption) String() string { return awsutil.Prettify(s) } // Represents a directional edge in a directed acyclic graph (DAG). type CodeGenEdge struct { _ struct{} `type:"structure"` // The ID of the node at which the edge starts. // // Source is a required field Source *string `min:"1" type:"string" required:"true"` // The ID of the node at which the edge ends. // // Target is a required field Target *string `min:"1" type:"string" required:"true"` // The target of the edge. TargetParameter *string `type:"string"` } // String returns the string representation func (s CodeGenEdge) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CodeGenEdge) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CodeGenEdge"} if s.Source == nil { invalidParams.Add(aws.NewErrParamRequired("Source")) } if s.Source != nil && len(*s.Source) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Source", 1)) } if s.Target == nil { invalidParams.Add(aws.NewErrParamRequired("Target")) } if s.Target != nil && len(*s.Target) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Target", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a node in a directed acyclic graph (DAG) type CodeGenNode struct { _ struct{} `type:"structure"` // Properties of the node, in the form of name-value pairs. // // Args is a required field Args []CodeGenNodeArg `type:"list" required:"true"` // A node identifier that is unique within the node's graph. // // Id is a required field Id *string `min:"1" type:"string" required:"true"` // The line number of the node. LineNumber *int64 `type:"integer"` // The type of node that this is. // // NodeType is a required field NodeType *string `type:"string" required:"true"` } // String returns the string representation func (s CodeGenNode) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CodeGenNode) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CodeGenNode"} if s.Args == nil { invalidParams.Add(aws.NewErrParamRequired("Args")) } if s.Id == nil { invalidParams.Add(aws.NewErrParamRequired("Id")) } if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Id", 1)) } if s.NodeType == nil { invalidParams.Add(aws.NewErrParamRequired("NodeType")) } if s.Args != nil { for i, v := range s.Args { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Args", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // An argument or property of a node. type CodeGenNodeArg struct { _ struct{} `type:"structure"` // The name of the argument or property. // // Name is a required field Name *string `type:"string" required:"true"` // True if the value is used as a parameter. Param *bool `type:"boolean"` // The value of the argument or property. // // Value is a required field Value *string `type:"string" required:"true"` } // String returns the string representation func (s CodeGenNodeArg) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CodeGenNodeArg) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CodeGenNodeArg"} if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Value == nil { invalidParams.Add(aws.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A column in a Table. type Column struct { _ struct{} `type:"structure"` // A free-form text comment. Comment *string `type:"string"` // The name of the Column. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // These key-value pairs define properties associated with the column. Parameters map[string]string `type:"map"` // The data type of the Column. Type *string `type:"string"` } // String returns the string representation func (s Column) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Column) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Column"} if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a column containing error. type ColumnError struct { _ struct{} `type:"structure"` // The name of the column. ColumnName *string `min:"1" type:"string"` // The error message occurred during operation. Error *ErrorDetail `type:"structure"` } // String returns the string representation func (s ColumnError) String() string { return awsutil.Prettify(s) } // Defines a column statistics. type ColumnStatistics struct { _ struct{} `type:"structure"` // The analyzed time of the column statistics. // // AnalyzedTime is a required field AnalyzedTime *time.Time `type:"timestamp" required:"true"` // The name of the column. // // ColumnName is a required field ColumnName *string `min:"1" type:"string" required:"true"` // The type of the column. // // ColumnType is a required field ColumnType *string `type:"string" required:"true"` // The statistics of the column. // // StatisticsData is a required field StatisticsData *ColumnStatisticsData `type:"structure" required:"true"` } // String returns the string representation func (s ColumnStatistics) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ColumnStatistics) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ColumnStatistics"} if s.AnalyzedTime == nil { invalidParams.Add(aws.NewErrParamRequired("AnalyzedTime")) } if s.ColumnName == nil { invalidParams.Add(aws.NewErrParamRequired("ColumnName")) } if s.ColumnName != nil && len(*s.ColumnName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("ColumnName", 1)) } if s.ColumnType == nil { invalidParams.Add(aws.NewErrParamRequired("ColumnType")) } if s.StatisticsData == nil { invalidParams.Add(aws.NewErrParamRequired("StatisticsData")) } if s.StatisticsData != nil { if err := s.StatisticsData.Validate(); err != nil { invalidParams.AddNested("StatisticsData", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a column statistics data. type ColumnStatisticsData struct { _ struct{} `type:"structure"` // Binary Column Statistics Data. BinaryColumnStatisticsData *BinaryColumnStatisticsData `type:"structure"` // Boolean Column Statistics Data. BooleanColumnStatisticsData *BooleanColumnStatisticsData `type:"structure"` // Date Column Statistics Data. DateColumnStatisticsData *DateColumnStatisticsData `type:"structure"` // Decimal Column Statistics Data. DecimalColumnStatisticsData *DecimalColumnStatisticsData `type:"structure"` // Double Column Statistics Data. DoubleColumnStatisticsData *DoubleColumnStatisticsData `type:"structure"` // Long Column Statistics Data. LongColumnStatisticsData *LongColumnStatisticsData `type:"structure"` // String Column Statistics Data. StringColumnStatisticsData *StringColumnStatisticsData `type:"structure"` // The name of the column. // // Type is a required field Type ColumnStatisticsType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s ColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ColumnStatisticsData"} if len(s.Type) == 0 { invalidParams.Add(aws.NewErrParamRequired("Type")) } if s.BinaryColumnStatisticsData != nil { if err := s.BinaryColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("BinaryColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.BooleanColumnStatisticsData != nil { if err := s.BooleanColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("BooleanColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.DateColumnStatisticsData != nil { if err := s.DateColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("DateColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.DecimalColumnStatisticsData != nil { if err := s.DecimalColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("DecimalColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.DoubleColumnStatisticsData != nil { if err := s.DoubleColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("DoubleColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.LongColumnStatisticsData != nil { if err := s.LongColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("LongColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if s.StringColumnStatisticsData != nil { if err := s.StringColumnStatisticsData.Validate(); err != nil { invalidParams.AddNested("StringColumnStatisticsData", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a column containing error. type ColumnStatisticsError struct { _ struct{} `type:"structure"` // The ColumnStatistics of the column. ColumnStatistics *ColumnStatistics `type:"structure"` // The error message occurred during operation. Error *ErrorDetail `type:"structure"` } // String returns the string representation func (s ColumnStatisticsError) String() string { return awsutil.Prettify(s) } // Defines a condition under which a trigger fires. type Condition struct { _ struct{} `type:"structure"` // The state of the crawler to which this condition applies. CrawlState CrawlState `type:"string" enum:"true"` // The name of the crawler to which this condition applies. CrawlerName *string `min:"1" type:"string"` // The name of the job whose JobRuns this condition applies to, and on which // this trigger waits. JobName *string `min:"1" type:"string"` // A logical operator. LogicalOperator LogicalOperator `type:"string" enum:"true"` // The condition state. Currently, the only job states that a trigger can listen // for are SUCCEEDED, STOPPED, FAILED, and TIMEOUT. The only crawler states // that a trigger can listen for are SUCCEEDED, FAILED, and CANCELLED. State JobRunState `type:"string" enum:"true"` } // String returns the string representation func (s Condition) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Condition) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Condition"} if s.CrawlerName != nil && len(*s.CrawlerName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("CrawlerName", 1)) } if s.JobName != nil && len(*s.JobName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("JobName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The confusion matrix shows you what your transform is predicting accurately // and what types of errors it is making. // // For more information, see Confusion matrix (https://en.wikipedia.org/wiki/Confusion_matrix) // in Wikipedia. type ConfusionMatrix struct { _ struct{} `type:"structure"` // The number of matches in the data that the transform didn't find, in the // confusion matrix for your transform. NumFalseNegatives *int64 `type:"long"` // The number of nonmatches in the data that the transform incorrectly classified // as a match, in the confusion matrix for your transform. NumFalsePositives *int64 `type:"long"` // The number of nonmatches in the data that the transform correctly rejected, // in the confusion matrix for your transform. NumTrueNegatives *int64 `type:"long"` // The number of matches in the data that the transform correctly found, in // the confusion matrix for your transform. NumTruePositives *int64 `type:"long"` } // String returns the string representation func (s ConfusionMatrix) String() string { return awsutil.Prettify(s) } // Defines a connection to a data source. type Connection struct { _ struct{} `type:"structure"` // These key-value pairs define parameters for the connection: // // * HOST - The host URI: either the fully qualified domain name (FQDN) or // the IPv4 address of the database host. // // * PORT - The port number, between 1024 and 65535, of the port on which // the database host is listening for database connections. // // * USER_NAME - The name under which to log in to the database. The value // string for USER_NAME is "USERNAME". // // * PASSWORD - A password, if one is used, for the user name. // // * ENCRYPTED_PASSWORD - When you enable connection password protection // by setting ConnectionPasswordEncryption in the Data Catalog encryption // settings, this field stores the encrypted password. // // * JDBC_DRIVER_JAR_URI - The Amazon Simple Storage Service (Amazon S3) // path of the JAR file that contains the JDBC driver to use. // // * JDBC_DRIVER_CLASS_NAME - The class name of the JDBC driver to use. // // * JDBC_ENGINE - The name of the JDBC engine to use. // // * JDBC_ENGINE_VERSION - The version of the JDBC engine to use. // // * CONFIG_FILES - (Reserved for future use.) // // * INSTANCE_ID - The instance ID to use. // // * JDBC_CONNECTION_URL - The URL for connecting to a JDBC data source. // // * JDBC_ENFORCE_SSL - A Boolean string (true, false) specifying whether // Secure Sockets Layer (SSL) with hostname matching is enforced for the // JDBC connection on the client. The default is false. // // * CUSTOM_JDBC_CERT - An Amazon S3 location specifying the customer's root // certificate. AWS Glue uses this root certificate to validate the customer’s // certificate when connecting to the customer database. AWS Glue only handles // X.509 certificates. The certificate provided must be DER-encoded and supplied // in Base64 encoding PEM format. // // * SKIP_CUSTOM_JDBC_CERT_VALIDATION - By default, this is false. AWS Glue // validates the Signature algorithm and Subject Public Key Algorithm for // the customer certificate. The only permitted algorithms for the Signature // algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject // Public Key Algorithm, the key length must be at least 2048. You can set // the value of this property to true to skip AWS Glue’s validation of // the customer certificate. // // * CUSTOM_JDBC_CERT_STRING - A custom JDBC certificate string which is // used for domain match or distinguished name match to prevent a man-in-the-middle // attack. In Oracle database, this is used as the SSL_SERVER_CERT_DN; in // Microsoft SQL Server, this is used as the hostNameInCertificate. // // * CONNECTION_URL - The URL for connecting to a general (non-JDBC) data // source. // // * KAFKA_BOOTSTRAP_SERVERS - A comma-separated list of host and port pairs // that are the addresses of the Apache Kafka brokers in a Kafka cluster // to which a Kafka client will connect to and bootstrap itself. ConnectionProperties map[string]string `type:"map"` // The type of the connection. Currently, SFTP is not supported. ConnectionType ConnectionType `type:"string" enum:"true"` // The time that this connection definition was created. CreationTime *time.Time `type:"timestamp"` // The description of the connection. Description *string `type:"string"` // The user, group, or role that last updated this connection definition. LastUpdatedBy *string `min:"1" type:"string"` // The last time that this connection definition was updated. LastUpdatedTime *time.Time `type:"timestamp"` // A list of criteria that can be used in selecting this connection. MatchCriteria []string `type:"list"` // The name of the connection definition. Name *string `min:"1" type:"string"` // A map of physical connection requirements, such as virtual private cloud // (VPC) and SecurityGroup, that are needed to make this connection successfully. PhysicalConnectionRequirements *PhysicalConnectionRequirements `type:"structure"` } // String returns the string representation func (s Connection) String() string { return awsutil.Prettify(s) } // A structure that is used to specify a connection to create or update. type ConnectionInput struct { _ struct{} `type:"structure"` // These key-value pairs define parameters for the connection. // // ConnectionProperties is a required field ConnectionProperties map[string]string `type:"map" required:"true"` // The type of the connection. Currently, these types are supported: // // * JDBC - Designates a connection to a database through Java Database Connectivity // (JDBC). // // * KAFKA - Designates a connection to an Apache Kafka streaming platform. // // * MONGODB - Designates a connection to a MongoDB document database. // // SFTP is not supported. // // ConnectionType is a required field ConnectionType ConnectionType `type:"string" required:"true" enum:"true"` // The description of the connection. Description *string `type:"string"` // A list of criteria that can be used in selecting this connection. MatchCriteria []string `type:"list"` // The name of the connection. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A map of physical connection requirements, such as virtual private cloud // (VPC) and SecurityGroup, that are needed to successfully make this connection. PhysicalConnectionRequirements *PhysicalConnectionRequirements `type:"structure"` } // String returns the string representation func (s ConnectionInput) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectionInput) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ConnectionInput"} if s.ConnectionProperties == nil { invalidParams.Add(aws.NewErrParamRequired("ConnectionProperties")) } if len(s.ConnectionType) == 0 { invalidParams.Add(aws.NewErrParamRequired("ConnectionType")) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.PhysicalConnectionRequirements != nil { if err := s.PhysicalConnectionRequirements.Validate(); err != nil { invalidParams.AddNested("PhysicalConnectionRequirements", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The data structure used by the Data Catalog to encrypt the password as part // of CreateConnection or UpdateConnection and store it in the ENCRYPTED_PASSWORD // field in the connection properties. You can enable catalog encryption or // only password encryption. // // When a CreationConnection request arrives containing a password, the Data // Catalog first encrypts the password using your AWS KMS key. It then encrypts // the whole connection object again if catalog encryption is also enabled. // // This encryption requires that you set AWS KMS key permissions to enable or // restrict access on the password key according to your security requirements. // For example, you might want only administrators to have decrypt permission // on the password key. type ConnectionPasswordEncryption struct { _ struct{} `type:"structure"` // An AWS KMS key that is used to encrypt the connection password. // // If connection password protection is enabled, the caller of CreateConnection // and UpdateConnection needs at least kms:Encrypt permission on the specified // AWS KMS key, to encrypt passwords before storing them in the Data Catalog. // // You can set the decrypt permission to enable or restrict access on the password // key according to your security requirements. AwsKmsKeyId *string `min:"1" type:"string"` // When the ReturnConnectionPasswordEncrypted flag is set to "true", passwords // remain encrypted in the responses of GetConnection and GetConnections. This // encryption takes effect independently from catalog encryption. // // ReturnConnectionPasswordEncrypted is a required field ReturnConnectionPasswordEncrypted *bool `type:"boolean" required:"true"` } // String returns the string representation func (s ConnectionPasswordEncryption) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectionPasswordEncryption) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ConnectionPasswordEncryption"} if s.AwsKmsKeyId != nil && len(*s.AwsKmsKeyId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("AwsKmsKeyId", 1)) } if s.ReturnConnectionPasswordEncrypted == nil { invalidParams.Add(aws.NewErrParamRequired("ReturnConnectionPasswordEncrypted")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the connections used by a job. type ConnectionsList struct { _ struct{} `type:"structure"` // A list of connections used by the job. Connections []string `type:"list"` } // String returns the string representation func (s ConnectionsList) String() string { return awsutil.Prettify(s) } // The details of a crawl in the workflow. type Crawl struct { _ struct{} `type:"structure"` // The date and time on which the crawl completed. CompletedOn *time.Time `type:"timestamp"` // The error message associated with the crawl. ErrorMessage *string `type:"string"` // The log group associated with the crawl. LogGroup *string `min:"1" type:"string"` // The log stream associated with the crawl. LogStream *string `min:"1" type:"string"` // The date and time on which the crawl started. StartedOn *time.Time `type:"timestamp"` // The state of the crawler. State CrawlState `type:"string" enum:"true"` } // String returns the string representation func (s Crawl) String() string { return awsutil.Prettify(s) } // Specifies a crawler program that examines a data source and uses classifiers // to try to determine its schema. If successful, the crawler records metadata // concerning the data source in the AWS Glue Data Catalog. type Crawler struct { _ struct{} `type:"structure"` // A list of UTF-8 strings that specify the custom classifiers that are associated // with the crawler. Classifiers []string `type:"list"` // Crawler configuration information. This versioned JSON string allows users // to specify aspects of a crawler's behavior. For more information, see Configuring // a Crawler (https://docs.aws.amazon.com/glue/latest/dg/crawler-configuration.html). Configuration *string `type:"string"` // If the crawler is running, contains the total time elapsed since the last // crawl began. CrawlElapsedTime *int64 `type:"long"` // The name of the SecurityConfiguration structure to be used by this crawler. CrawlerSecurityConfiguration *string `type:"string"` // The time that the crawler was created. CreationTime *time.Time `type:"timestamp"` // The name of the database in which the crawler's output is stored. DatabaseName *string `type:"string"` // A description of the crawler. Description *string `type:"string"` // The status of the last crawl, and potentially error information if an error // occurred. LastCrawl *LastCrawlInfo `type:"structure"` // The time that the crawler was last updated. LastUpdated *time.Time `type:"timestamp"` // The name of the crawler. Name *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of an IAM role that's used to access customer // resources, such as Amazon Simple Storage Service (Amazon S3) data. Role *string `type:"string"` // For scheduled crawlers, the schedule when the crawler runs. Schedule *Schedule `type:"structure"` // The policy that specifies update and delete behaviors for the crawler. SchemaChangePolicy *SchemaChangePolicy `type:"structure"` // Indicates whether the crawler is running, or whether a run is pending. State CrawlerState `type:"string" enum:"true"` // The prefix added to the names of tables that are created. TablePrefix *string `type:"string"` // A collection of targets to crawl. Targets *CrawlerTargets `type:"structure"` // The version of the crawler. Version *int64 `type:"long"` } // String returns the string representation func (s Crawler) String() string { return awsutil.Prettify(s) } // Metrics for a specified crawler. type CrawlerMetrics struct { _ struct{} `type:"structure"` // The name of the crawler. CrawlerName *string `min:"1" type:"string"` // The duration of the crawler's most recent run, in seconds. LastRuntimeSeconds *float64 `type:"double"` // The median duration of this crawler's runs, in seconds. MedianRuntimeSeconds *float64 `type:"double"` // True if the crawler is still estimating how long it will take to complete // this run. StillEstimating *bool `type:"boolean"` // The number of tables created by this crawler. TablesCreated *int64 `type:"integer"` // The number of tables deleted by this crawler. TablesDeleted *int64 `type:"integer"` // The number of tables updated by this crawler. TablesUpdated *int64 `type:"integer"` // The estimated time left to complete a running crawl. TimeLeftSeconds *float64 `type:"double"` } // String returns the string representation func (s CrawlerMetrics) String() string { return awsutil.Prettify(s) } // The details of a Crawler node present in the workflow. type CrawlerNodeDetails struct { _ struct{} `type:"structure"` // A list of crawls represented by the crawl node. Crawls []Crawl `type:"list"` } // String returns the string representation func (s CrawlerNodeDetails) String() string { return awsutil.Prettify(s) } // Specifies data stores to crawl. type CrawlerTargets struct { _ struct{} `type:"structure"` // Specifies AWS Glue Data Catalog targets. CatalogTargets []CatalogTarget `type:"list"` // Specifies Amazon DynamoDB targets. DynamoDBTargets []DynamoDBTarget `type:"list"` // Specifies JDBC targets. JdbcTargets []JdbcTarget `type:"list"` // Specifies Amazon Simple Storage Service (Amazon S3) targets. S3Targets []S3Target `type:"list"` } // String returns the string representation func (s CrawlerTargets) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CrawlerTargets) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CrawlerTargets"} if s.CatalogTargets != nil { for i, v := range s.CatalogTargets { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CatalogTargets", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a custom CSV classifier for CreateClassifier to create. type CreateCsvClassifierRequest struct { _ struct{} `type:"structure"` // Enables the processing of files that contain only one column. AllowSingleColumn *bool `type:"boolean"` // Indicates whether the CSV file contains a header. ContainsHeader CsvHeaderOption `type:"string" enum:"true"` // A custom symbol to denote what separates each column entry in the row. Delimiter *string `min:"1" type:"string"` // Specifies not to trim values before identifying the type of column values. // The default value is true. DisableValueTrimming *bool `type:"boolean"` // A list of strings representing column names. Header []string `type:"list"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A custom symbol to denote what combines content into a single column value. // Must be different from the column delimiter. QuoteSymbol *string `min:"1" type:"string"` } // String returns the string representation func (s CreateCsvClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCsvClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CreateCsvClassifierRequest"} if s.Delimiter != nil && len(*s.Delimiter) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Delimiter", 1)) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.QuoteSymbol != nil && len(*s.QuoteSymbol) < 1 { invalidParams.Add(aws.NewErrParamMinLen("QuoteSymbol", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a grok classifier for CreateClassifier to create. type CreateGrokClassifierRequest struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches, such as Twitter, // JSON, Omniture logs, Amazon CloudWatch Logs, and so on. // // Classification is a required field Classification *string `type:"string" required:"true"` // Optional custom grok patterns used by this classifier. CustomPatterns *string `type:"string"` // The grok pattern used by this classifier. // // GrokPattern is a required field GrokPattern *string `min:"1" type:"string" required:"true"` // The name of the new classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateGrokClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateGrokClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CreateGrokClassifierRequest"} if s.Classification == nil { invalidParams.Add(aws.NewErrParamRequired("Classification")) } if s.GrokPattern == nil { invalidParams.Add(aws.NewErrParamRequired("GrokPattern")) } if s.GrokPattern != nil && len(*s.GrokPattern) < 1 { invalidParams.Add(aws.NewErrParamMinLen("GrokPattern", 1)) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a JSON classifier for CreateClassifier to create. type CreateJsonClassifierRequest struct { _ struct{} `type:"structure"` // A JsonPath string defining the JSON data for the classifier to classify. // AWS Glue supports a subset of JsonPath, as described in Writing JsonPath // Custom Classifiers (https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html#custom-classifier-json). // // JsonPath is a required field JsonPath *string `type:"string" required:"true"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s CreateJsonClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateJsonClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CreateJsonClassifierRequest"} if s.JsonPath == nil { invalidParams.Add(aws.NewErrParamRequired("JsonPath")) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies an XML classifier for CreateClassifier to create. type CreateXMLClassifierRequest struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches. // // Classification is a required field Classification *string `type:"string" required:"true"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The XML tag designating the element that contains each record in an XML document // being parsed. This can't identify a self-closing element (closed by />). // An empty row element that contains only attributes can be parsed as long // as it ends with a closing tag (for example, // is okay, but is not). RowTag *string `type:"string"` } // String returns the string representation func (s CreateXMLClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateXMLClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "CreateXMLClassifierRequest"} if s.Classification == nil { invalidParams.Add(aws.NewErrParamRequired("Classification")) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A classifier for custom CSV content. type CsvClassifier struct { _ struct{} `type:"structure"` // Enables the processing of files that contain only one column. AllowSingleColumn *bool `type:"boolean"` // Indicates whether the CSV file contains a header. ContainsHeader CsvHeaderOption `type:"string" enum:"true"` // The time that this classifier was registered. CreationTime *time.Time `type:"timestamp"` // A custom symbol to denote what separates each column entry in the row. Delimiter *string `min:"1" type:"string"` // Specifies not to trim values before identifying the type of column values. // The default value is true. DisableValueTrimming *bool `type:"boolean"` // A list of strings representing column names. Header []string `type:"list"` // The time that this classifier was last updated. LastUpdated *time.Time `type:"timestamp"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A custom symbol to denote what combines content into a single column value. // It must be different from the column delimiter. QuoteSymbol *string `min:"1" type:"string"` // The version of this classifier. Version *int64 `type:"long"` } // String returns the string representation func (s CsvClassifier) String() string { return awsutil.Prettify(s) } // Contains configuration information for maintaining Data Catalog security. type DataCatalogEncryptionSettings struct { _ struct{} `type:"structure"` // When connection password protection is enabled, the Data Catalog uses a customer-provided // key to encrypt the password as part of CreateConnection or UpdateConnection // and store it in the ENCRYPTED_PASSWORD field in the connection properties. // You can enable catalog encryption or only password encryption. ConnectionPasswordEncryption *ConnectionPasswordEncryption `type:"structure"` // Specifies the encryption-at-rest configuration for the Data Catalog. EncryptionAtRest *EncryptionAtRest `type:"structure"` } // String returns the string representation func (s DataCatalogEncryptionSettings) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DataCatalogEncryptionSettings) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DataCatalogEncryptionSettings"} if s.ConnectionPasswordEncryption != nil { if err := s.ConnectionPasswordEncryption.Validate(); err != nil { invalidParams.AddNested("ConnectionPasswordEncryption", err.(aws.ErrInvalidParams)) } } if s.EncryptionAtRest != nil { if err := s.EncryptionAtRest.Validate(); err != nil { invalidParams.AddNested("EncryptionAtRest", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The AWS Lake Formation principal. type DataLakePrincipal struct { _ struct{} `type:"structure"` // An identifier for the AWS Lake Formation principal. DataLakePrincipalIdentifier *string `min:"1" type:"string"` } // String returns the string representation func (s DataLakePrincipal) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DataLakePrincipal) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DataLakePrincipal"} if s.DataLakePrincipalIdentifier != nil && len(*s.DataLakePrincipalIdentifier) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DataLakePrincipalIdentifier", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The Database object represents a logical grouping of tables that might reside // in a Hive metastore or an RDBMS. type Database struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the database resides. CatalogId *string `min:"1" type:"string"` // Creates a set of default permissions on the table for principals. CreateTableDefaultPermissions []PrincipalPermissions `type:"list"` // The time at which the metadata database was created in the catalog. CreateTime *time.Time `type:"timestamp"` // A description of the database. Description *string `type:"string"` // The location of the database (for example, an HDFS path). LocationUri *string `min:"1" type:"string"` // The name of the database. For Hive compatibility, this is folded to lowercase // when it is stored. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // These key-value pairs define parameters and properties of the database. Parameters map[string]string `type:"map"` // A DatabaseIdentifier structure that describes a target database for resource // linking. TargetDatabase *DatabaseIdentifier `type:"structure"` } // String returns the string representation func (s Database) String() string { return awsutil.Prettify(s) } // A structure that describes a target database for resource linking. type DatabaseIdentifier struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the database resides. CatalogId *string `min:"1" type:"string"` // The name of the catalog database. DatabaseName *string `min:"1" type:"string"` } // String returns the string representation func (s DatabaseIdentifier) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DatabaseIdentifier) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DatabaseIdentifier"} if s.CatalogId != nil && len(*s.CatalogId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("CatalogId", 1)) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DatabaseName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The structure used to create or update a database. type DatabaseInput struct { _ struct{} `type:"structure"` // Creates a set of default permissions on the table for principals. CreateTableDefaultPermissions []PrincipalPermissions `type:"list"` // A description of the database. Description *string `type:"string"` // The location of the database (for example, an HDFS path). LocationUri *string `min:"1" type:"string"` // The name of the database. For Hive compatibility, this is folded to lowercase // when it is stored. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // These key-value pairs define parameters and properties of the database. // // These key-value pairs define parameters and properties of the database. Parameters map[string]string `type:"map"` // A DatabaseIdentifier structure that describes a target database for resource // linking. TargetDatabase *DatabaseIdentifier `type:"structure"` } // String returns the string representation func (s DatabaseInput) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DatabaseInput) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DatabaseInput"} if s.LocationUri != nil && len(*s.LocationUri) < 1 { invalidParams.Add(aws.NewErrParamMinLen("LocationUri", 1)) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.CreateTableDefaultPermissions != nil { for i, v := range s.CreateTableDefaultPermissions { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CreateTableDefaultPermissions", i), err.(aws.ErrInvalidParams)) } } } if s.TargetDatabase != nil { if err := s.TargetDatabase.Validate(); err != nil { invalidParams.AddNested("TargetDatabase", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a date column statistics data. type DateColumnStatisticsData struct { _ struct{} `type:"structure"` // Maximum value of the column. MaximumValue *time.Time `type:"timestamp"` // Minimum value of the column. MinimumValue *time.Time `type:"timestamp"` // Number of distinct values. // // NumberOfDistinctValues is a required field NumberOfDistinctValues *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s DateColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DateColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DateColumnStatisticsData"} if s.NumberOfDistinctValues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfDistinctValues")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a decimal column statistics data. type DecimalColumnStatisticsData struct { _ struct{} `type:"structure"` // Maximum value of the column. MaximumValue *DecimalNumber `type:"structure"` // Minimum value of the column. MinimumValue *DecimalNumber `type:"structure"` // Number of distinct values. // // NumberOfDistinctValues is a required field NumberOfDistinctValues *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s DecimalColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DecimalColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DecimalColumnStatisticsData"} if s.NumberOfDistinctValues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfDistinctValues")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if s.MaximumValue != nil { if err := s.MaximumValue.Validate(); err != nil { invalidParams.AddNested("MaximumValue", err.(aws.ErrInvalidParams)) } } if s.MinimumValue != nil { if err := s.MinimumValue.Validate(); err != nil { invalidParams.AddNested("MinimumValue", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a numeric value in decimal format. type DecimalNumber struct { _ struct{} `type:"structure"` // The scale that determines where the decimal point falls in the unscaled value. // // Scale is a required field Scale *int64 `type:"integer" required:"true"` // The unscaled numeric value. // // UnscaledValue is automatically base64 encoded/decoded by the SDK. // // UnscaledValue is a required field UnscaledValue []byte `type:"blob" required:"true"` } // String returns the string representation func (s DecimalNumber) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DecimalNumber) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DecimalNumber"} if s.Scale == nil { invalidParams.Add(aws.NewErrParamRequired("Scale")) } if s.UnscaledValue == nil { invalidParams.Add(aws.NewErrParamRequired("UnscaledValue")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A development endpoint where a developer can remotely debug extract, transform, // and load (ETL) scripts. type DevEndpoint struct { _ struct{} `type:"structure"` // A map of arguments used to configure the DevEndpoint. // // Valid arguments are: // // * "--enable-glue-datacatalog": "" // // * "GLUE_PYTHON_VERSION": "3" // // * "GLUE_PYTHON_VERSION": "2" // // You can specify a version of Python support for development endpoints by // using the Arguments parameter in the CreateDevEndpoint or UpdateDevEndpoint // APIs. If no arguments are provided, the version defaults to Python 2. Arguments map[string]string `type:"map"` // The AWS Availability Zone where this DevEndpoint is located. AvailabilityZone *string `type:"string"` // The point in time at which this DevEndpoint was created. CreatedTimestamp *time.Time `type:"timestamp"` // The name of the DevEndpoint. EndpointName *string `type:"string"` // The path to one or more Java .jar files in an S3 bucket that should be loaded // in your DevEndpoint. // // You can only use pure Java/Scala libraries with a DevEndpoint. ExtraJarsS3Path *string `type:"string"` // The paths to one or more Python libraries in an Amazon S3 bucket that should // be loaded in your DevEndpoint. Multiple values must be complete paths separated // by a comma. // // You can only use pure Python libraries with a DevEndpoint. Libraries that // rely on C extensions, such as the pandas (http://pandas.pydata.org/) Python // data analysis library, are not currently supported. ExtraPythonLibsS3Path *string `type:"string"` // The reason for a current failure in this DevEndpoint. FailureReason *string `type:"string"` // Glue version determines the versions of Apache Spark and Python that AWS // Glue supports. The Python version indicates the version supported for running // your ETL scripts on development endpoints. // // For more information about the available AWS Glue versions and corresponding // Spark and Python versions, see Glue version (https://docs.aws.amazon.com/glue/latest/dg/add-job.html) // in the developer guide. // // Development endpoints that are created without specifying a Glue version // default to Glue 0.9. // // You can specify a version of Python support for development endpoints by // using the Arguments parameter in the CreateDevEndpoint or UpdateDevEndpoint // APIs. If no arguments are provided, the version defaults to Python 2. GlueVersion *string `min:"1" type:"string"` // The point in time at which this DevEndpoint was last modified. LastModifiedTimestamp *time.Time `type:"timestamp"` // The status of the last update. LastUpdateStatus *string `type:"string"` // The number of AWS Glue Data Processing Units (DPUs) allocated to this DevEndpoint. NumberOfNodes *int64 `type:"integer"` // The number of workers of a defined workerType that are allocated to the development // endpoint. // // The maximum number of workers you can define are 299 for G.1X, and 149 for // G.2X. NumberOfWorkers *int64 `type:"integer"` // A private IP address to access the DevEndpoint within a VPC if the DevEndpoint // is created within one. The PrivateAddress field is present only when you // create the DevEndpoint within your VPC. PrivateAddress *string `type:"string"` // The public IP address used by this DevEndpoint. The PublicAddress field is // present only when you create a non-virtual private cloud (VPC) DevEndpoint. PublicAddress *string `type:"string"` // The public key to be used by this DevEndpoint for authentication. This attribute // is provided for backward compatibility because the recommended attribute // to use is public keys. PublicKey *string `type:"string"` // A list of public keys to be used by the DevEndpoints for authentication. // Using this attribute is preferred over a single public key because the public // keys allow you to have a different private key per client. // // If you previously created an endpoint with a public key, you must remove // that key to be able to set a list of public keys. Call the UpdateDevEndpoint // API operation with the public key content in the deletePublicKeys attribute, // and the list of new keys in the addPublicKeys attribute. PublicKeys []string `type:"list"` // The Amazon Resource Name (ARN) of the IAM role used in this DevEndpoint. RoleArn *string `type:"string"` // The name of the SecurityConfiguration structure to be used with this DevEndpoint. SecurityConfiguration *string `min:"1" type:"string"` // A list of security group identifiers used in this DevEndpoint. SecurityGroupIds []string `type:"list"` // The current status of this DevEndpoint. Status *string `type:"string"` // The subnet ID for this DevEndpoint. SubnetId *string `type:"string"` // The ID of the virtual private cloud (VPC) used by this DevEndpoint. VpcId *string `type:"string"` // The type of predefined worker that is allocated to the development endpoint. // Accepts a value of Standard, G.1X, or G.2X. // // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of // memory and a 50GB disk, and 2 executors per worker. // // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of // memory, 64 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. // // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of // memory, 128 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. // // Known issue: when a development endpoint is created with the G.2X WorkerType // configuration, the Spark drivers for the development endpoint will run on // 4 vCPU, 16 GB of memory, and a 64 GB disk. WorkerType WorkerType `type:"string" enum:"true"` // The YARN endpoint address used by this DevEndpoint. YarnEndpointAddress *string `type:"string"` // The Apache Zeppelin port for the remote Apache Spark interpreter. ZeppelinRemoteSparkInterpreterPort *int64 `type:"integer"` } // String returns the string representation func (s DevEndpoint) String() string { return awsutil.Prettify(s) } // Custom libraries to be loaded into a development endpoint. type DevEndpointCustomLibraries struct { _ struct{} `type:"structure"` // The path to one or more Java .jar files in an S3 bucket that should be loaded // in your DevEndpoint. // // You can only use pure Java/Scala libraries with a DevEndpoint. ExtraJarsS3Path *string `type:"string"` // The paths to one or more Python libraries in an Amazon Simple Storage Service // (Amazon S3) bucket that should be loaded in your DevEndpoint. Multiple values // must be complete paths separated by a comma. // // You can only use pure Python libraries with a DevEndpoint. Libraries that // rely on C extensions, such as the pandas (http://pandas.pydata.org/) Python // data analysis library, are not currently supported. ExtraPythonLibsS3Path *string `type:"string"` } // String returns the string representation func (s DevEndpointCustomLibraries) String() string { return awsutil.Prettify(s) } // Defines a double column statistics data. type DoubleColumnStatisticsData struct { _ struct{} `type:"structure"` // Maximum value of the column. MaximumValue *float64 `type:"double"` // Minimum value of the column. MinimumValue *float64 `type:"double"` // Number of distinct values. // // NumberOfDistinctValues is a required field NumberOfDistinctValues *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s DoubleColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *DoubleColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "DoubleColumnStatisticsData"} if s.NumberOfDistinctValues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfDistinctValues")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies an Amazon DynamoDB table to crawl. type DynamoDBTarget struct { _ struct{} `type:"structure"` // The name of the DynamoDB table to crawl. Path *string `type:"string"` // Indicates whether to scan all the records, or to sample rows from the table. // Scanning all the records can take a long time when the table is not a high // throughput table. // // A value of true means to scan all records, while a value of false means to // sample the records. If no value is specified, the value defaults to true. ScanAll *bool `locationName:"scanAll" type:"boolean"` // The percentage of the configured read capacity units to use by the AWS Glue // crawler. Read capacity units is a term defined by DynamoDB, and is a numeric // value that acts as rate limiter for the number of reads that can be performed // on that table per second. // // The valid values are null or a value between 0.1 to 1.5. A null value is // used when user does not provide a value, and defaults to 0.5 of the configured // Read Capacity Unit (for provisioned tables), or 0.25 of the max configured // Read Capacity Unit (for tables using on-demand mode). ScanRate *float64 `locationName:"scanRate" type:"double"` } // String returns the string representation func (s DynamoDBTarget) String() string { return awsutil.Prettify(s) } // An edge represents a directed connection between two AWS Glue components // which are part of the workflow the edge belongs to. type Edge struct { _ struct{} `type:"structure"` // The unique of the node within the workflow where the edge ends. DestinationId *string `min:"1" type:"string"` // The unique of the node within the workflow where the edge starts. SourceId *string `min:"1" type:"string"` } // String returns the string representation func (s Edge) String() string { return awsutil.Prettify(s) } // Specifies the encryption-at-rest configuration for the Data Catalog. type EncryptionAtRest struct { _ struct{} `type:"structure"` // The encryption-at-rest mode for encrypting Data Catalog data. // // CatalogEncryptionMode is a required field CatalogEncryptionMode CatalogEncryptionMode `type:"string" required:"true" enum:"true"` // The ID of the AWS KMS key to use for encryption at rest. SseAwsKmsKeyId *string `min:"1" type:"string"` } // String returns the string representation func (s EncryptionAtRest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *EncryptionAtRest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "EncryptionAtRest"} if len(s.CatalogEncryptionMode) == 0 { invalidParams.Add(aws.NewErrParamRequired("CatalogEncryptionMode")) } if s.SseAwsKmsKeyId != nil && len(*s.SseAwsKmsKeyId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("SseAwsKmsKeyId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies an encryption configuration. type EncryptionConfiguration struct { _ struct{} `type:"structure"` // The encryption configuration for Amazon CloudWatch. CloudWatchEncryption *CloudWatchEncryption `type:"structure"` // The encryption configuration for job bookmarks. JobBookmarksEncryption *JobBookmarksEncryption `type:"structure"` // The encryption configuration for Amazon Simple Storage Service (Amazon S3) // data. S3Encryption []S3Encryption `type:"list"` } // String returns the string representation func (s EncryptionConfiguration) String() string { return awsutil.Prettify(s) } // Contains details about an error. type ErrorDetail struct { _ struct{} `type:"structure"` // The code associated with this error. ErrorCode *string `min:"1" type:"string"` // A message describing the error. ErrorMessage *string `type:"string"` } // String returns the string representation func (s ErrorDetail) String() string { return awsutil.Prettify(s) } // Evaluation metrics provide an estimate of the quality of your machine learning // transform. type EvaluationMetrics struct { _ struct{} `type:"structure"` // The evaluation metrics for the find matches algorithm. FindMatchesMetrics *FindMatchesMetrics `type:"structure"` // The type of machine learning transform. // // TransformType is a required field TransformType TransformType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s EvaluationMetrics) String() string { return awsutil.Prettify(s) } // An execution property of a job. type ExecutionProperty struct { _ struct{} `type:"structure"` // The maximum number of concurrent runs allowed for the job. The default is // 1. An error is returned when this threshold is reached. The maximum value // you can specify is controlled by a service limit. MaxConcurrentRuns *int64 `type:"integer"` } // String returns the string representation func (s ExecutionProperty) String() string { return awsutil.Prettify(s) } // Specifies configuration properties for an exporting labels task run. type ExportLabelsTaskRunProperties struct { _ struct{} `type:"structure"` // The Amazon Simple Storage Service (Amazon S3) path where you will export // the labels. OutputS3Path *string `type:"string"` } // String returns the string representation func (s ExportLabelsTaskRunProperties) String() string { return awsutil.Prettify(s) } // The evaluation metrics for the find matches algorithm. The quality of your // machine learning transform is measured by getting your transform to predict // some matches and comparing the results to known matches from the same dataset. // The quality metrics are based on a subset of your data, so they are not precise. type FindMatchesMetrics struct { _ struct{} `type:"structure"` // The area under the precision/recall curve (AUPRC) is a single number measuring // the overall quality of the transform, that is independent of the choice made // for precision vs. recall. Higher values indicate that you have a more attractive // precision vs. recall tradeoff. // // For more information, see Precision and recall (https://en.wikipedia.org/wiki/Precision_and_recall) // in Wikipedia. AreaUnderPRCurve *float64 `type:"double"` // The confusion matrix shows you what your transform is predicting accurately // and what types of errors it is making. // // For more information, see Confusion matrix (https://en.wikipedia.org/wiki/Confusion_matrix) // in Wikipedia. ConfusionMatrix *ConfusionMatrix `type:"structure"` // The maximum F1 metric indicates the transform's accuracy between 0 and 1, // where 1 is the best accuracy. // // For more information, see F1 score (https://en.wikipedia.org/wiki/F1_score) // in Wikipedia. F1 *float64 `type:"double"` // The precision metric indicates when often your transform is correct when // it predicts a match. Specifically, it measures how well the transform finds // true positives from the total true positives possible. // // For more information, see Precision and recall (https://en.wikipedia.org/wiki/Precision_and_recall) // in Wikipedia. Precision *float64 `type:"double"` // The recall metric indicates that for an actual match, how often your transform // predicts the match. Specifically, it measures how well the transform finds // true positives from the total records in the source data. // // For more information, see Precision and recall (https://en.wikipedia.org/wiki/Precision_and_recall) // in Wikipedia. Recall *float64 `type:"double"` } // String returns the string representation func (s FindMatchesMetrics) String() string { return awsutil.Prettify(s) } // The parameters to configure the find matches transform. type FindMatchesParameters struct { _ struct{} `type:"structure"` // The value that is selected when tuning your transform for a balance between // accuracy and cost. A value of 0.5 means that the system balances accuracy // and cost concerns. A value of 1.0 means a bias purely for accuracy, which // typically results in a higher cost, sometimes substantially higher. A value // of 0.0 means a bias purely for cost, which results in a less accurate FindMatches // transform, sometimes with unacceptable accuracy. // // Accuracy measures how well the transform finds true positives and true negatives. // Increasing accuracy requires more machine resources and cost. But it also // results in increased recall. // // Cost measures how many compute resources, and thus money, are consumed to // run the transform. AccuracyCostTradeoff *float64 `type:"double"` // The value to switch on or off to force the output to match the provided labels // from users. If the value is True, the find matches transform forces the output // to match the provided labels. The results override the normal conflation // results. If the value is False, the find matches transform does not ensure // all the labels provided are respected, and the results rely on the trained // model. // // Note that setting this value to true may increase the conflation execution // time. EnforceProvidedLabels *bool `type:"boolean"` // The value selected when tuning your transform for a balance between precision // and recall. A value of 0.5 means no preference; a value of 1.0 means a bias // purely for precision, and a value of 0.0 means a bias for recall. Because // this is a tradeoff, choosing values close to 1.0 means very low recall, and // choosing values close to 0.0 results in very low precision. // // The precision metric indicates how often your model is correct when it predicts // a match. // // The recall metric indicates that for an actual match, how often your model // predicts the match. PrecisionRecallTradeoff *float64 `type:"double"` // The name of a column that uniquely identifies rows in the source table. Used // to help identify matching records. PrimaryKeyColumnName *string `min:"1" type:"string"` } // String returns the string representation func (s FindMatchesParameters) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *FindMatchesParameters) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "FindMatchesParameters"} if s.PrimaryKeyColumnName != nil && len(*s.PrimaryKeyColumnName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("PrimaryKeyColumnName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies configuration properties for a Find Matches task run. type FindMatchesTaskRunProperties struct { _ struct{} `type:"structure"` // The job ID for the Find Matches task run. JobId *string `min:"1" type:"string"` // The name assigned to the job for the Find Matches task run. JobName *string `min:"1" type:"string"` // The job run ID for the Find Matches task run. JobRunId *string `min:"1" type:"string"` } // String returns the string representation func (s FindMatchesTaskRunProperties) String() string { return awsutil.Prettify(s) } // Filters the connection definitions that are returned by the GetConnections // API operation. type GetConnectionsFilter struct { _ struct{} `type:"structure"` // The type of connections to return. Currently, SFTP is not supported. ConnectionType ConnectionType `type:"string" enum:"true"` // A criteria string that must match the criteria recorded in the connection // definition for that connection definition to be returned. MatchCriteria []string `type:"list"` } // String returns the string representation func (s GetConnectionsFilter) String() string { return awsutil.Prettify(s) } // A structure for returning a resource policy. type GluePolicy struct { _ struct{} `type:"structure"` // The date and time at which the policy was created. CreateTime *time.Time `type:"timestamp"` // Contains the hash value associated with this policy. PolicyHash *string `min:"1" type:"string"` // Contains the requested policy document, in JSON format. PolicyInJson *string `min:"2" type:"string"` // The date and time at which the policy was last updated. UpdateTime *time.Time `type:"timestamp"` } // String returns the string representation func (s GluePolicy) String() string { return awsutil.Prettify(s) } // The database and table in the AWS Glue Data Catalog that is used for input // or output data. type GlueTable struct { _ struct{} `type:"structure"` // A unique identifier for the AWS Glue Data Catalog. CatalogId *string `min:"1" type:"string"` // The name of the connection to the AWS Glue Data Catalog. ConnectionName *string `min:"1" type:"string"` // A database name in the AWS Glue Data Catalog. // // DatabaseName is a required field DatabaseName *string `min:"1" type:"string" required:"true"` // A table name in the AWS Glue Data Catalog. // // TableName is a required field TableName *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s GlueTable) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *GlueTable) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "GlueTable"} if s.CatalogId != nil && len(*s.CatalogId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("CatalogId", 1)) } if s.ConnectionName != nil && len(*s.ConnectionName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("ConnectionName", 1)) } if s.DatabaseName == nil { invalidParams.Add(aws.NewErrParamRequired("DatabaseName")) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DatabaseName", 1)) } if s.TableName == nil { invalidParams.Add(aws.NewErrParamRequired("TableName")) } if s.TableName != nil && len(*s.TableName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("TableName", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A classifier that uses grok patterns. type GrokClassifier struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches, such as Twitter, // JSON, Omniture logs, and so on. // // Classification is a required field Classification *string `type:"string" required:"true"` // The time that this classifier was registered. CreationTime *time.Time `type:"timestamp"` // Optional custom grok patterns defined by this classifier. For more information, // see custom patterns in Writing Custom Classifiers (https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html). CustomPatterns *string `type:"string"` // The grok pattern applied to a data store by this classifier. For more information, // see built-in patterns in Writing Custom Classifiers (https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html). // // GrokPattern is a required field GrokPattern *string `min:"1" type:"string" required:"true"` // The time that this classifier was last updated. LastUpdated *time.Time `type:"timestamp"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The version of this classifier. Version *int64 `type:"long"` } // String returns the string representation func (s GrokClassifier) String() string { return awsutil.Prettify(s) } // Specifies configuration properties for an importing labels task run. type ImportLabelsTaskRunProperties struct { _ struct{} `type:"structure"` // The Amazon Simple Storage Service (Amazon S3) path from where you will import // the labels. InputS3Path *string `type:"string"` // Indicates whether to overwrite your existing labels. Replace *bool `type:"boolean"` } // String returns the string representation func (s ImportLabelsTaskRunProperties) String() string { return awsutil.Prettify(s) } // Specifies a JDBC data store to crawl. type JdbcTarget struct { _ struct{} `type:"structure"` // The name of the connection to use to connect to the JDBC target. ConnectionName *string `type:"string"` // A list of glob patterns used to exclude from the crawl. For more information, // see Catalog Tables with a Crawler (https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html). Exclusions []string `type:"list"` // The path of the JDBC target. Path *string `type:"string"` } // String returns the string representation func (s JdbcTarget) String() string { return awsutil.Prettify(s) } // Specifies a job definition. type Job struct { _ struct{} `type:"structure"` // This field is deprecated. Use MaxCapacity instead. // // The number of AWS Glue data processing units (DPUs) allocated to runs of // this job. You can allocate from 2 to 100 DPUs; the default is 10. A DPU is // a relative measure of processing power that consists of 4 vCPUs of compute // capacity and 16 GB of memory. For more information, see the AWS Glue pricing // page (https://aws.amazon.com/glue/pricing/). AllocatedCapacity *int64 `deprecated:"true" type:"integer"` // The JobCommand that executes this job. Command *JobCommand `type:"structure"` // The connections used for this job. Connections *ConnectionsList `type:"structure"` // The time and date that this job definition was created. CreatedOn *time.Time `type:"timestamp"` // The default arguments for this job, specified as name-value pairs. // // You can specify arguments here that your own job-execution script consumes, // as well as arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own Job arguments, // see the Calling AWS Glue APIs in Python (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) // topic in the developer guide. // // For information about the key-value pairs that AWS Glue consumes to set up // your job, see the Special Parameters Used by AWS Glue (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) // topic in the developer guide. DefaultArguments map[string]string `type:"map"` // A description of the job. Description *string `type:"string"` // An ExecutionProperty specifying the maximum number of concurrent runs allowed // for this job. ExecutionProperty *ExecutionProperty `type:"structure"` // Glue version determines the versions of Apache Spark and Python that AWS // Glue supports. The Python version indicates the version supported for jobs // of type Spark. // // For more information about the available AWS Glue versions and corresponding // Spark and Python versions, see Glue version (https://docs.aws.amazon.com/glue/latest/dg/add-job.html) // in the developer guide. // // Jobs that are created without specifying a Glue version default to Glue 0.9. GlueVersion *string `min:"1" type:"string"` // The last point in time when this job definition was modified. LastModifiedOn *time.Time `type:"timestamp"` // This field is reserved for future use. LogUri *string `type:"string"` // The number of AWS Glue data processing units (DPUs) that can be allocated // when this job runs. A DPU is a relative measure of processing power that // consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, // see the AWS Glue pricing page (https://aws.amazon.com/glue/pricing/). // // Do not set Max Capacity if using WorkerType and NumberOfWorkers. // // The value that can be allocated for MaxCapacity depends on whether you are // running a Python shell job or an Apache Spark ETL job: // // * When you specify a Python shell job (JobCommand.Name="pythonshell"), // you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. // // * When you specify an Apache Spark ETL job (JobCommand.Name="glueetl"), // you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job // type cannot have a fractional DPU allocation. MaxCapacity *float64 `type:"double"` // The maximum number of times to retry this job after a JobRun fails. MaxRetries *int64 `type:"integer"` // The name you assign to this job definition. Name *string `min:"1" type:"string"` // Non-overridable arguments for this job, specified as name-value pairs. NonOverridableArguments map[string]string `type:"map"` // Specifies configuration properties of a job notification. NotificationProperty *NotificationProperty `type:"structure"` // The number of workers of a defined workerType that are allocated when a job // runs. // // The maximum number of workers you can define are 299 for G.1X, and 149 for // G.2X. NumberOfWorkers *int64 `type:"integer"` // The name or Amazon Resource Name (ARN) of the IAM role associated with this // job. Role *string `type:"string"` // The name of the SecurityConfiguration structure to be used with this job. SecurityConfiguration *string `min:"1" type:"string"` // The job timeout in minutes. This is the maximum time that a job run can consume // resources before it is terminated and enters TIMEOUT status. The default // is 2,880 minutes (48 hours). Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts // a value of Standard, G.1X, or G.2X. // // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of // memory and a 50GB disk, and 2 executors per worker. // // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of // memory, 64 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. // // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of // memory, 128 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. WorkerType WorkerType `type:"string" enum:"true"` } // String returns the string representation func (s Job) String() string { return awsutil.Prettify(s) } // Defines a point that a job can resume processing. type JobBookmarkEntry struct { _ struct{} `type:"structure"` // The attempt ID number. Attempt *int64 `type:"integer"` // The bookmark itself. JobBookmark *string `type:"string"` // The name of the job in question. JobName *string `type:"string"` // The unique run identifier associated with the previous job run. PreviousRunId *string `type:"string"` // The run ID number. Run *int64 `type:"integer"` // The run ID number. RunId *string `type:"string"` // The version of the job. Version *int64 `type:"integer"` } // String returns the string representation func (s JobBookmarkEntry) String() string { return awsutil.Prettify(s) } // Specifies how job bookmark data should be encrypted. type JobBookmarksEncryption struct { _ struct{} `type:"structure"` // The encryption mode to use for job bookmarks data. JobBookmarksEncryptionMode JobBookmarksEncryptionMode `type:"string" enum:"true"` // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `type:"string"` } // String returns the string representation func (s JobBookmarksEncryption) String() string { return awsutil.Prettify(s) } // Specifies code executed when a job is run. type JobCommand struct { _ struct{} `type:"structure"` // The name of the job command. For an Apache Spark ETL job, this must be glueetl. // For a Python shell job, it must be pythonshell. Name *string `type:"string"` // The Python version being used to execute a Python shell job. Allowed values // are 2 or 3. PythonVersion *string `type:"string"` // Specifies the Amazon Simple Storage Service (Amazon S3) path to a script // that executes a job. ScriptLocation *string `type:"string"` } // String returns the string representation func (s JobCommand) String() string { return awsutil.Prettify(s) } // The details of a Job node present in the workflow. type JobNodeDetails struct { _ struct{} `type:"structure"` // The information for the job runs represented by the job node. JobRuns []JobRun `type:"list"` } // String returns the string representation func (s JobNodeDetails) String() string { return awsutil.Prettify(s) } // Contains information about a job run. type JobRun struct { _ struct{} `type:"structure"` // This field is deprecated. Use MaxCapacity instead. // // The number of AWS Glue data processing units (DPUs) allocated to this JobRun. // From 2 to 100 DPUs can be allocated; the default is 10. A DPU is a relative // measure of processing power that consists of 4 vCPUs of compute capacity // and 16 GB of memory. For more information, see the AWS Glue pricing page // (https://aws.amazon.com/glue/pricing/). AllocatedCapacity *int64 `deprecated:"true" type:"integer"` // The job arguments associated with this run. For this job run, they replace // the default arguments set in the job definition itself. // // You can specify arguments here that your own job-execution script consumes, // as well as arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own job arguments, // see the Calling AWS Glue APIs in Python (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) // topic in the developer guide. // // For information about the key-value pairs that AWS Glue consumes to set up // your job, see the Special Parameters Used by AWS Glue (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) // topic in the developer guide. Arguments map[string]string `type:"map"` // The number of the attempt to run this job. Attempt *int64 `type:"integer"` // The date and time that this job run completed. CompletedOn *time.Time `type:"timestamp"` // An error message associated with this job run. ErrorMessage *string `type:"string"` // The amount of time (in seconds) that the job run consumed resources. ExecutionTime *int64 `type:"integer"` // Glue version determines the versions of Apache Spark and Python that AWS // Glue supports. The Python version indicates the version supported for jobs // of type Spark. // // For more information about the available AWS Glue versions and corresponding // Spark and Python versions, see Glue version (https://docs.aws.amazon.com/glue/latest/dg/add-job.html) // in the developer guide. // // Jobs that are created without specifying a Glue version default to Glue 0.9. GlueVersion *string `min:"1" type:"string"` // The ID of this job run. Id *string `min:"1" type:"string"` // The name of the job definition being used in this run. JobName *string `min:"1" type:"string"` // The current state of the job run. For more information about the statuses // of jobs that have terminated abnormally, see AWS Glue Job Run Statuses (https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html). JobRunState JobRunState `type:"string" enum:"true"` // The last time that this job run was modified. LastModifiedOn *time.Time `type:"timestamp"` // The name of the log group for secure logging that can be server-side encrypted // in Amazon CloudWatch using AWS KMS. This name can be /aws-glue/jobs/, in // which case the default encryption is NONE. If you add a role name and SecurityConfiguration // name (in other words, /aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/), // then that security configuration is used to encrypt the log group. LogGroupName *string `type:"string"` // The number of AWS Glue data processing units (DPUs) that can be allocated // when this job runs. A DPU is a relative measure of processing power that // consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, // see the AWS Glue pricing page (https://docs.aws.amazon.com/https:/aws.amazon.com/glue/pricing/). // // Do not set Max Capacity if using WorkerType and NumberOfWorkers. // // The value that can be allocated for MaxCapacity depends on whether you are // running a Python shell job or an Apache Spark ETL job: // // * When you specify a Python shell job (JobCommand.Name="pythonshell"), // you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. // // * When you specify an Apache Spark ETL job (JobCommand.Name="glueetl"), // you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job // type cannot have a fractional DPU allocation. MaxCapacity *float64 `type:"double"` // Specifies configuration properties of a job run notification. NotificationProperty *NotificationProperty `type:"structure"` // The number of workers of a defined workerType that are allocated when a job // runs. // // The maximum number of workers you can define are 299 for G.1X, and 149 for // G.2X. NumberOfWorkers *int64 `type:"integer"` // A list of predecessors to this job run. PredecessorRuns []Predecessor `type:"list"` // The ID of the previous run of this job. For example, the JobRunId specified // in the StartJobRun action. PreviousRunId *string `min:"1" type:"string"` // The name of the SecurityConfiguration structure to be used with this job // run. SecurityConfiguration *string `min:"1" type:"string"` // The date and time at which this job run was started. StartedOn *time.Time `type:"timestamp"` // The JobRun timeout in minutes. This is the maximum time that a job run can // consume resources before it is terminated and enters TIMEOUT status. The // default is 2,880 minutes (48 hours). This overrides the timeout value set // in the parent job. Timeout *int64 `min:"1" type:"integer"` // The name of the trigger that started this job run. TriggerName *string `min:"1" type:"string"` // The type of predefined worker that is allocated when a job runs. Accepts // a value of Standard, G.1X, or G.2X. // // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of // memory and a 50GB disk, and 2 executors per worker. // // * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory // and a 64GB disk, and 1 executor per worker. // // * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory // and a 128GB disk, and 1 executor per worker. WorkerType WorkerType `type:"string" enum:"true"` } // String returns the string representation func (s JobRun) String() string { return awsutil.Prettify(s) } // Specifies information used to update an existing job definition. The previous // job definition is completely overwritten by this information. type JobUpdate struct { _ struct{} `type:"structure"` // This field is deprecated. Use MaxCapacity instead. // // The number of AWS Glue data processing units (DPUs) to allocate to this job. // You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative // measure of processing power that consists of 4 vCPUs of compute capacity // and 16 GB of memory. For more information, see the AWS Glue pricing page // (https://aws.amazon.com/glue/pricing/). AllocatedCapacity *int64 `deprecated:"true" type:"integer"` // The JobCommand that executes this job (required). Command *JobCommand `type:"structure"` // The connections used for this job. Connections *ConnectionsList `type:"structure"` // The default arguments for this job. // // You can specify arguments here that your own job-execution script consumes, // as well as arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own Job arguments, // see the Calling AWS Glue APIs in Python (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) // topic in the developer guide. // // For information about the key-value pairs that AWS Glue consumes to set up // your job, see the Special Parameters Used by AWS Glue (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) // topic in the developer guide. DefaultArguments map[string]string `type:"map"` // Description of the job being defined. Description *string `type:"string"` // An ExecutionProperty specifying the maximum number of concurrent runs allowed // for this job. ExecutionProperty *ExecutionProperty `type:"structure"` // Glue version determines the versions of Apache Spark and Python that AWS // Glue supports. The Python version indicates the version supported for jobs // of type Spark. // // For more information about the available AWS Glue versions and corresponding // Spark and Python versions, see Glue version (https://docs.aws.amazon.com/glue/latest/dg/add-job.html) // in the developer guide. GlueVersion *string `min:"1" type:"string"` // This field is reserved for future use. LogUri *string `type:"string"` // The number of AWS Glue data processing units (DPUs) that can be allocated // when this job runs. A DPU is a relative measure of processing power that // consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, // see the AWS Glue pricing page (https://aws.amazon.com/glue/pricing/). // // Do not set Max Capacity if using WorkerType and NumberOfWorkers. // // The value that can be allocated for MaxCapacity depends on whether you are // running a Python shell job or an Apache Spark ETL job: // // * When you specify a Python shell job (JobCommand.Name="pythonshell"), // you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. // // * When you specify an Apache Spark ETL job (JobCommand.Name="glueetl"), // you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job // type cannot have a fractional DPU allocation. MaxCapacity *float64 `type:"double"` // The maximum number of times to retry this job if it fails. MaxRetries *int64 `type:"integer"` // Non-overridable arguments for this job, specified as name-value pairs. NonOverridableArguments map[string]string `type:"map"` // Specifies the configuration properties of a job notification. NotificationProperty *NotificationProperty `type:"structure"` // The number of workers of a defined workerType that are allocated when a job // runs. // // The maximum number of workers you can define are 299 for G.1X, and 149 for // G.2X. NumberOfWorkers *int64 `type:"integer"` // The name or Amazon Resource Name (ARN) of the IAM role associated with this // job (required). Role *string `type:"string"` // The name of the SecurityConfiguration structure to be used with this job. SecurityConfiguration *string `min:"1" type:"string"` // The job timeout in minutes. This is the maximum time that a job run can consume // resources before it is terminated and enters TIMEOUT status. The default // is 2,880 minutes (48 hours). Timeout *int64 `min:"1" type:"integer"` // The type of predefined worker that is allocated when a job runs. Accepts // a value of Standard, G.1X, or G.2X. // // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of // memory and a 50GB disk, and 2 executors per worker. // // * For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of // memory, 64 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. // // * For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of // memory, 128 GB disk), and provides 1 executor per worker. We recommend // this worker type for memory-intensive jobs. WorkerType WorkerType `type:"string" enum:"true"` } // String returns the string representation func (s JobUpdate) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *JobUpdate) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "JobUpdate"} if s.GlueVersion != nil && len(*s.GlueVersion) < 1 { invalidParams.Add(aws.NewErrParamMinLen("GlueVersion", 1)) } if s.SecurityConfiguration != nil && len(*s.SecurityConfiguration) < 1 { invalidParams.Add(aws.NewErrParamMinLen("SecurityConfiguration", 1)) } if s.Timeout != nil && *s.Timeout < 1 { invalidParams.Add(aws.NewErrParamMinValue("Timeout", 1)) } if s.NotificationProperty != nil { if err := s.NotificationProperty.Validate(); err != nil { invalidParams.AddNested("NotificationProperty", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A classifier for JSON content. type JsonClassifier struct { _ struct{} `type:"structure"` // The time that this classifier was registered. CreationTime *time.Time `type:"timestamp"` // A JsonPath string defining the JSON data for the classifier to classify. // AWS Glue supports a subset of JsonPath, as described in Writing JsonPath // Custom Classifiers (https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html#custom-classifier-json). // // JsonPath is a required field JsonPath *string `type:"string" required:"true"` // The time that this classifier was last updated. LastUpdated *time.Time `type:"timestamp"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The version of this classifier. Version *int64 `type:"long"` } // String returns the string representation func (s JsonClassifier) String() string { return awsutil.Prettify(s) } // Specifies configuration properties for a labeling set generation task run. type LabelingSetGenerationTaskRunProperties struct { _ struct{} `type:"structure"` // The Amazon Simple Storage Service (Amazon S3) path where you will generate // the labeling set. OutputS3Path *string `type:"string"` } // String returns the string representation func (s LabelingSetGenerationTaskRunProperties) String() string { return awsutil.Prettify(s) } // Status and error information about the most recent crawl. type LastCrawlInfo struct { _ struct{} `type:"structure"` // If an error occurred, the error information about the last crawl. ErrorMessage *string `type:"string"` // The log group for the last crawl. LogGroup *string `min:"1" type:"string"` // The log stream for the last crawl. LogStream *string `min:"1" type:"string"` // The prefix for a message about this crawl. MessagePrefix *string `min:"1" type:"string"` // The time at which the crawl started. StartTime *time.Time `type:"timestamp"` // Status of the last crawl. Status LastCrawlStatus `type:"string" enum:"true"` } // String returns the string representation func (s LastCrawlInfo) String() string { return awsutil.Prettify(s) } // The location of resources. type Location struct { _ struct{} `type:"structure"` // An Amazon DynamoDB table location. DynamoDB []CodeGenNodeArg `type:"list"` // A JDBC location. Jdbc []CodeGenNodeArg `type:"list"` // An Amazon Simple Storage Service (Amazon S3) location. S3 []CodeGenNodeArg `type:"list"` } // String returns the string representation func (s Location) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Location) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Location"} if s.DynamoDB != nil { for i, v := range s.DynamoDB { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DynamoDB", i), err.(aws.ErrInvalidParams)) } } } if s.Jdbc != nil { for i, v := range s.Jdbc { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Jdbc", i), err.(aws.ErrInvalidParams)) } } } if s.S3 != nil { for i, v := range s.S3 { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a long column statistics data. type LongColumnStatisticsData struct { _ struct{} `type:"structure"` // Maximum value of the column. MaximumValue *int64 `type:"long"` // Minimum value of the column. MinimumValue *int64 `type:"long"` // Number of distinct values. // // NumberOfDistinctValues is a required field NumberOfDistinctValues *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s LongColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *LongColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "LongColumnStatisticsData"} if s.NumberOfDistinctValues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfDistinctValues")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure for a machine learning transform. type MLTransform struct { _ struct{} `type:"structure"` // A timestamp. The time and date that this machine learning transform was created. CreatedOn *time.Time `type:"timestamp"` // A user-defined, long-form description text for the machine learning transform. // Descriptions are not guaranteed to be unique and can be changed at any time. Description *string `type:"string"` // An EvaluationMetrics object. Evaluation metrics provide an estimate of the // quality of your machine learning transform. EvaluationMetrics *EvaluationMetrics `type:"structure"` // This value determines which version of AWS Glue this machine learning transform // is compatible with. Glue 1.0 is recommended for most customers. If the value // is not set, the Glue compatibility defaults to Glue 0.9. For more information, // see AWS Glue Versions (https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) // in the developer guide. GlueVersion *string `min:"1" type:"string"` // A list of AWS Glue table definitions used by the transform. InputRecordTables []GlueTable `type:"list"` // A count identifier for the labeling files generated by AWS Glue for this // transform. As you create a better transform, you can iteratively download, // label, and upload the labeling file. LabelCount *int64 `type:"integer"` // A timestamp. The last point in time when this machine learning transform // was modified. LastModifiedOn *time.Time `type:"timestamp"` // The number of AWS Glue data processing units (DPUs) that are allocated to // task runs for this transform. You can allocate from 2 to 100 DPUs; the default // is 10. A DPU is a relative measure of processing power that consists of 4 // vCPUs of compute capacity and 16 GB of memory. For more information, see // the AWS Glue pricing page (http://aws.amazon.com/glue/pricing/). // // MaxCapacity is a mutually exclusive option with NumberOfWorkers and WorkerType. // // * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot // be set. // // * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can // be set. // // * If WorkerType is set, then NumberOfWorkers is required (and vice versa). // // * MaxCapacity and NumberOfWorkers must both be at least 1. // // When the WorkerType field is set to a value other than Standard, the MaxCapacity // field is set automatically and becomes read-only. MaxCapacity *float64 `type:"double"` // The maximum number of times to retry after an MLTaskRun of the machine learning // transform fails. MaxRetries *int64 `type:"integer"` // A user-defined name for the machine learning transform. Names are not guaranteed // unique and can be changed at any time. Name *string `min:"1" type:"string"` // The number of workers of a defined workerType that are allocated when a task // of the transform runs. // // If WorkerType is set, then NumberOfWorkers is required (and vice versa). NumberOfWorkers *int64 `type:"integer"` // A TransformParameters object. You can use parameters to tune (customize) // the behavior of the machine learning transform by specifying what data it // learns from and your preference on various tradeoffs (such as precious vs. // recall, or accuracy vs. cost). Parameters *TransformParameters `type:"structure"` // The name or Amazon Resource Name (ARN) of the IAM role with the required // permissions. The required permissions include both AWS Glue service role // permissions to AWS Glue resources, and Amazon S3 permissions required by // the transform. // // * This role needs AWS Glue service role permissions to allow access to // resources in AWS Glue. See Attach a Policy to IAM Users That Access AWS // Glue (https://docs.aws.amazon.com/glue/latest/dg/attach-policy-iam-user.html). // // * This role needs permission to your Amazon Simple Storage Service (Amazon // S3) sources, targets, temporary directory, scripts, and any libraries // used by the task run for this transform. Role *string `type:"string"` // A map of key-value pairs representing the columns and data types that this // transform can run against. Has an upper bound of 100 columns. Schema []SchemaColumn `type:"list"` // The current status of the machine learning transform. Status TransformStatusType `type:"string" enum:"true"` // The timeout in minutes of the machine learning transform. Timeout *int64 `min:"1" type:"integer"` // The unique transform ID that is generated for the machine learning transform. // The ID is guaranteed to be unique and does not change. TransformId *string `min:"1" type:"string"` // The type of predefined worker that is allocated when a task of this transform // runs. Accepts a value of Standard, G.1X, or G.2X. // // * For the Standard worker type, each worker provides 4 vCPU, 16 GB of // memory and a 50GB disk, and 2 executors per worker. // // * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory // and a 64GB disk, and 1 executor per worker. // // * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory // and a 128GB disk, and 1 executor per worker. // // MaxCapacity is a mutually exclusive option with NumberOfWorkers and WorkerType. // // * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot // be set. // // * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can // be set. // // * If WorkerType is set, then NumberOfWorkers is required (and vice versa). // // * MaxCapacity and NumberOfWorkers must both be at least 1. WorkerType WorkerType `type:"string" enum:"true"` } // String returns the string representation func (s MLTransform) String() string { return awsutil.Prettify(s) } // Defines a mapping. type MappingEntry struct { _ struct{} `type:"structure"` // The source path. SourcePath *string `type:"string"` // The name of the source table. SourceTable *string `type:"string"` // The source type. SourceType *string `type:"string"` // The target path. TargetPath *string `type:"string"` // The target table. TargetTable *string `type:"string"` // The target type. TargetType *string `type:"string"` } // String returns the string representation func (s MappingEntry) String() string { return awsutil.Prettify(s) } // A node represents an AWS Glue component like Trigger, Job etc. which is part // of a workflow. type Node struct { _ struct{} `type:"structure"` // Details of the crawler when the node represents a crawler. CrawlerDetails *CrawlerNodeDetails `type:"structure"` // Details of the Job when the node represents a Job. JobDetails *JobNodeDetails `type:"structure"` // The name of the AWS Glue component represented by the node. Name *string `min:"1" type:"string"` // Details of the Trigger when the node represents a Trigger. TriggerDetails *TriggerNodeDetails `type:"structure"` // The type of AWS Glue component represented by the node. Type NodeType `type:"string" enum:"true"` // The unique Id assigned to the node within the workflow. UniqueId *string `min:"1" type:"string"` } // String returns the string representation func (s Node) String() string { return awsutil.Prettify(s) } // Specifies configuration properties of a notification. type NotificationProperty struct { _ struct{} `type:"structure"` // After a job run starts, the number of minutes to wait before sending a job // run delay notification. NotifyDelayAfter *int64 `min:"1" type:"integer"` } // String returns the string representation func (s NotificationProperty) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *NotificationProperty) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "NotificationProperty"} if s.NotifyDelayAfter != nil && *s.NotifyDelayAfter < 1 { invalidParams.Add(aws.NewErrParamMinValue("NotifyDelayAfter", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the sort order of a sorted column. type Order struct { _ struct{} `type:"structure"` // The name of the column. // // Column is a required field Column *string `min:"1" type:"string" required:"true"` // Indicates that the column is sorted in ascending order (== 1), or in descending // order (==0). // // SortOrder is a required field SortOrder *int64 `type:"integer" required:"true"` } // String returns the string representation func (s Order) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Order) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Order"} if s.Column == nil { invalidParams.Add(aws.NewErrParamRequired("Column")) } if s.Column != nil && len(*s.Column) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Column", 1)) } if s.SortOrder == nil { invalidParams.Add(aws.NewErrParamRequired("SortOrder")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a slice of table data. type Partition struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the partition resides. CatalogId *string `min:"1" type:"string"` // The time at which the partition was created. CreationTime *time.Time `type:"timestamp"` // The name of the catalog database in which to create the partition. DatabaseName *string `min:"1" type:"string"` // The last time at which the partition was accessed. LastAccessTime *time.Time `type:"timestamp"` // The last time at which column statistics were computed for this partition. LastAnalyzedTime *time.Time `type:"timestamp"` // These key-value pairs define partition parameters. Parameters map[string]string `type:"map"` // Provides information about the physical location where the partition is stored. StorageDescriptor *StorageDescriptor `type:"structure"` // The name of the database table in which to create the partition. TableName *string `min:"1" type:"string"` // The values of the partition. Values []string `type:"list"` } // String returns the string representation func (s Partition) String() string { return awsutil.Prettify(s) } // Contains information about a partition error. type PartitionError struct { _ struct{} `type:"structure"` // The details about the partition error. ErrorDetail *ErrorDetail `type:"structure"` // The values that define the partition. PartitionValues []string `type:"list"` } // String returns the string representation func (s PartitionError) String() string { return awsutil.Prettify(s) } // The structure used to create and update a partition. type PartitionInput struct { _ struct{} `type:"structure"` // The last time at which the partition was accessed. LastAccessTime *time.Time `type:"timestamp"` // The last time at which column statistics were computed for this partition. LastAnalyzedTime *time.Time `type:"timestamp"` // These key-value pairs define partition parameters. Parameters map[string]string `type:"map"` // Provides information about the physical location where the partition is stored. StorageDescriptor *StorageDescriptor `type:"structure"` // The values of the partition. Although this parameter is not required by the // SDK, you must specify this parameter for a valid input. // // The values for the keys for the new partition must be passed as an array // of String objects that must be ordered in the same order as the partition // keys appearing in the Amazon S3 prefix. Otherwise AWS Glue will add the values // to the wrong keys. Values []string `type:"list"` } // String returns the string representation func (s PartitionInput) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *PartitionInput) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "PartitionInput"} if s.StorageDescriptor != nil { if err := s.StorageDescriptor.Validate(); err != nil { invalidParams.AddNested("StorageDescriptor", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Contains a list of values defining partitions. type PartitionValueList struct { _ struct{} `type:"structure"` // The list of values. // // Values is a required field Values []string `type:"list" required:"true"` } // String returns the string representation func (s PartitionValueList) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *PartitionValueList) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "PartitionValueList"} if s.Values == nil { invalidParams.Add(aws.NewErrParamRequired("Values")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies the physical requirements for a connection. type PhysicalConnectionRequirements struct { _ struct{} `type:"structure"` // The connection's Availability Zone. This field is redundant because the specified // subnet implies the Availability Zone to be used. Currently the field must // be populated, but it will be deprecated in the future. AvailabilityZone *string `min:"1" type:"string"` // The security group ID list used by the connection. SecurityGroupIdList []string `type:"list"` // The subnet ID used by the connection. SubnetId *string `min:"1" type:"string"` } // String returns the string representation func (s PhysicalConnectionRequirements) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *PhysicalConnectionRequirements) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "PhysicalConnectionRequirements"} if s.AvailabilityZone != nil && len(*s.AvailabilityZone) < 1 { invalidParams.Add(aws.NewErrParamMinLen("AvailabilityZone", 1)) } if s.SubnetId != nil && len(*s.SubnetId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("SubnetId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A job run that was used in the predicate of a conditional trigger that triggered // this job run. type Predecessor struct { _ struct{} `type:"structure"` // The name of the job definition used by the predecessor job run. JobName *string `min:"1" type:"string"` // The job-run ID of the predecessor job run. RunId *string `min:"1" type:"string"` } // String returns the string representation func (s Predecessor) String() string { return awsutil.Prettify(s) } // Defines the predicate of the trigger, which determines when it fires. type Predicate struct { _ struct{} `type:"structure"` // A list of the conditions that determine when the trigger will fire. Conditions []Condition `type:"list"` // An optional field if only one condition is listed. If multiple conditions // are listed, then this field is required. Logical Logical `type:"string" enum:"true"` } // String returns the string representation func (s Predicate) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Predicate) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Predicate"} if s.Conditions != nil { for i, v := range s.Conditions { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Conditions", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Permissions granted to a principal. type PrincipalPermissions struct { _ struct{} `type:"structure"` // The permissions that are granted to the principal. Permissions []Permission `type:"list"` // The principal who is granted permissions. Principal *DataLakePrincipal `type:"structure"` } // String returns the string representation func (s PrincipalPermissions) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *PrincipalPermissions) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "PrincipalPermissions"} if s.Principal != nil { if err := s.Principal.Validate(); err != nil { invalidParams.AddNested("Principal", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a property predicate. type PropertyPredicate struct { _ struct{} `type:"structure"` // The comparator used to compare this property to others. Comparator Comparator `type:"string" enum:"true"` // The key of the property. Key *string `type:"string"` // The value of the property. Value *string `type:"string"` } // String returns the string representation func (s PropertyPredicate) String() string { return awsutil.Prettify(s) } // The URIs for function resources. type ResourceUri struct { _ struct{} `type:"structure"` // The type of the resource. ResourceType ResourceType `type:"string" enum:"true"` // The URI for accessing the resource. Uri *string `min:"1" type:"string"` } // String returns the string representation func (s ResourceUri) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *ResourceUri) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "ResourceUri"} if s.Uri != nil && len(*s.Uri) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Uri", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies how Amazon Simple Storage Service (Amazon S3) data should be encrypted. type S3Encryption struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `type:"string"` // The encryption mode to use for Amazon S3 data. S3EncryptionMode S3EncryptionMode `type:"string" enum:"true"` } // String returns the string representation func (s S3Encryption) String() string { return awsutil.Prettify(s) } // Specifies a data store in Amazon Simple Storage Service (Amazon S3). type S3Target struct { _ struct{} `type:"structure"` // A list of glob patterns used to exclude from the crawl. For more information, // see Catalog Tables with a Crawler (https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html). Exclusions []string `type:"list"` // The path to the Amazon S3 target. Path *string `type:"string"` } // String returns the string representation func (s S3Target) String() string { return awsutil.Prettify(s) } // A scheduling object using a cron statement to schedule an event. type Schedule struct { _ struct{} `type:"structure"` // A cron expression used to specify the schedule (see Time-Based Schedules // for Jobs and Crawlers (https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html). // For example, to run something every day at 12:15 UTC, you would specify: // cron(15 12 * * ? *). ScheduleExpression *string `type:"string"` // The state of the schedule. State ScheduleState `type:"string" enum:"true"` } // String returns the string representation func (s Schedule) String() string { return awsutil.Prettify(s) } // A policy that specifies update and deletion behaviors for the crawler. type SchemaChangePolicy struct { _ struct{} `type:"structure"` // The deletion behavior when the crawler finds a deleted object. DeleteBehavior DeleteBehavior `type:"string" enum:"true"` // The update behavior when the crawler finds a changed schema. UpdateBehavior UpdateBehavior `type:"string" enum:"true"` } // String returns the string representation func (s SchemaChangePolicy) String() string { return awsutil.Prettify(s) } // A key-value pair representing a column and data type that this transform // can run against. The Schema parameter of the MLTransform may contain up to // 100 of these structures. type SchemaColumn struct { _ struct{} `type:"structure"` // The type of data in the column. DataType *string `type:"string"` // The name of the column. Name *string `min:"1" type:"string"` } // String returns the string representation func (s SchemaColumn) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *SchemaColumn) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "SchemaColumn"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a security configuration. type SecurityConfiguration struct { _ struct{} `type:"structure"` // The time at which this security configuration was created. CreatedTimeStamp *time.Time `type:"timestamp"` // The encryption configuration associated with this security configuration. EncryptionConfiguration *EncryptionConfiguration `type:"structure"` // The name of the security configuration. Name *string `min:"1" type:"string"` } // String returns the string representation func (s SecurityConfiguration) String() string { return awsutil.Prettify(s) } // Defines a non-overlapping region of a table's partitions, allowing multiple // requests to be executed in parallel. type Segment struct { _ struct{} `type:"structure"` // The zero-based index number of the segment. For example, if the total number // of segments is 4, SegmentNumber values range from 0 through 3. // // SegmentNumber is a required field SegmentNumber *int64 `type:"integer" required:"true"` // The total number of segments. // // TotalSegments is a required field TotalSegments *int64 `min:"1" type:"integer" required:"true"` } // String returns the string representation func (s Segment) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *Segment) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "Segment"} if s.SegmentNumber == nil { invalidParams.Add(aws.NewErrParamRequired("SegmentNumber")) } if s.TotalSegments == nil { invalidParams.Add(aws.NewErrParamRequired("TotalSegments")) } if s.TotalSegments != nil && *s.TotalSegments < 1 { invalidParams.Add(aws.NewErrParamMinValue("TotalSegments", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a serialization/deserialization program (SerDe) that serves // as an extractor and loader. type SerDeInfo struct { _ struct{} `type:"structure"` // Name of the SerDe. Name *string `min:"1" type:"string"` // These key-value pairs define initialization parameters for the SerDe. Parameters map[string]string `type:"map"` // Usually the class that implements the SerDe. An example is org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe. SerializationLibrary *string `min:"1" type:"string"` } // String returns the string representation func (s SerDeInfo) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *SerDeInfo) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "SerDeInfo"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.SerializationLibrary != nil && len(*s.SerializationLibrary) < 1 { invalidParams.Add(aws.NewErrParamMinLen("SerializationLibrary", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies skewed values in a table. Skewed values are those that occur with // very high frequency. type SkewedInfo struct { _ struct{} `type:"structure"` // A list of names of columns that contain skewed values. SkewedColumnNames []string `type:"list"` // A mapping of skewed values to the columns that contain them. SkewedColumnValueLocationMaps map[string]string `type:"map"` // A list of values that appear so frequently as to be considered skewed. SkewedColumnValues []string `type:"list"` } // String returns the string representation func (s SkewedInfo) String() string { return awsutil.Prettify(s) } // Specifies a field to sort by and a sort order. type SortCriterion struct { _ struct{} `type:"structure"` // The name of the field on which to sort. FieldName *string `type:"string"` // An ascending or descending sort. Sort Sort `type:"string" enum:"true"` } // String returns the string representation func (s SortCriterion) String() string { return awsutil.Prettify(s) } // Describes the physical storage of table data. type StorageDescriptor struct { _ struct{} `type:"structure"` // A list of reducer grouping columns, clustering columns, and bucketing columns // in the table. BucketColumns []string `type:"list"` // A list of the Columns in the table. Columns []Column `type:"list"` // True if the data in the table is compressed, or False if not. Compressed *bool `type:"boolean"` // The input format: SequenceFileInputFormat (binary), or TextInputFormat, or // a custom format. InputFormat *string `type:"string"` // The physical location of the table. By default, this takes the form of the // warehouse location, followed by the database location in the warehouse, followed // by the table name. Location *string `type:"string"` // Must be specified if the table contains any dimension columns. NumberOfBuckets *int64 `type:"integer"` // The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat, // or a custom format. OutputFormat *string `type:"string"` // The user-supplied properties in key-value form. Parameters map[string]string `type:"map"` // The serialization/deserialization (SerDe) information. SerdeInfo *SerDeInfo `type:"structure"` // The information about values that appear frequently in a column (skewed values). SkewedInfo *SkewedInfo `type:"structure"` // A list specifying the sort order of each bucket in the table. SortColumns []Order `type:"list"` // True if the table data is stored in subdirectories, or False if not. StoredAsSubDirectories *bool `type:"boolean"` } // String returns the string representation func (s StorageDescriptor) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *StorageDescriptor) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "StorageDescriptor"} if s.Columns != nil { for i, v := range s.Columns { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Columns", i), err.(aws.ErrInvalidParams)) } } } if s.SerdeInfo != nil { if err := s.SerdeInfo.Validate(); err != nil { invalidParams.AddNested("SerdeInfo", err.(aws.ErrInvalidParams)) } } if s.SortColumns != nil { for i, v := range s.SortColumns { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortColumns", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Defines a string column statistics data. type StringColumnStatisticsData struct { _ struct{} `type:"structure"` // Average value of the column. // // AverageLength is a required field AverageLength *float64 `type:"double" required:"true"` // Maximum value of the column. // // MaximumLength is a required field MaximumLength *int64 `type:"long" required:"true"` // Number of distinct values. // // NumberOfDistinctValues is a required field NumberOfDistinctValues *int64 `type:"long" required:"true"` // Number of nulls. // // NumberOfNulls is a required field NumberOfNulls *int64 `type:"long" required:"true"` } // String returns the string representation func (s StringColumnStatisticsData) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *StringColumnStatisticsData) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "StringColumnStatisticsData"} if s.AverageLength == nil { invalidParams.Add(aws.NewErrParamRequired("AverageLength")) } if s.MaximumLength == nil { invalidParams.Add(aws.NewErrParamRequired("MaximumLength")) } if s.NumberOfDistinctValues == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfDistinctValues")) } if s.NumberOfNulls == nil { invalidParams.Add(aws.NewErrParamRequired("NumberOfNulls")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents a collection of related data organized in columns and rows. type Table struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the table resides. CatalogId *string `min:"1" type:"string"` // The time when the table definition was created in the Data Catalog. CreateTime *time.Time `type:"timestamp"` // The person or entity who created the table. CreatedBy *string `min:"1" type:"string"` // The name of the database where the table metadata resides. For Hive compatibility, // this must be all lowercase. DatabaseName *string `min:"1" type:"string"` // A description of the table. Description *string `type:"string"` // Indicates whether the table has been registered with AWS Lake Formation. IsRegisteredWithLakeFormation *bool `type:"boolean"` // The last time that the table was accessed. This is usually taken from HDFS, // and might not be reliable. LastAccessTime *time.Time `type:"timestamp"` // The last time that column statistics were computed for this table. LastAnalyzedTime *time.Time `type:"timestamp"` // The table name. For Hive compatibility, this must be entirely lowercase. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The owner of the table. Owner *string `min:"1" type:"string"` // These key-value pairs define properties associated with the table. Parameters map[string]string `type:"map"` // A list of columns by which the table is partitioned. Only primitive types // are supported as partition keys. // // When you create a table used by Amazon Athena, and you do not specify any // partitionKeys, you must at least set the value of partitionKeys to an empty // list. For example: // // "PartitionKeys": [] PartitionKeys []Column `type:"list"` // The retention time for this table. Retention *int64 `type:"integer"` // A storage descriptor containing information about the physical storage of // this table. StorageDescriptor *StorageDescriptor `type:"structure"` // The type of this table (EXTERNAL_TABLE, VIRTUAL_VIEW, etc.). TableType *string `type:"string"` // A TableIdentifier structure that describes a target table for resource linking. TargetTable *TableIdentifier `type:"structure"` // The last time that the table was updated. UpdateTime *time.Time `type:"timestamp"` // If the table is a view, the expanded text of the view; otherwise null. ViewExpandedText *string `type:"string"` // If the table is a view, the original text of the view; otherwise null. ViewOriginalText *string `type:"string"` } // String returns the string representation func (s Table) String() string { return awsutil.Prettify(s) } // An error record for table operations. type TableError struct { _ struct{} `type:"structure"` // The details about the error. ErrorDetail *ErrorDetail `type:"structure"` // The name of the table. For Hive compatibility, this must be entirely lowercase. TableName *string `min:"1" type:"string"` } // String returns the string representation func (s TableError) String() string { return awsutil.Prettify(s) } // A structure that describes a target table for resource linking. type TableIdentifier struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the table resides. CatalogId *string `min:"1" type:"string"` // The name of the catalog database that contains the target table. DatabaseName *string `min:"1" type:"string"` // The name of the target table. Name *string `min:"1" type:"string"` } // String returns the string representation func (s TableIdentifier) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TableIdentifier) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TableIdentifier"} if s.CatalogId != nil && len(*s.CatalogId) < 1 { invalidParams.Add(aws.NewErrParamMinLen("CatalogId", 1)) } if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("DatabaseName", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // A structure used to define a table. type TableInput struct { _ struct{} `type:"structure"` // A description of the table. Description *string `type:"string"` // The last time that the table was accessed. LastAccessTime *time.Time `type:"timestamp"` // The last time that column statistics were computed for this table. LastAnalyzedTime *time.Time `type:"timestamp"` // The table name. For Hive compatibility, this is folded to lowercase when // it is stored. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The table owner. Owner *string `min:"1" type:"string"` // These key-value pairs define properties associated with the table. Parameters map[string]string `type:"map"` // A list of columns by which the table is partitioned. Only primitive types // are supported as partition keys. // // When you create a table used by Amazon Athena, and you do not specify any // partitionKeys, you must at least set the value of partitionKeys to an empty // list. For example: // // "PartitionKeys": [] PartitionKeys []Column `type:"list"` // The retention time for this table. Retention *int64 `type:"integer"` // A storage descriptor containing information about the physical storage of // this table. StorageDescriptor *StorageDescriptor `type:"structure"` // The type of this table (EXTERNAL_TABLE, VIRTUAL_VIEW, etc.). TableType *string `type:"string"` // A TableIdentifier structure that describes a target table for resource linking. TargetTable *TableIdentifier `type:"structure"` // If the table is a view, the expanded text of the view; otherwise null. ViewExpandedText *string `type:"string"` // If the table is a view, the original text of the view; otherwise null. ViewOriginalText *string `type:"string"` } // String returns the string representation func (s TableInput) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TableInput) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TableInput"} if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.Owner != nil && len(*s.Owner) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Owner", 1)) } if s.PartitionKeys != nil { for i, v := range s.PartitionKeys { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PartitionKeys", i), err.(aws.ErrInvalidParams)) } } } if s.StorageDescriptor != nil { if err := s.StorageDescriptor.Validate(); err != nil { invalidParams.AddNested("StorageDescriptor", err.(aws.ErrInvalidParams)) } } if s.TargetTable != nil { if err := s.TargetTable.Validate(); err != nil { invalidParams.AddNested("TargetTable", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a version of a table. type TableVersion struct { _ struct{} `type:"structure"` // The table in question. Table *Table `type:"structure"` // The ID value that identifies this table version. A VersionId is a string // representation of an integer. Each version is incremented by 1. VersionId *string `min:"1" type:"string"` } // String returns the string representation func (s TableVersion) String() string { return awsutil.Prettify(s) } // An error record for table-version operations. type TableVersionError struct { _ struct{} `type:"structure"` // The details about the error. ErrorDetail *ErrorDetail `type:"structure"` // The name of the table in question. TableName *string `min:"1" type:"string"` // The ID value of the version in question. A VersionID is a string representation // of an integer. Each version is incremented by 1. VersionId *string `min:"1" type:"string"` } // String returns the string representation func (s TableVersionError) String() string { return awsutil.Prettify(s) } // The sampling parameters that are associated with the machine learning transform. type TaskRun struct { _ struct{} `type:"structure"` // The last point in time that the requested task run was completed. CompletedOn *time.Time `type:"timestamp"` // The list of error strings associated with this task run. ErrorString *string `type:"string"` // The amount of time (in seconds) that the task run consumed resources. ExecutionTime *int64 `type:"integer"` // The last point in time that the requested task run was updated. LastModifiedOn *time.Time `type:"timestamp"` // The names of the log group for secure logging, associated with this task // run. LogGroupName *string `type:"string"` // Specifies configuration properties associated with this task run. Properties *TaskRunProperties `type:"structure"` // The date and time that this task run started. StartedOn *time.Time `type:"timestamp"` // The current status of the requested task run. Status TaskStatusType `type:"string" enum:"true"` // The unique identifier for this task run. TaskRunId *string `min:"1" type:"string"` // The unique identifier for the transform. TransformId *string `min:"1" type:"string"` } // String returns the string representation func (s TaskRun) String() string { return awsutil.Prettify(s) } // The criteria that are used to filter the task runs for the machine learning // transform. type TaskRunFilterCriteria struct { _ struct{} `type:"structure"` // Filter on task runs started after this date. StartedAfter *time.Time `type:"timestamp"` // Filter on task runs started before this date. StartedBefore *time.Time `type:"timestamp"` // The current status of the task run. Status TaskStatusType `type:"string" enum:"true"` // The type of task run. TaskRunType TaskType `type:"string" enum:"true"` } // String returns the string representation func (s TaskRunFilterCriteria) String() string { return awsutil.Prettify(s) } // The configuration properties for the task run. type TaskRunProperties struct { _ struct{} `type:"structure"` // The configuration properties for an exporting labels task run. ExportLabelsTaskRunProperties *ExportLabelsTaskRunProperties `type:"structure"` // The configuration properties for a find matches task run. FindMatchesTaskRunProperties *FindMatchesTaskRunProperties `type:"structure"` // The configuration properties for an importing labels task run. ImportLabelsTaskRunProperties *ImportLabelsTaskRunProperties `type:"structure"` // The configuration properties for a labeling set generation task run. LabelingSetGenerationTaskRunProperties *LabelingSetGenerationTaskRunProperties `type:"structure"` // The type of task run. TaskType TaskType `type:"string" enum:"true"` } // String returns the string representation func (s TaskRunProperties) String() string { return awsutil.Prettify(s) } // The sorting criteria that are used to sort the list of task runs for the // machine learning transform. type TaskRunSortCriteria struct { _ struct{} `type:"structure"` // The column to be used to sort the list of task runs for the machine learning // transform. // // Column is a required field Column TaskRunSortColumnType `type:"string" required:"true" enum:"true"` // The sort direction to be used to sort the list of task runs for the machine // learning transform. // // SortDirection is a required field SortDirection SortDirectionType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s TaskRunSortCriteria) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TaskRunSortCriteria) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TaskRunSortCriteria"} if len(s.Column) == 0 { invalidParams.Add(aws.NewErrParamRequired("Column")) } if len(s.SortDirection) == 0 { invalidParams.Add(aws.NewErrParamRequired("SortDirection")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // The criteria used to filter the machine learning transforms. type TransformFilterCriteria struct { _ struct{} `type:"structure"` // The time and date after which the transforms were created. CreatedAfter *time.Time `type:"timestamp"` // The time and date before which the transforms were created. CreatedBefore *time.Time `type:"timestamp"` // This value determines which version of AWS Glue this machine learning transform // is compatible with. Glue 1.0 is recommended for most customers. If the value // is not set, the Glue compatibility defaults to Glue 0.9. For more information, // see AWS Glue Versions (https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) // in the developer guide. GlueVersion *string `min:"1" type:"string"` // Filter on transforms last modified after this date. LastModifiedAfter *time.Time `type:"timestamp"` // Filter on transforms last modified before this date. LastModifiedBefore *time.Time `type:"timestamp"` // A unique transform name that is used to filter the machine learning transforms. Name *string `min:"1" type:"string"` // Filters on datasets with a specific schema. The Map object // is an array of key-value pairs representing the schema this transform accepts, // where Column is the name of a column, and Type is the type of the data such // as an integer or string. Has an upper bound of 100 columns. Schema []SchemaColumn `type:"list"` // Filters the list of machine learning transforms by the last known status // of the transforms (to indicate whether a transform can be used or not). One // of "NOT_READY", "READY", or "DELETING". Status TransformStatusType `type:"string" enum:"true"` // The type of machine learning transform that is used to filter the machine // learning transforms. TransformType TransformType `type:"string" enum:"true"` } // String returns the string representation func (s TransformFilterCriteria) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TransformFilterCriteria) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TransformFilterCriteria"} if s.GlueVersion != nil && len(*s.GlueVersion) < 1 { invalidParams.Add(aws.NewErrParamMinLen("GlueVersion", 1)) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.Schema != nil { for i, v := range s.Schema { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Schema", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The algorithm-specific parameters that are associated with the machine learning // transform. type TransformParameters struct { _ struct{} `type:"structure"` // The parameters for the find matches algorithm. FindMatchesParameters *FindMatchesParameters `type:"structure"` // The type of machine learning transform. // // For information about the types of machine learning transforms, see Creating // Machine Learning Transforms (http://docs.aws.amazon.com/glue/latest/dg/add-job-machine-learning-transform.html). // // TransformType is a required field TransformType TransformType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s TransformParameters) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TransformParameters) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TransformParameters"} if len(s.TransformType) == 0 { invalidParams.Add(aws.NewErrParamRequired("TransformType")) } if s.FindMatchesParameters != nil { if err := s.FindMatchesParameters.Validate(); err != nil { invalidParams.AddNested("FindMatchesParameters", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // The sorting criteria that are associated with the machine learning transform. type TransformSortCriteria struct { _ struct{} `type:"structure"` // The column to be used in the sorting criteria that are associated with the // machine learning transform. // // Column is a required field Column TransformSortColumnType `type:"string" required:"true" enum:"true"` // The sort direction to be used in the sorting criteria that are associated // with the machine learning transform. // // SortDirection is a required field SortDirection SortDirectionType `type:"string" required:"true" enum:"true"` } // String returns the string representation func (s TransformSortCriteria) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TransformSortCriteria) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TransformSortCriteria"} if len(s.Column) == 0 { invalidParams.Add(aws.NewErrParamRequired("Column")) } if len(s.SortDirection) == 0 { invalidParams.Add(aws.NewErrParamRequired("SortDirection")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Information about a specific trigger. type Trigger struct { _ struct{} `type:"structure"` // The actions initiated by this trigger. Actions []Action `type:"list"` // A description of this trigger. Description *string `type:"string"` // Reserved for future use. Id *string `min:"1" type:"string"` // The name of the trigger. Name *string `min:"1" type:"string"` // The predicate of this trigger, which defines when it will fire. Predicate *Predicate `type:"structure"` // A cron expression used to specify the schedule (see Time-Based Schedules // for Jobs and Crawlers (https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html). // For example, to run something every day at 12:15 UTC, you would specify: // cron(15 12 * * ? *). Schedule *string `type:"string"` // The current state of the trigger. State TriggerState `type:"string" enum:"true"` // The type of trigger that this is. Type TriggerType `type:"string" enum:"true"` // The name of the workflow associated with the trigger. WorkflowName *string `min:"1" type:"string"` } // String returns the string representation func (s Trigger) String() string { return awsutil.Prettify(s) } // The details of a Trigger node present in the workflow. type TriggerNodeDetails struct { _ struct{} `type:"structure"` // The information of the trigger represented by the trigger node. Trigger *Trigger `type:"structure"` } // String returns the string representation func (s TriggerNodeDetails) String() string { return awsutil.Prettify(s) } // A structure used to provide information used to update a trigger. This object // updates the previous trigger definition by overwriting it completely. type TriggerUpdate struct { _ struct{} `type:"structure"` // The actions initiated by this trigger. Actions []Action `type:"list"` // A description of this trigger. Description *string `type:"string"` // Reserved for future use. Name *string `min:"1" type:"string"` // The predicate of this trigger, which defines when it will fire. Predicate *Predicate `type:"structure"` // A cron expression used to specify the schedule (see Time-Based Schedules // for Jobs and Crawlers (https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html). // For example, to run something every day at 12:15 UTC, you would specify: // cron(15 12 * * ? *). Schedule *string `type:"string"` } // String returns the string representation func (s TriggerUpdate) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *TriggerUpdate) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "TriggerUpdate"} if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.Actions != nil { for i, v := range s.Actions { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(aws.ErrInvalidParams)) } } } if s.Predicate != nil { if err := s.Predicate.Validate(); err != nil { invalidParams.AddNested("Predicate", err.(aws.ErrInvalidParams)) } } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a custom CSV classifier to be updated. type UpdateCsvClassifierRequest struct { _ struct{} `type:"structure"` // Enables the processing of files that contain only one column. AllowSingleColumn *bool `type:"boolean"` // Indicates whether the CSV file contains a header. ContainsHeader CsvHeaderOption `type:"string" enum:"true"` // A custom symbol to denote what separates each column entry in the row. Delimiter *string `min:"1" type:"string"` // Specifies not to trim values before identifying the type of column values. // The default value is true. DisableValueTrimming *bool `type:"boolean"` // A list of strings representing column names. Header []string `type:"list"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // A custom symbol to denote what combines content into a single column value. // It must be different from the column delimiter. QuoteSymbol *string `min:"1" type:"string"` } // String returns the string representation func (s UpdateCsvClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateCsvClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "UpdateCsvClassifierRequest"} if s.Delimiter != nil && len(*s.Delimiter) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Delimiter", 1)) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if s.QuoteSymbol != nil && len(*s.QuoteSymbol) < 1 { invalidParams.Add(aws.NewErrParamMinLen("QuoteSymbol", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a grok classifier to update when passed to UpdateClassifier. type UpdateGrokClassifierRequest struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches, such as Twitter, // JSON, Omniture logs, Amazon CloudWatch Logs, and so on. Classification *string `type:"string"` // Optional custom grok patterns used by this classifier. CustomPatterns *string `type:"string"` // The grok pattern used by this classifier. GrokPattern *string `min:"1" type:"string"` // The name of the GrokClassifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateGrokClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateGrokClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "UpdateGrokClassifierRequest"} if s.GrokPattern != nil && len(*s.GrokPattern) < 1 { invalidParams.Add(aws.NewErrParamMinLen("GrokPattern", 1)) } if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies a JSON classifier to be updated. type UpdateJsonClassifierRequest struct { _ struct{} `type:"structure"` // A JsonPath string defining the JSON data for the classifier to classify. // AWS Glue supports a subset of JsonPath, as described in Writing JsonPath // Custom Classifiers (https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html#custom-classifier-json). JsonPath *string `type:"string"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s UpdateJsonClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateJsonClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "UpdateJsonClassifierRequest"} if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Specifies an XML classifier to be updated. type UpdateXMLClassifierRequest struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches. Classification *string `type:"string"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The XML tag designating the element that contains each record in an XML document // being parsed. This cannot identify a self-closing element (closed by />). // An empty row element that contains only attributes can be parsed as long // as it ends with a closing tag (for example, // is okay, but is not). RowTag *string `type:"string"` } // String returns the string representation func (s UpdateXMLClassifierRequest) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateXMLClassifierRequest) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "UpdateXMLClassifierRequest"} if s.Name == nil { invalidParams.Add(aws.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(aws.NewErrParamMinLen("Name", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // Represents the equivalent of a Hive user-defined function (UDF) definition. type UserDefinedFunction struct { _ struct{} `type:"structure"` // The ID of the Data Catalog in which the function resides. CatalogId *string `min:"1" type:"string"` // The Java class that contains the function code. ClassName *string `min:"1" type:"string"` // The time at which the function was created. CreateTime *time.Time `type:"timestamp"` // The name of the catalog database that contains the function. DatabaseName *string `min:"1" type:"string"` // The name of the function. FunctionName *string `min:"1" type:"string"` // The owner of the function. OwnerName *string `min:"1" type:"string"` // The owner type. OwnerType PrincipalType `type:"string" enum:"true"` // The resource URIs for the function. ResourceUris []ResourceUri `type:"list"` } // String returns the string representation func (s UserDefinedFunction) String() string { return awsutil.Prettify(s) } // A structure used to create or update a user-defined function. type UserDefinedFunctionInput struct { _ struct{} `type:"structure"` // The Java class that contains the function code. ClassName *string `min:"1" type:"string"` // The name of the function. FunctionName *string `min:"1" type:"string"` // The owner of the function. OwnerName *string `min:"1" type:"string"` // The owner type. OwnerType PrincipalType `type:"string" enum:"true"` // The resource URIs for the function. ResourceUris []ResourceUri `type:"list"` } // String returns the string representation func (s UserDefinedFunctionInput) String() string { return awsutil.Prettify(s) } // Validate inspects the fields of the type to determine if they are valid. func (s *UserDefinedFunctionInput) Validate() error { invalidParams := aws.ErrInvalidParams{Context: "UserDefinedFunctionInput"} if s.ClassName != nil && len(*s.ClassName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("ClassName", 1)) } if s.FunctionName != nil && len(*s.FunctionName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("FunctionName", 1)) } if s.OwnerName != nil && len(*s.OwnerName) < 1 { invalidParams.Add(aws.NewErrParamMinLen("OwnerName", 1)) } if s.ResourceUris != nil { for i, v := range s.ResourceUris { if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceUris", i), err.(aws.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // A workflow represents a flow in which AWS Glue components should be executed // to complete a logical task. type Workflow struct { _ struct{} `type:"structure"` // The date and time when the workflow was created. CreatedOn *time.Time `type:"timestamp"` // A collection of properties to be used as part of each execution of the workflow. DefaultRunProperties map[string]string `type:"map"` // A description of the workflow. Description *string `type:"string"` // The graph representing all the AWS Glue components that belong to the workflow // as nodes and directed connections between them as edges. Graph *WorkflowGraph `type:"structure"` // The date and time when the workflow was last modified. LastModifiedOn *time.Time `type:"timestamp"` // The information about the last execution of the workflow. LastRun *WorkflowRun `type:"structure"` // The name of the workflow representing the flow. Name *string `min:"1" type:"string"` } // String returns the string representation func (s Workflow) String() string { return awsutil.Prettify(s) } // A workflow graph represents the complete workflow containing all the AWS // Glue components present in the workflow and all the directed connections // between them. type WorkflowGraph struct { _ struct{} `type:"structure"` // A list of all the directed connections between the nodes belonging to the // workflow. Edges []Edge `type:"list"` // A list of the the AWS Glue components belong to the workflow represented // as nodes. Nodes []Node `type:"list"` } // String returns the string representation func (s WorkflowGraph) String() string { return awsutil.Prettify(s) } // A workflow run is an execution of a workflow providing all the runtime information. type WorkflowRun struct { _ struct{} `type:"structure"` // The date and time when the workflow run completed. CompletedOn *time.Time `type:"timestamp"` // The graph representing all the AWS Glue components that belong to the workflow // as nodes and directed connections between them as edges. Graph *WorkflowGraph `type:"structure"` // Name of the workflow which was executed. Name *string `min:"1" type:"string"` // The date and time when the workflow run was started. StartedOn *time.Time `type:"timestamp"` // The statistics of the run. Statistics *WorkflowRunStatistics `type:"structure"` // The status of the workflow run. Status WorkflowRunStatus `type:"string" enum:"true"` // The ID of this workflow run. WorkflowRunId *string `min:"1" type:"string"` // The workflow run properties which were set during the run. WorkflowRunProperties map[string]string `type:"map"` } // String returns the string representation func (s WorkflowRun) String() string { return awsutil.Prettify(s) } // Workflow run statistics provides statistics about the workflow run. type WorkflowRunStatistics struct { _ struct{} `type:"structure"` // Total number of Actions which have failed. FailedActions *int64 `type:"integer"` // Total number Actions in running state. RunningActions *int64 `type:"integer"` // Total number of Actions which have stopped. StoppedActions *int64 `type:"integer"` // Total number of Actions which have succeeded. SucceededActions *int64 `type:"integer"` // Total number of Actions which timed out. TimeoutActions *int64 `type:"integer"` // Total number of Actions in the workflow run. TotalActions *int64 `type:"integer"` } // String returns the string representation func (s WorkflowRunStatistics) String() string { return awsutil.Prettify(s) } // A classifier for XML content. type XMLClassifier struct { _ struct{} `type:"structure"` // An identifier of the data format that the classifier matches. // // Classification is a required field Classification *string `type:"string" required:"true"` // The time that this classifier was registered. CreationTime *time.Time `type:"timestamp"` // The time that this classifier was last updated. LastUpdated *time.Time `type:"timestamp"` // The name of the classifier. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The XML tag designating the element that contains each record in an XML document // being parsed. This can't identify a self-closing element (closed by />). // An empty row element that contains only attributes can be parsed as long // as it ends with a closing tag (for example, // is okay, but is not). RowTag *string `type:"string"` // The version of this classifier. Version *int64 `type:"long"` } // String returns the string representation func (s XMLClassifier) String() string { return awsutil.Prettify(s) }