Class: Aws::GlueDataBrew::Types::CreateRecipeJobRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb

Overview

Note:

When making an API call, you may pass CreateRecipeJobRequest data as a hash:

{
  dataset_name: "DatasetName",
  encryption_key_arn: "EncryptionKeyArn",
  encryption_mode: "SSE-KMS", # accepts SSE-KMS, SSE-S3
  name: "JobName", # required
  log_subscription: "ENABLE", # accepts ENABLE, DISABLE
  max_capacity: 1,
  max_retries: 1,
  outputs: [
    {
      compression_format: "GZIP", # accepts GZIP, LZ4, SNAPPY, BZIP2, DEFLATE, LZO, BROTLI, ZSTD, ZLIB
      format: "CSV", # accepts CSV, JSON, PARQUET, GLUEPARQUET, AVRO, ORC, XML, TABLEAUHYPER
      partition_columns: ["ColumnName"],
      location: { # required
        bucket: "Bucket", # required
        key: "Key",
        bucket_owner: "BucketOwner",
      },
      overwrite: false,
      format_options: {
        csv: {
          delimiter: "Delimiter",
        },
      },
      max_output_files: 1,
    },
  ],
  data_catalog_outputs: [
    {
      catalog_id: "CatalogId",
      database_name: "DatabaseName", # required
      table_name: "TableName", # required
      s3_options: {
        location: { # required
          bucket: "Bucket", # required
          key: "Key",
          bucket_owner: "BucketOwner",
        },
      },
      database_options: {
        temp_directory: {
          bucket: "Bucket", # required
          key: "Key",
          bucket_owner: "BucketOwner",
        },
        table_name: "DatabaseTableName", # required
      },
      overwrite: false,
    },
  ],
  database_outputs: [
    {
      glue_connection_name: "GlueConnectionName", # required
      database_options: { # required
        temp_directory: {
          bucket: "Bucket", # required
          key: "Key",
          bucket_owner: "BucketOwner",
        },
        table_name: "DatabaseTableName", # required
      },
      database_output_mode: "NEW_TABLE", # accepts NEW_TABLE
    },
  ],
  project_name: "ProjectName",
  recipe_reference: {
    name: "RecipeName", # required
    recipe_version: "RecipeVersion",
  },
  role_arn: "Arn", # required
  tags: {
    "TagKey" => "TagValue",
  },
  timeout: 1,
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#data_catalog_outputsArray<Types::DataCatalogOutput>

One or more artifacts that represent the Glue Data Catalog output from running the job.

Returns:



788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#database_outputsArray<Types::DatabaseOutput>

Represents a list of JDBC database output objects which defines the output destination for a DataBrew recipe job to write to.

Returns:



788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#dataset_nameString

The name of the dataset that this job processes.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#encryption_key_arnString

The Amazon Resource Name (ARN) of an encryption key that is used to protect the job.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#encryption_modeString

The encryption mode for the job, which can be one of the following:

  • SSE-KMS - Server-side encryption with keys managed by KMS.

  • SSE-S3 - Server-side encryption with keys managed by Amazon S3.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#log_subscriptionString

Enables or disables Amazon CloudWatch logging for the job. If logging is enabled, CloudWatch writes one log stream for each job run.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#max_capacityInteger

The maximum number of nodes that DataBrew can consume when the job processes data.

Returns:

  • (Integer)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#max_retriesInteger

The maximum number of times to retry the job after a job run fails.

Returns:

  • (Integer)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

A unique name for the job. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#outputsArray<Types::Output>

One or more artifacts that represent the output from running the job.

Returns:



788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#project_nameString

Either the name of an existing project, or a combination of a recipe and a dataset to associate with the recipe.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#recipe_referenceTypes::RecipeReference

Represents the name and version of a DataBrew recipe.



788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#role_arnString

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be assumed when DataBrew runs the job.

Returns:

  • (String)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

Metadata tags to apply to this job.

Returns:

  • (Hash<String,String>)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end

#timeoutInteger

The job's timeout in minutes. A job that attempts to run longer than this timeout period ends with a status of TIMEOUT.

Returns:

  • (Integer)


788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
# File 'gems/aws-sdk-gluedatabrew/lib/aws-sdk-gluedatabrew/types.rb', line 788

class CreateRecipeJobRequest < Struct.new(
  :dataset_name,
  :encryption_key_arn,
  :encryption_mode,
  :name,
  :log_subscription,
  :max_capacity,
  :max_retries,
  :outputs,
  :data_catalog_outputs,
  :database_outputs,
  :project_name,
  :recipe_reference,
  :role_arn,
  :tags,
  :timeout)
  SENSITIVE = []
  include Aws::Structure
end