Table of Contents
A low-level client representing AWS Glue:
import boto3
client = boto3.client('glue')
These are the available methods:
Creates one or more partitions in a batch operation.
See also: AWS API Documentation
Request Syntax
response = client.batch_create_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionInputList=[
{
'Values': [
'string',
],
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
},
]
)
[REQUIRED]
The name of the metadata database in which the partition is to be created.
[REQUIRED]
The name of the metadata table in which the partition is to be created.
[REQUIRED]
A list of PartitionInput structures that define the partitions to be created.
The structure used to create and update a partion.
The values of the partition.
The last time at which the partition was accessed.
Provides information about the physical location where the partition is stored.
A list of the Columns in the table.
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
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.
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
True if the data in the table is compressed, or False if not.
Must be specified if the table contains any dimension columns.
Serialization/deserialization (SerDe) information.
Name of the SerDe.
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
These key-value pairs define initialization parameters for the SerDe.
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
A list specifying the sort order of each bucket in the table.
Specifies the sort order of a sorted column.
The name of the column.
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
User-supplied properties in key-value form.
Information about values that appear very frequently in a column (skewed values).
A list of names of columns that contain skewed values.
A list of values that appear so frequently as to be considered skewed.
A mapping of skewed values to the columns that contain them.
True if the table data is stored in subdirectories, or False if not.
These key-value pairs define partition parameters.
The last time at which column statistics were computed for this partition.
dict
Response Syntax
{
'Errors': [
{
'PartitionValues': [
'string',
],
'ErrorDetail': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
},
]
}
Response Structure
(dict) --
Errors (list) --
Errors encountered when trying to create the requested partitions.
(dict) --
Contains information about a partition error.
PartitionValues (list) --
The values that define the partition.
ErrorDetail (dict) --
Details about the partition error.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Deletes a list of connection definitions from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.batch_delete_connection(
CatalogId='string',
ConnectionNameList=[
'string',
]
)
[REQUIRED]
A list of names of the connections to delete.
dict
Response Syntax
{
'Succeeded': [
'string',
],
'Errors': {
'string': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
}
}
Response Structure
(dict) --
Succeeded (list) --
A list of names of the connection definitions that were successfully deleted.
Errors (dict) --
A map of the names of connections that were not successfully deleted to error details.
(string) --
(dict) --
Contains details about an error.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Deletes one or more partitions in a batch operation.
See also: AWS API Documentation
Request Syntax
response = client.batch_delete_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionsToDelete=[
{
'Values': [
'string',
]
},
]
)
[REQUIRED]
The name of the catalog database in which the table in question resides.
[REQUIRED]
The name of the table where the partitions to be deleted is located.
[REQUIRED]
A list of PartitionInput structures that define the partitions to be deleted.
Contains a list of values defining partitions.
The list of values.
dict
Response Syntax
{
'Errors': [
{
'PartitionValues': [
'string',
],
'ErrorDetail': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
},
]
}
Response Structure
(dict) --
Errors (list) --
Errors encountered when trying to delete the requested partitions.
(dict) --
Contains information about a partition error.
PartitionValues (list) --
The values that define the partition.
ErrorDetail (dict) --
Details about the partition error.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Deletes multiple tables at once.
Note
After completing this operation, you will no longer have access to the table versions and partitions that belong to the deleted table. AWS Glue deletes these "orphaned" resources asynchronously in a timely manner, at the discretion of the service.
To ensure immediate deletion of all related resources, before calling BatchDeleteTable , use DeleteTableVersion or BatchDeleteTableVersion , and DeletePartition or BatchDeletePartition , to delete any resources that belong to the table.
See also: AWS API Documentation
Request Syntax
response = client.batch_delete_table(
CatalogId='string',
DatabaseName='string',
TablesToDelete=[
'string',
]
)
[REQUIRED]
The name of the catalog database where the tables to delete reside. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
A list of the table to delete.
dict
Response Syntax
{
'Errors': [
{
'TableName': 'string',
'ErrorDetail': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
},
]
}
Response Structure
(dict) --
Errors (list) --
A list of errors encountered in attempting to delete the specified tables.
(dict) --
An error record for table operations.
TableName (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
ErrorDetail (dict) --
Detail about the error.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Deletes a specified batch of versions of a table.
See also: AWS API Documentation
Request Syntax
response = client.batch_delete_table_version(
CatalogId='string',
DatabaseName='string',
TableName='string',
VersionIds=[
'string',
]
)
[REQUIRED]
The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
A list of the IDs of versions to be deleted. A VersionId is a string representation of an integer. Each version is incremented by 1.
dict
Response Syntax
{
'Errors': [
{
'TableName': 'string',
'VersionId': 'string',
'ErrorDetail': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
},
]
}
Response Structure
(dict) --
Errors (list) --
A list of errors encountered while trying to delete the specified table versions.
(dict) --
An error record for table-version operations.
TableName (string) --
The name of the table in question.
VersionId (string) --
The ID value of the version in question. A VersionID is a string representation of an integer. Each version is incremented by 1.
ErrorDetail (dict) --
Detail about the error.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Retrieves partitions in a batch request.
See also: AWS API Documentation
Request Syntax
response = client.batch_get_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionsToGet=[
{
'Values': [
'string',
]
},
]
)
[REQUIRED]
The name of the catalog database where the partitions reside.
[REQUIRED]
The name of the partitions' table.
[REQUIRED]
A list of partition values identifying the partitions to retrieve.
Contains a list of values defining partitions.
The list of values.
dict
Response Syntax
{
'Partitions': [
{
'Values': [
'string',
],
'DatabaseName': 'string',
'TableName': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
},
],
'UnprocessedKeys': [
{
'Values': [
'string',
]
},
]
}
Response Structure
(dict) --
Partitions (list) --
A list of the requested partitions.
(dict) --
Represents a slice of table data.
Values (list) --
The values of the partition.
DatabaseName (string) --
The name of the catalog database where the table in question is located.
TableName (string) --
The name of the table in question.
CreationTime (datetime) --
The time at which the partition was created.
LastAccessTime (datetime) --
The last time at which the partition was accessed.
StorageDescriptor (dict) --
Provides information about the physical location where the partition is stored.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
Parameters (dict) --
These key-value pairs define partition parameters.
LastAnalyzedTime (datetime) --
The last time at which column statistics were computed for this partition.
UnprocessedKeys (list) --
A list of the partition values in the request for which partions were not returned.
(dict) --
Contains a list of values defining partitions.
Values (list) --
The list of values.
Stops one or more job runs for a specified job definition.
See also: AWS API Documentation
Request Syntax
response = client.batch_stop_job_run(
JobName='string',
JobRunIds=[
'string',
]
)
[REQUIRED]
The name of the job definition for which to stop job runs.
[REQUIRED]
A list of the JobRunIds that should be stopped for that job definition.
dict
Response Syntax
{
'SuccessfulSubmissions': [
{
'JobName': 'string',
'JobRunId': 'string'
},
],
'Errors': [
{
'JobName': 'string',
'JobRunId': 'string',
'ErrorDetail': {
'ErrorCode': 'string',
'ErrorMessage': 'string'
}
},
]
}
Response Structure
(dict) --
SuccessfulSubmissions (list) --
A list of the JobRuns that were successfully submitted for stopping.
(dict) --
Records a successful request to stop a specified JobRun.
JobName (string) --
The name of the job definition used in the job run that was stopped.
JobRunId (string) --
The JobRunId of the job run that was stopped.
Errors (list) --
A list of the errors that were encountered in tryng to stop JobRuns, including the JobRunId for which each error was encountered and details about the error.
(dict) --
Records an error that occurred when attempting to stop a specified job run.
JobName (string) --
The name of the job definition used in the job run in question.
JobRunId (string) --
The JobRunId of the job run in question.
ErrorDetail (dict) --
Specifies details about the error that was encountered.
ErrorCode (string) --
The code associated with this error.
ErrorMessage (string) --
A message describing the error.
Check if an operation can be paginated.
Creates a classifier in the user's account. This may be a GrokClassifier , an XMLClassifier , or abbrev JsonClassifier , depending on which field of the request is present.
See also: AWS API Documentation
Request Syntax
response = client.create_classifier(
GrokClassifier={
'Classification': 'string',
'Name': 'string',
'GrokPattern': 'string',
'CustomPatterns': 'string'
},
XMLClassifier={
'Classification': 'string',
'Name': 'string',
'RowTag': 'string'
},
JsonClassifier={
'Name': 'string',
'JsonPath': 'string'
}
)
A GrokClassifier object specifying the classifier to create.
An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, Amazon CloudWatch Logs, and so on.
The name of the new classifier.
The grok pattern used by this classifier.
Optional custom grok patterns used by this classifier.
An XMLClassifier object specifying the classifier to create.
An identifier of the data format that the classifier matches.
The name of the classifier.
The XML tag designating the element that contains each record in an XML document being parsed. Note that 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, <row item_a="A" item_b="B"></row> is okay, but <row item_a="A" item_b="B" /> is not).
A JsonClassifier object specifying the classifier to create.
The name of the classifier.
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 .
dict
Response Syntax
{}
Response Structure
Creates a connection definition in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.create_connection(
CatalogId='string',
ConnectionInput={
'Name': 'string',
'Description': 'string',
'ConnectionType': 'JDBC'|'SFTP',
'MatchCriteria': [
'string',
],
'ConnectionProperties': {
'string': 'string'
},
'PhysicalConnectionRequirements': {
'SubnetId': 'string',
'SecurityGroupIdList': [
'string',
],
'AvailabilityZone': 'string'
}
}
)
[REQUIRED]
A ConnectionInput object defining the connection to create.
The name of the connection.
Description of the connection.
The type of the connection. Currently, only JDBC is supported; SFTP is not supported.
A list of criteria that can be used in selecting this connection.
These key-value pairs define parameters for the connection.
A map of physical connection requirements, such as VPC and SecurityGroup, needed for making this connection successfully.
The subnet ID used by the connection.
The security group ID list used by the connection.
The connection's availability zone. This field is redundant, since the specified subnet implies the availability zone to be used. The field must be populated now, but will be deprecated in the future.
dict
Response Syntax
{}
Response Structure
Creates a new crawler with specified targets, role, configuration, and optional schedule. At least one crawl target must be specified, in the s3Targets field, the jdbcTargets field, or the DynamoDBTargets field.
See also: AWS API Documentation
Request Syntax
response = client.create_crawler(
Name='string',
Role='string',
DatabaseName='string',
Description='string',
Targets={
'S3Targets': [
{
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'JdbcTargets': [
{
'ConnectionName': 'string',
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'DynamoDBTargets': [
{
'Path': 'string'
},
]
},
Schedule='string',
Classifiers=[
'string',
],
TablePrefix='string',
SchemaChangePolicy={
'UpdateBehavior': 'LOG'|'UPDATE_IN_DATABASE',
'DeleteBehavior': 'LOG'|'DELETE_FROM_DATABASE'|'DEPRECATE_IN_DATABASE'
},
Configuration='string',
CrawlerSecurityConfiguration='string'
)
[REQUIRED]
Name of the new crawler.
[REQUIRED]
The IAM role (or ARN of an IAM role) used by the new crawler to access customer resources.
[REQUIRED]
The AWS Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .
[REQUIRED]
A list of collection of targets to crawl.
Specifies Amazon S3 targets.
Specifies a data store in Amazon S3.
The path to the Amazon S3 target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies JDBC targets.
Specifies a JDBC data store to crawl.
The name of the connection to use to connect to the JDBC target.
The path of the JDBC target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies DynamoDB targets.
Specifies a DynamoDB table to crawl.
The name of the DynamoDB table to crawl.
A list of custom classifiers that the user has registered. By default, all built-in classifiers are included in a crawl, but these custom classifiers always override the default classifiers for a given classification.
Policy for the crawler's update and deletion behavior.
The update behavior when the crawler finds a changed schema.
The deletion behavior when the crawler finds a deleted object.
dict
Response Syntax
{}
Response Structure
Creates a new database in a Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.create_database(
CatalogId='string',
DatabaseInput={
'Name': 'string',
'Description': 'string',
'LocationUri': 'string',
'Parameters': {
'string': 'string'
}
}
)
[REQUIRED]
A DatabaseInput object defining the metadata database to create in the catalog.
Name of the database. For Hive compatibility, this is folded to lowercase when it is stored.
Description of the database
The location of the database (for example, an HDFS path).
Thes key-value pairs define parameters and properties of the database.
dict
Response Syntax
{}
Response Structure
Creates a new DevEndpoint.
See also: AWS API Documentation
Request Syntax
response = client.create_dev_endpoint(
EndpointName='string',
RoleArn='string',
SecurityGroupIds=[
'string',
],
SubnetId='string',
PublicKey='string',
PublicKeys=[
'string',
],
NumberOfNodes=123,
ExtraPythonLibsS3Path='string',
ExtraJarsS3Path='string',
SecurityConfiguration='string'
)
[REQUIRED]
The name to be assigned to the new DevEndpoint.
[REQUIRED]
The IAM role for the DevEndpoint.
Security group IDs for the security groups to be used by the new DevEndpoint.
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is preferred over a single public key because the public keys allow you to have a different private key per client.
Note
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 with the public key content in the deletePublicKeys attribute, and the list of new keys in the addPublicKeys attribute.
Path(s) to one or more Python libraries in an S3 bucket that should be loaded in your DevEndpoint. Multiple values must be complete paths separated by a comma.
Please note that only pure Python libraries can currently be used on a DevEndpoint. Libraries that rely on C extensions, such as the pandas Python data analysis library, are not yet supported.
dict
Response Syntax
{
'EndpointName': 'string',
'Status': 'string',
'SecurityGroupIds': [
'string',
],
'SubnetId': 'string',
'RoleArn': 'string',
'YarnEndpointAddress': 'string',
'ZeppelinRemoteSparkInterpreterPort': 123,
'NumberOfNodes': 123,
'AvailabilityZone': 'string',
'VpcId': 'string',
'ExtraPythonLibsS3Path': 'string',
'ExtraJarsS3Path': 'string',
'FailureReason': 'string',
'SecurityConfiguration': 'string',
'CreatedTimestamp': datetime(2015, 1, 1)
}
Response Structure
(dict) --
EndpointName (string) --
The name assigned to the new DevEndpoint.
Status (string) --
The current status of the new DevEndpoint.
SecurityGroupIds (list) --
The security groups assigned to the new DevEndpoint.
SubnetId (string) --
The subnet ID assigned to the new DevEndpoint.
RoleArn (string) --
The AWS ARN of the role assigned to the new DevEndpoint.
YarnEndpointAddress (string) --
The address of the YARN endpoint used by this DevEndpoint.
ZeppelinRemoteSparkInterpreterPort (integer) --
The Apache Zeppelin port for the remote Apache Spark interpreter.
NumberOfNodes (integer) --
The number of AWS Glue Data Processing Units (DPUs) allocated to this DevEndpoint.
AvailabilityZone (string) --
The AWS availability zone where this DevEndpoint is located.
VpcId (string) --
The ID of the VPC used by this DevEndpoint.
ExtraPythonLibsS3Path (string) --
Path(s) to one or more Python libraries in an S3 bucket that will be loaded in your DevEndpoint.
ExtraJarsS3Path (string) --
Path to one or more Java Jars in an S3 bucket that will be loaded in your DevEndpoint.
FailureReason (string) --
The reason for a current failure in this DevEndpoint.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure being used with this DevEndpoint.
CreatedTimestamp (datetime) --
The point in time at which this DevEndpoint was created.
Creates a new job definition.
See also: AWS API Documentation
Request Syntax
response = client.create_job(
Name='string',
Description='string',
LogUri='string',
Role='string',
ExecutionProperty={
'MaxConcurrentRuns': 123
},
Command={
'Name': 'string',
'ScriptLocation': 'string'
},
DefaultArguments={
'string': 'string'
},
Connections={
'Connections': [
'string',
]
},
MaxRetries=123,
AllocatedCapacity=123,
Timeout=123,
MaxCapacity=123.0,
NotificationProperty={
'NotifyDelayAfter': 123
},
SecurityConfiguration='string'
)
[REQUIRED]
The name you assign to this job definition. It must be unique in your account.
[REQUIRED]
The name or ARN of the IAM role associated with this job.
An ExecutionProperty specifying the maximum number of concurrent runs allowed for this job.
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.
[REQUIRED]
The JobCommand that executes this job.
The name of the job command: this must be glueetl , for an Apache Spark ETL job, or pythonshell , for a Python shell job.
Specifies the S3 path to a script that executes a job (required).
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 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 topic in the developer guide.
The connections used for this job.
A list of connections used by the job.
This parameter is deprecated. Use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) to allocate to this Job. 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 .
Specifies configuration properties of a job notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
dict
Response Syntax
{
'Name': 'string'
}
Response Structure
(dict) --
Name (string) --
The unique name that was provided for this job definition.
Creates a new partition.
See also: AWS API Documentation
Request Syntax
response = client.create_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionInput={
'Values': [
'string',
],
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
}
)
[REQUIRED]
The name of the metadata database in which the partition is to be created.
[REQUIRED]
The name of the metadata table in which the partition is to be created.
[REQUIRED]
A PartitionInput structure defining the partition to be created.
The values of the partition.
The last time at which the partition was accessed.
Provides information about the physical location where the partition is stored.
A list of the Columns in the table.
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
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.
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
True if the data in the table is compressed, or False if not.
Must be specified if the table contains any dimension columns.
Serialization/deserialization (SerDe) information.
Name of the SerDe.
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
These key-value pairs define initialization parameters for the SerDe.
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
A list specifying the sort order of each bucket in the table.
Specifies the sort order of a sorted column.
The name of the column.
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
User-supplied properties in key-value form.
Information about values that appear very frequently in a column (skewed values).
A list of names of columns that contain skewed values.
A list of values that appear so frequently as to be considered skewed.
A mapping of skewed values to the columns that contain them.
True if the table data is stored in subdirectories, or False if not.
These key-value pairs define partition parameters.
The last time at which column statistics were computed for this partition.
dict
Response Syntax
{}
Response Structure
Transforms a directed acyclic graph (DAG) into code.
See also: AWS API Documentation
Request Syntax
response = client.create_script(
DagNodes=[
{
'Id': 'string',
'NodeType': 'string',
'Args': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'LineNumber': 123
},
],
DagEdges=[
{
'Source': 'string',
'Target': 'string',
'TargetParameter': 'string'
},
],
Language='PYTHON'|'SCALA'
)
A list of the nodes in the DAG.
Represents a node in a directed acyclic graph (DAG)
A node identifier that is unique within the node's graph.
The type of node this is.
Properties of the node, in the form of name-value pairs.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
The line number of the node.
A list of the edges in the DAG.
Represents a directional edge in a directed acyclic graph (DAG).
The ID of the node at which the edge starts.
The ID of the node at which the edge ends.
The target of the edge.
dict
Response Syntax
{
'PythonScript': 'string',
'ScalaCode': 'string'
}
Response Structure
(dict) --
PythonScript (string) --
The Python script generated from the DAG.
ScalaCode (string) --
The Scala code generated from the DAG.
Creates a new security configuration.
See also: AWS API Documentation
Request Syntax
response = client.create_security_configuration(
Name='string',
EncryptionConfiguration={
'S3Encryption': [
{
'S3EncryptionMode': 'DISABLED'|'SSE-KMS'|'SSE-S3',
'KmsKeyArn': 'string'
},
],
'CloudWatchEncryption': {
'CloudWatchEncryptionMode': 'DISABLED'|'SSE-KMS',
'KmsKeyArn': 'string'
},
'JobBookmarksEncryption': {
'JobBookmarksEncryptionMode': 'DISABLED'|'CSE-KMS',
'KmsKeyArn': 'string'
}
}
)
[REQUIRED]
The name for the new security configuration.
[REQUIRED]
The encryption configuration for the new security configuration.
The encryption configuration for S3 data.
Specifies how S3 data should be encrypted.
The encryption mode to use for S3 data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for CloudWatch.
The encryption mode to use for CloudWatch data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for Job Bookmarks.
The encryption mode to use for Job bookmarks data.
The AWS ARN of the KMS key to be used to encrypt the data.
dict
Response Syntax
{
'Name': 'string',
'CreatedTimestamp': datetime(2015, 1, 1)
}
Response Structure
(dict) --
Name (string) --
The name assigned to the new security configuration.
CreatedTimestamp (datetime) --
The time at which the new security configuration was created.
Creates a new table definition in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.create_table(
CatalogId='string',
DatabaseName='string',
TableInput={
'Name': 'string',
'Description': 'string',
'Owner': 'string',
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
}
}
)
[REQUIRED]
The catalog database in which to create the new table. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The TableInput object that defines the metadata table to create in the catalog.
Name of the table. For Hive compatibility, this is folded to lowercase when it is stored.
Description of the table.
Owner of the table.
Last time the table was accessed.
Last time column statistics were computed for this table.
Retention time for this table.
A storage descriptor containing information about the physical storage of this table.
A list of the Columns in the table.
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
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.
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
True if the data in the table is compressed, or False if not.
Must be specified if the table contains any dimension columns.
Serialization/deserialization (SerDe) information.
Name of the SerDe.
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
These key-value pairs define initialization parameters for the SerDe.
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
A list specifying the sort order of each bucket in the table.
Specifies the sort order of a sorted column.
The name of the column.
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
User-supplied properties in key-value form.
Information about values that appear very frequently in a column (skewed values).
A list of names of columns that contain skewed values.
A list of values that appear so frequently as to be considered skewed.
A mapping of skewed values to the columns that contain them.
True if the table data is stored in subdirectories, or False if not.
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
If the table is a view, the original text of the view; otherwise null .
If the table is a view, the expanded text of the view; otherwise null .
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
These key-value pairs define properties associated with the table.
dict
Response Syntax
{}
Response Structure
Creates a new trigger.
See also: AWS API Documentation
Request Syntax
response = client.create_trigger(
Name='string',
Type='SCHEDULED'|'CONDITIONAL'|'ON_DEMAND',
Schedule='string',
Predicate={
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
},
Actions=[
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
Description='string',
StartOnCreation=True|False
)
[REQUIRED]
The name of the trigger.
[REQUIRED]
The type of the new trigger.
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
This field is required when the trigger type is SCHEDULED.
A predicate to specify when the new trigger should fire.
This field is required when the trigger type is CONDITIONAL.
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
A list of the conditions that determine when the trigger will fire.
Defines a condition under which a trigger fires.
A logical operator.
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
[REQUIRED]
The actions initiated by this trigger when it fires.
Defines an action to be initiated by a trigger.
The name of a job to be executed.
Arguments to be passed to the job run.
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 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 topic in the developer guide.
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.
Specifies configuration properties of a job run notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this action.
dict
Response Syntax
{
'Name': 'string'
}
Response Structure
(dict) --
Name (string) --
The name of the trigger.
Creates a new function definition in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.create_user_defined_function(
CatalogId='string',
DatabaseName='string',
FunctionInput={
'FunctionName': 'string',
'ClassName': 'string',
'OwnerName': 'string',
'OwnerType': 'USER'|'ROLE'|'GROUP',
'ResourceUris': [
{
'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
'Uri': 'string'
},
]
}
)
[REQUIRED]
The name of the catalog database in which to create the function.
[REQUIRED]
A FunctionInput object that defines the function to create in the Data Catalog.
The name of the function.
The Java class that contains the function code.
The owner of the function.
The owner type.
The resource URIs for the function.
URIs for function resources.
The type of the resource.
The URI for accessing the resource.
dict
Response Syntax
{}
Response Structure
Removes a classifier from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.delete_classifier(
Name='string'
)
[REQUIRED]
Name of the classifier to remove.
{}
Response Structure
Deletes a connection from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.delete_connection(
CatalogId='string',
ConnectionName='string'
)
[REQUIRED]
The name of the connection to delete.
dict
Response Syntax
{}
Response Structure
Removes a specified crawler from the Data Catalog, unless the crawler state is RUNNING .
See also: AWS API Documentation
Request Syntax
response = client.delete_crawler(
Name='string'
)
[REQUIRED]
Name of the crawler to remove.
{}
Response Structure
Removes a specified Database from a Data Catalog.
Note
After completing this operation, you will no longer have access to the tables (and all table versions and partitions that might belong to the tables) and the user-defined functions in the deleted database. AWS Glue deletes these "orphaned" resources asynchronously in a timely manner, at the discretion of the service.
To ensure immediate deletion of all related resources, before calling DeleteDatabase , use DeleteTableVersion or BatchDeleteTableVersion , DeletePartition or BatchDeletePartition , DeleteUserDefinedFunction , and DeleteTable or BatchDeleteTable , to delete any resources that belong to the database.
See also: AWS API Documentation
Request Syntax
response = client.delete_database(
CatalogId='string',
Name='string'
)
[REQUIRED]
The name of the Database to delete. For Hive compatibility, this must be all lowercase.
dict
Response Syntax
{}
Response Structure
Deletes a specified DevEndpoint.
See also: AWS API Documentation
Request Syntax
response = client.delete_dev_endpoint(
EndpointName='string'
)
[REQUIRED]
The name of the DevEndpoint.
{}
Response Structure
Deletes a specified job definition. If the job definition is not found, no exception is thrown.
See also: AWS API Documentation
Request Syntax
response = client.delete_job(
JobName='string'
)
[REQUIRED]
The name of the job definition to delete.
{
'JobName': 'string'
}
Response Structure
The name of the job definition that was deleted.
Deletes a specified partition.
See also: AWS API Documentation
Request Syntax
response = client.delete_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionValues=[
'string',
]
)
[REQUIRED]
The name of the catalog database in which the table in question resides.
[REQUIRED]
The name of the table where the partition to be deleted is located.
[REQUIRED]
The values that define the partition.
dict
Response Syntax
{}
Response Structure
Deletes a specified policy.
See also: AWS API Documentation
Request Syntax
response = client.delete_resource_policy(
PolicyHashCondition='string'
)
{}
Response Structure
Deletes a specified security configuration.
See also: AWS API Documentation
Request Syntax
response = client.delete_security_configuration(
Name='string'
)
[REQUIRED]
The name of the security configuration to delete.
{}
Response Structure
Removes a table definition from the Data Catalog.
Note
After completing this operation, you will no longer have access to the table versions and partitions that belong to the deleted table. AWS Glue deletes these "orphaned" resources asynchronously in a timely manner, at the discretion of the service.
To ensure immediate deletion of all related resources, before calling DeleteTable , use DeleteTableVersion or BatchDeleteTableVersion , and DeletePartition or BatchDeletePartition , to delete any resources that belong to the table.
See also: AWS API Documentation
Request Syntax
response = client.delete_table(
CatalogId='string',
DatabaseName='string',
Name='string'
)
[REQUIRED]
The name of the catalog database in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table to be deleted. For Hive compatibility, this name is entirely lowercase.
dict
Response Syntax
{}
Response Structure
Deletes a specified version of a table.
See also: AWS API Documentation
Request Syntax
response = client.delete_table_version(
CatalogId='string',
DatabaseName='string',
TableName='string',
VersionId='string'
)
[REQUIRED]
The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The ID of the table version to be deleted. A VersionID is a string representation of an integer. Each version is incremented by 1.
dict
Response Syntax
{}
Response Structure
Deletes a specified trigger. If the trigger is not found, no exception is thrown.
See also: AWS API Documentation
Request Syntax
response = client.delete_trigger(
Name='string'
)
[REQUIRED]
The name of the trigger to delete.
{
'Name': 'string'
}
Response Structure
The name of the trigger that was deleted.
Deletes an existing function definition from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.delete_user_defined_function(
CatalogId='string',
DatabaseName='string',
FunctionName='string'
)
[REQUIRED]
The name of the catalog database where the function is located.
[REQUIRED]
The name of the function definition to be deleted.
dict
Response Syntax
{}
Response Structure
Generate a presigned url given a client, its method, and arguments
The presigned url
Retrieves the status of a migration operation.
See also: AWS API Documentation
Request Syntax
response = client.get_catalog_import_status(
CatalogId='string'
)
{
'ImportStatus': {
'ImportCompleted': True|False,
'ImportTime': datetime(2015, 1, 1),
'ImportedBy': 'string'
}
}
Response Structure
The status of the specified catalog migration.
True if the migration has completed, or False otherwise.
The time that the migration was started.
The name of the person who initiated the migration.
Retrieve a classifier by name.
See also: AWS API Documentation
Request Syntax
response = client.get_classifier(
Name='string'
)
[REQUIRED]
Name of the classifier to retrieve.
{
'Classifier': {
'GrokClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'GrokPattern': 'string',
'CustomPatterns': 'string'
},
'XMLClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'RowTag': 'string'
},
'JsonClassifier': {
'Name': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'JsonPath': 'string'
}
}
}
Response Structure
The requested classifier.
A GrokClassifier object.
The name of the classifier.
An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, and so on.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
The grok pattern applied to a data store by this classifier. For more information, see built-in patterns in Writing Custom Classifers .
Optional custom grok patterns defined by this classifier. For more information, see custom patterns in Writing Custom Classifers .
An XMLClassifier object.
The name of the classifier.
An identifier of the data format that the classifier matches.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
The XML tag designating the element that contains each record in an XML document being parsed. Note that 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, <row item_a="A" item_b="B"></row> is okay, but <row item_a="A" item_b="B" /> is not).
A JsonClassifier object.
The name of the classifier.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
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 .
Lists all classifier objects in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_classifiers(
MaxResults=123,
NextToken='string'
)
dict
Response Syntax
{
'Classifiers': [
{
'GrokClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'GrokPattern': 'string',
'CustomPatterns': 'string'
},
'XMLClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'RowTag': 'string'
},
'JsonClassifier': {
'Name': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'JsonPath': 'string'
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Classifiers (list) --
The requested list of classifier objects.
(dict) --
Classifiers are triggered during a crawl task. A classifier checks whether a given file is in a format it can handle, and 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 supplies, 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, or a JSON classifier, as specified in one of the fields in the Classifier object.
GrokClassifier (dict) --
A GrokClassifier object.
Name (string) --
The name of the classifier.
Classification (string) --
An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, and so on.
CreationTime (datetime) --
The time this classifier was registered.
LastUpdated (datetime) --
The time this classifier was last updated.
Version (integer) --
The version of this classifier.
GrokPattern (string) --
The grok pattern applied to a data store by this classifier. For more information, see built-in patterns in Writing Custom Classifers .
CustomPatterns (string) --
Optional custom grok patterns defined by this classifier. For more information, see custom patterns in Writing Custom Classifers .
XMLClassifier (dict) --
An XMLClassifier object.
Name (string) --
The name of the classifier.
Classification (string) --
An identifier of the data format that the classifier matches.
CreationTime (datetime) --
The time this classifier was registered.
LastUpdated (datetime) --
The time this classifier was last updated.
Version (integer) --
The version of this classifier.
RowTag (string) --
The XML tag designating the element that contains each record in an XML document being parsed. Note that 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, <row item_a="A" item_b="B"></row> is okay, but <row item_a="A" item_b="B" /> is not).
JsonClassifier (dict) --
A JsonClassifier object.
Name (string) --
The name of the classifier.
CreationTime (datetime) --
The time this classifier was registered.
LastUpdated (datetime) --
The time this classifier was last updated.
Version (integer) --
The version of this classifier.
JsonPath (string) --
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 .
NextToken (string) --
A continuation token.
Retrieves a connection definition from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_connection(
CatalogId='string',
Name='string',
HidePassword=True|False
)
[REQUIRED]
The name of the connection definition to retrieve.
dict
Response Syntax
{
'Connection': {
'Name': 'string',
'Description': 'string',
'ConnectionType': 'JDBC'|'SFTP',
'MatchCriteria': [
'string',
],
'ConnectionProperties': {
'string': 'string'
},
'PhysicalConnectionRequirements': {
'SubnetId': 'string',
'SecurityGroupIdList': [
'string',
],
'AvailabilityZone': 'string'
},
'CreationTime': datetime(2015, 1, 1),
'LastUpdatedTime': datetime(2015, 1, 1),
'LastUpdatedBy': 'string'
}
}
Response Structure
(dict) --
Connection (dict) --
The requested connection definition.
Name (string) --
The name of the connection definition.
Description (string) --
Description of the connection.
ConnectionType (string) --
The type of the connection. Currently, only JDBC is supported; SFTP is not supported.
MatchCriteria (list) --
A list of criteria that can be used in selecting this connection.
ConnectionProperties (dict) --
These key-value pairs define parameters for the connection:
PhysicalConnectionRequirements (dict) --
A map of physical connection requirements, such as VPC and SecurityGroup, needed for making this connection successfully.
SubnetId (string) --
The subnet ID used by the connection.
SecurityGroupIdList (list) --
The security group ID list used by the connection.
AvailabilityZone (string) --
The connection's availability zone. This field is redundant, since the specified subnet implies the availability zone to be used. The field must be populated now, but will be deprecated in the future.
CreationTime (datetime) --
The time this connection definition was created.
LastUpdatedTime (datetime) --
The last time this connection definition was updated.
LastUpdatedBy (string) --
The user, group or role that last updated this connection definition.
Retrieves a list of connection definitions from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_connections(
CatalogId='string',
Filter={
'MatchCriteria': [
'string',
],
'ConnectionType': 'JDBC'|'SFTP'
},
HidePassword=True|False,
NextToken='string',
MaxResults=123
)
A filter that controls which connections will be returned.
A criteria string that must match the criteria recorded in the connection definition for that connection definition to be returned.
The type of connections to return. Currently, only JDBC is supported; SFTP is not supported.
dict
Response Syntax
{
'ConnectionList': [
{
'Name': 'string',
'Description': 'string',
'ConnectionType': 'JDBC'|'SFTP',
'MatchCriteria': [
'string',
],
'ConnectionProperties': {
'string': 'string'
},
'PhysicalConnectionRequirements': {
'SubnetId': 'string',
'SecurityGroupIdList': [
'string',
],
'AvailabilityZone': 'string'
},
'CreationTime': datetime(2015, 1, 1),
'LastUpdatedTime': datetime(2015, 1, 1),
'LastUpdatedBy': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
ConnectionList (list) --
A list of requested connection definitions.
(dict) --
Defines a connection to a data source.
Name (string) --
The name of the connection definition.
Description (string) --
Description of the connection.
ConnectionType (string) --
The type of the connection. Currently, only JDBC is supported; SFTP is not supported.
MatchCriteria (list) --
A list of criteria that can be used in selecting this connection.
ConnectionProperties (dict) --
These key-value pairs define parameters for the connection:
PhysicalConnectionRequirements (dict) --
A map of physical connection requirements, such as VPC and SecurityGroup, needed for making this connection successfully.
SubnetId (string) --
The subnet ID used by the connection.
SecurityGroupIdList (list) --
The security group ID list used by the connection.
AvailabilityZone (string) --
The connection's availability zone. This field is redundant, since the specified subnet implies the availability zone to be used. The field must be populated now, but will be deprecated in the future.
CreationTime (datetime) --
The time this connection definition was created.
LastUpdatedTime (datetime) --
The last time this connection definition was updated.
LastUpdatedBy (string) --
The user, group or role that last updated this connection definition.
NextToken (string) --
A continuation token, if the list of connections returned does not include the last of the filtered connections.
Retrieves metadata for a specified crawler.
See also: AWS API Documentation
Request Syntax
response = client.get_crawler(
Name='string'
)
[REQUIRED]
Name of the crawler to retrieve metadata for.
{
'Crawler': {
'Name': 'string',
'Role': 'string',
'Targets': {
'S3Targets': [
{
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'JdbcTargets': [
{
'ConnectionName': 'string',
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'DynamoDBTargets': [
{
'Path': 'string'
},
]
},
'DatabaseName': 'string',
'Description': 'string',
'Classifiers': [
'string',
],
'SchemaChangePolicy': {
'UpdateBehavior': 'LOG'|'UPDATE_IN_DATABASE',
'DeleteBehavior': 'LOG'|'DELETE_FROM_DATABASE'|'DEPRECATE_IN_DATABASE'
},
'State': 'READY'|'RUNNING'|'STOPPING',
'TablePrefix': 'string',
'Schedule': {
'ScheduleExpression': 'string',
'State': 'SCHEDULED'|'NOT_SCHEDULED'|'TRANSITIONING'
},
'CrawlElapsedTime': 123,
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'LastCrawl': {
'Status': 'SUCCEEDED'|'CANCELLED'|'FAILED',
'ErrorMessage': 'string',
'LogGroup': 'string',
'LogStream': 'string',
'MessagePrefix': 'string',
'StartTime': datetime(2015, 1, 1)
},
'Version': 123,
'Configuration': 'string',
'CrawlerSecurityConfiguration': 'string'
}
}
Response Structure
The metadata for the specified crawler.
The crawler name.
The IAM role (or ARN of an IAM role) used to access customer resources, such as data in Amazon S3.
A collection of targets to crawl.
Specifies Amazon S3 targets.
Specifies a data store in Amazon S3.
The path to the Amazon S3 target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies JDBC targets.
Specifies a JDBC data store to crawl.
The name of the connection to use to connect to the JDBC target.
The path of the JDBC target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies DynamoDB targets.
Specifies a DynamoDB table to crawl.
The name of the DynamoDB table to crawl.
The database where metadata is written by this crawler.
A description of the crawler.
A list of custom classifiers associated with the crawler.
Sets the behavior when the crawler finds a changed or deleted object.
The update behavior when the crawler finds a changed schema.
The deletion behavior when the crawler finds a deleted object.
Indicates whether the crawler is running, or whether a run is pending.
The prefix added to the names of tables that are created.
For scheduled crawlers, the schedule when the crawler runs.
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
The state of the schedule.
If the crawler is running, contains the total time elapsed since the last crawl began.
The time when the crawler was created.
The time the crawler was last updated.
The status of the last crawl, and potentially error information if an error occurred.
Status of the last crawl.
If an error occurred, the error information about the last crawl.
The log group for the last crawl.
The log stream for the last crawl.
The prefix for a message about this crawl.
The time at which the crawl started.
The version of the crawler.
Crawler configuration information. This versioned JSON string allows users to specify aspects of a crawler's behavior. For more information, see Configuring a Crawler .
The name of the SecurityConfiguration structure to be used by this Crawler.
Retrieves metrics about specified crawlers.
See also: AWS API Documentation
Request Syntax
response = client.get_crawler_metrics(
CrawlerNameList=[
'string',
],
MaxResults=123,
NextToken='string'
)
A list of the names of crawlers about which to retrieve metrics.
dict
Response Syntax
{
'CrawlerMetricsList': [
{
'CrawlerName': 'string',
'TimeLeftSeconds': 123.0,
'StillEstimating': True|False,
'LastRuntimeSeconds': 123.0,
'MedianRuntimeSeconds': 123.0,
'TablesCreated': 123,
'TablesUpdated': 123,
'TablesDeleted': 123
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
CrawlerMetricsList (list) --
A list of metrics for the specified crawler.
(dict) --
Metrics for a specified crawler.
CrawlerName (string) --
The name of the crawler.
TimeLeftSeconds (float) --
The estimated time left to complete a running crawl.
StillEstimating (boolean) --
True if the crawler is still estimating how long it will take to complete this run.
LastRuntimeSeconds (float) --
The duration of the crawler's most recent run, in seconds.
MedianRuntimeSeconds (float) --
The median duration of this crawler's runs, in seconds.
TablesCreated (integer) --
The number of tables created by this crawler.
TablesUpdated (integer) --
The number of tables updated by this crawler.
TablesDeleted (integer) --
The number of tables deleted by this crawler.
NextToken (string) --
A continuation token, if the returned list does not contain the last metric available.
Retrieves metadata for all crawlers defined in the customer account.
See also: AWS API Documentation
Request Syntax
response = client.get_crawlers(
MaxResults=123,
NextToken='string'
)
dict
Response Syntax
{
'Crawlers': [
{
'Name': 'string',
'Role': 'string',
'Targets': {
'S3Targets': [
{
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'JdbcTargets': [
{
'ConnectionName': 'string',
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'DynamoDBTargets': [
{
'Path': 'string'
},
]
},
'DatabaseName': 'string',
'Description': 'string',
'Classifiers': [
'string',
],
'SchemaChangePolicy': {
'UpdateBehavior': 'LOG'|'UPDATE_IN_DATABASE',
'DeleteBehavior': 'LOG'|'DELETE_FROM_DATABASE'|'DEPRECATE_IN_DATABASE'
},
'State': 'READY'|'RUNNING'|'STOPPING',
'TablePrefix': 'string',
'Schedule': {
'ScheduleExpression': 'string',
'State': 'SCHEDULED'|'NOT_SCHEDULED'|'TRANSITIONING'
},
'CrawlElapsedTime': 123,
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'LastCrawl': {
'Status': 'SUCCEEDED'|'CANCELLED'|'FAILED',
'ErrorMessage': 'string',
'LogGroup': 'string',
'LogStream': 'string',
'MessagePrefix': 'string',
'StartTime': datetime(2015, 1, 1)
},
'Version': 123,
'Configuration': 'string',
'CrawlerSecurityConfiguration': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Crawlers (list) --
A list of crawler metadata.
(dict) --
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.
Name (string) --
The crawler name.
Role (string) --
The IAM role (or ARN of an IAM role) used to access customer resources, such as data in Amazon S3.
Targets (dict) --
A collection of targets to crawl.
S3Targets (list) --
Specifies Amazon S3 targets.
(dict) --
Specifies a data store in Amazon S3.
Path (string) --
The path to the Amazon S3 target.
Exclusions (list) --
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
JdbcTargets (list) --
Specifies JDBC targets.
(dict) --
Specifies a JDBC data store to crawl.
ConnectionName (string) --
The name of the connection to use to connect to the JDBC target.
Path (string) --
The path of the JDBC target.
Exclusions (list) --
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
DynamoDBTargets (list) --
Specifies DynamoDB targets.
(dict) --
Specifies a DynamoDB table to crawl.
Path (string) --
The name of the DynamoDB table to crawl.
DatabaseName (string) --
The database where metadata is written by this crawler.
Description (string) --
A description of the crawler.
Classifiers (list) --
A list of custom classifiers associated with the crawler.
SchemaChangePolicy (dict) --
Sets the behavior when the crawler finds a changed or deleted object.
UpdateBehavior (string) --
The update behavior when the crawler finds a changed schema.
DeleteBehavior (string) --
The deletion behavior when the crawler finds a deleted object.
State (string) --
Indicates whether the crawler is running, or whether a run is pending.
TablePrefix (string) --
The prefix added to the names of tables that are created.
Schedule (dict) --
For scheduled crawlers, the schedule when the crawler runs.
ScheduleExpression (string) --
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
State (string) --
The state of the schedule.
CrawlElapsedTime (integer) --
If the crawler is running, contains the total time elapsed since the last crawl began.
CreationTime (datetime) --
The time when the crawler was created.
LastUpdated (datetime) --
The time the crawler was last updated.
LastCrawl (dict) --
The status of the last crawl, and potentially error information if an error occurred.
Status (string) --
Status of the last crawl.
ErrorMessage (string) --
If an error occurred, the error information about the last crawl.
LogGroup (string) --
The log group for the last crawl.
LogStream (string) --
The log stream for the last crawl.
MessagePrefix (string) --
The prefix for a message about this crawl.
StartTime (datetime) --
The time at which the crawl started.
Version (integer) --
The version of the crawler.
Configuration (string) --
Crawler configuration information. This versioned JSON string allows users to specify aspects of a crawler's behavior. For more information, see Configuring a Crawler .
CrawlerSecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used by this Crawler.
NextToken (string) --
A continuation token, if the returned list has not reached the end of those defined in this customer account.
Retrieves the security configuration for a specified catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_data_catalog_encryption_settings(
CatalogId='string'
)
{
'DataCatalogEncryptionSettings': {
'EncryptionAtRest': {
'CatalogEncryptionMode': 'DISABLED'|'SSE-KMS',
'SseAwsKmsKeyId': 'string'
},
'ConnectionPasswordEncryption': {
'ReturnConnectionPasswordEncrypted': True|False,
'AwsKmsKeyId': 'string'
}
}
}
Response Structure
The requested security configuration.
Specifies encryption-at-rest configuration for the Data Catalog.
The encryption-at-rest mode for encrypting Data Catalog data.
The ID of the AWS KMS key to use for encryption at rest.
When 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.
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.
A KMS key used to protect access to the JDBC source.
All users in your account should be granted the kms:encrypt permission to encrypt passwords before storing them in the Data Catalog (through the AWS Glue CreateConnection operation).
The decrypt permission should be granted only to KMS key admins and IAM roles designated for AWS Glue crawlers.
Retrieves the definition of a specified database.
See also: AWS API Documentation
Request Syntax
response = client.get_database(
CatalogId='string',
Name='string'
)
[REQUIRED]
The name of the database to retrieve. For Hive compatibility, this should be all lowercase.
dict
Response Syntax
{
'Database': {
'Name': 'string',
'Description': 'string',
'LocationUri': 'string',
'Parameters': {
'string': 'string'
},
'CreateTime': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
Database (dict) --
The definition of the specified database in the catalog.
Name (string) --
Name of the database. For Hive compatibility, this is folded to lowercase when it is stored.
Description (string) --
Description of the database.
LocationUri (string) --
The location of the database (for example, an HDFS path).
Parameters (dict) --
These key-value pairs define parameters and properties of the database.
CreateTime (datetime) --
The time at which the metadata database was created in the catalog.
Retrieves all Databases defined in a given Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_databases(
CatalogId='string',
NextToken='string',
MaxResults=123
)
dict
Response Syntax
{
'DatabaseList': [
{
'Name': 'string',
'Description': 'string',
'LocationUri': 'string',
'Parameters': {
'string': 'string'
},
'CreateTime': datetime(2015, 1, 1)
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
DatabaseList (list) --
A list of Database objects from the specified catalog.
(dict) --
The Database object represents a logical grouping of tables that may reside in a Hive metastore or an RDBMS.
Name (string) --
Name of the database. For Hive compatibility, this is folded to lowercase when it is stored.
Description (string) --
Description of the database.
LocationUri (string) --
The location of the database (for example, an HDFS path).
Parameters (dict) --
These key-value pairs define parameters and properties of the database.
CreateTime (datetime) --
The time at which the metadata database was created in the catalog.
NextToken (string) --
A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.
Transforms a Python script into a directed acyclic graph (DAG).
See also: AWS API Documentation
Request Syntax
response = client.get_dataflow_graph(
PythonScript='string'
)
{
'DagNodes': [
{
'Id': 'string',
'NodeType': 'string',
'Args': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'LineNumber': 123
},
],
'DagEdges': [
{
'Source': 'string',
'Target': 'string',
'TargetParameter': 'string'
},
]
}
Response Structure
A list of the nodes in the resulting DAG.
Represents a node in a directed acyclic graph (DAG)
A node identifier that is unique within the node's graph.
The type of node this is.
Properties of the node, in the form of name-value pairs.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
The line number of the node.
A list of the edges in the resulting DAG.
Represents a directional edge in a directed acyclic graph (DAG).
The ID of the node at which the edge starts.
The ID of the node at which the edge ends.
The target of the edge.
Retrieves information about a specified DevEndpoint.
Note
When you create a development endpoint in a virtual private cloud (VPC), AWS Glue returns only a private IP address, and the public IP address field is not populated. When you create a non-VPC development endpoint, AWS Glue returns only a public IP address.
See also: AWS API Documentation
Request Syntax
response = client.get_dev_endpoint(
EndpointName='string'
)
[REQUIRED]
Name of the DevEndpoint for which to retrieve information.
{
'DevEndpoint': {
'EndpointName': 'string',
'RoleArn': 'string',
'SecurityGroupIds': [
'string',
],
'SubnetId': 'string',
'YarnEndpointAddress': 'string',
'PrivateAddress': 'string',
'ZeppelinRemoteSparkInterpreterPort': 123,
'PublicAddress': 'string',
'Status': 'string',
'NumberOfNodes': 123,
'AvailabilityZone': 'string',
'VpcId': 'string',
'ExtraPythonLibsS3Path': 'string',
'ExtraJarsS3Path': 'string',
'FailureReason': 'string',
'LastUpdateStatus': 'string',
'CreatedTimestamp': datetime(2015, 1, 1),
'LastModifiedTimestamp': datetime(2015, 1, 1),
'PublicKey': 'string',
'PublicKeys': [
'string',
],
'SecurityConfiguration': 'string'
}
}
Response Structure
A DevEndpoint definition.
The name of the DevEndpoint.
The AWS ARN of the IAM role used in this DevEndpoint.
A list of security group identifiers used in this DevEndpoint.
The subnet ID for this DevEndpoint.
The YARN endpoint address used by this DevEndpoint.
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 virtual private cloud (VPC).
The Apache Zeppelin port for the remote Apache Spark interpreter.
The public IP address used by this DevEndpoint. The PublicAddress field is present only when you create a non-VPC (virtual private cloud) DevEndpoint.
The current status of this DevEndpoint.
The number of AWS Glue Data Processing Units (DPUs) allocated to this DevEndpoint.
The AWS availability zone where this DevEndpoint is located.
The ID of the virtual private cloud (VPC) used by this DevEndpoint.
Path(s) to one or more Python libraries in an S3 bucket that should be loaded in your DevEndpoint. Multiple values must be complete paths separated by a comma.
Please note that only pure Python libraries can currently be used on a DevEndpoint. Libraries that rely on C extensions, such as the pandas Python data analysis library, are not yet supported.
Path to one or more Java Jars in an S3 bucket that should be loaded in your DevEndpoint.
Please note that only pure Java/Scala libraries can currently be used on a DevEndpoint.
The reason for a current failure in this DevEndpoint.
The status of the last update.
The point in time at which this DevEndpoint was created.
The point in time at which this DevEndpoint was last modified.
The public key to be used by this DevEndpoint for authentication. This attribute is provided for backward compatibility, as the recommended attribute to use is public keys.
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is preferred over a single public key because the public keys allow you to have a different private key per client.
Note
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 with the public key content in the deletePublicKeys attribute, and the list of new keys in the addPublicKeys attribute.
The name of the SecurityConfiguration structure to be used with this DevEndpoint.
Retrieves all the DevEndpoints in this AWS account.
Note
When you create a development endpoint in a virtual private cloud (VPC), AWS Glue returns only a private IP address and the public IP address field is not populated. When you create a non-VPC development endpoint, AWS Glue returns only a public IP address.
See also: AWS API Documentation
Request Syntax
response = client.get_dev_endpoints(
MaxResults=123,
NextToken='string'
)
dict
Response Syntax
{
'DevEndpoints': [
{
'EndpointName': 'string',
'RoleArn': 'string',
'SecurityGroupIds': [
'string',
],
'SubnetId': 'string',
'YarnEndpointAddress': 'string',
'PrivateAddress': 'string',
'ZeppelinRemoteSparkInterpreterPort': 123,
'PublicAddress': 'string',
'Status': 'string',
'NumberOfNodes': 123,
'AvailabilityZone': 'string',
'VpcId': 'string',
'ExtraPythonLibsS3Path': 'string',
'ExtraJarsS3Path': 'string',
'FailureReason': 'string',
'LastUpdateStatus': 'string',
'CreatedTimestamp': datetime(2015, 1, 1),
'LastModifiedTimestamp': datetime(2015, 1, 1),
'PublicKey': 'string',
'PublicKeys': [
'string',
],
'SecurityConfiguration': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
DevEndpoints (list) --
A list of DevEndpoint definitions.
(dict) --
A development endpoint where a developer can remotely debug ETL scripts.
EndpointName (string) --
The name of the DevEndpoint.
RoleArn (string) --
The AWS ARN of the IAM role used in this DevEndpoint.
SecurityGroupIds (list) --
A list of security group identifiers used in this DevEndpoint.
SubnetId (string) --
The subnet ID for this DevEndpoint.
YarnEndpointAddress (string) --
The YARN endpoint address used by this DevEndpoint.
PrivateAddress (string) --
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 virtual private cloud (VPC).
ZeppelinRemoteSparkInterpreterPort (integer) --
The Apache Zeppelin port for the remote Apache Spark interpreter.
PublicAddress (string) --
The public IP address used by this DevEndpoint. The PublicAddress field is present only when you create a non-VPC (virtual private cloud) DevEndpoint.
Status (string) --
The current status of this DevEndpoint.
NumberOfNodes (integer) --
The number of AWS Glue Data Processing Units (DPUs) allocated to this DevEndpoint.
AvailabilityZone (string) --
The AWS availability zone where this DevEndpoint is located.
VpcId (string) --
The ID of the virtual private cloud (VPC) used by this DevEndpoint.
ExtraPythonLibsS3Path (string) --
Path(s) to one or more Python libraries in an S3 bucket that should be loaded in your DevEndpoint. Multiple values must be complete paths separated by a comma.
Please note that only pure Python libraries can currently be used on a DevEndpoint. Libraries that rely on C extensions, such as the pandas Python data analysis library, are not yet supported.
ExtraJarsS3Path (string) --
Path to one or more Java Jars in an S3 bucket that should be loaded in your DevEndpoint.
Please note that only pure Java/Scala libraries can currently be used on a DevEndpoint.
FailureReason (string) --
The reason for a current failure in this DevEndpoint.
LastUpdateStatus (string) --
The status of the last update.
CreatedTimestamp (datetime) --
The point in time at which this DevEndpoint was created.
LastModifiedTimestamp (datetime) --
The point in time at which this DevEndpoint was last modified.
PublicKey (string) --
The public key to be used by this DevEndpoint for authentication. This attribute is provided for backward compatibility, as the recommended attribute to use is public keys.
PublicKeys (list) --
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is preferred over a single public key because the public keys allow you to have a different private key per client.
Note
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 with the public key content in the deletePublicKeys attribute, and the list of new keys in the addPublicKeys attribute.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this DevEndpoint.
NextToken (string) --
A continuation token, if not all DevEndpoint definitions have yet been returned.
Retrieves an existing job definition.
See also: AWS API Documentation
Request Syntax
response = client.get_job(
JobName='string'
)
[REQUIRED]
The name of the job definition to retrieve.
{
'Job': {
'Name': 'string',
'Description': 'string',
'LogUri': 'string',
'Role': 'string',
'CreatedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'ExecutionProperty': {
'MaxConcurrentRuns': 123
},
'Command': {
'Name': 'string',
'ScriptLocation': 'string'
},
'DefaultArguments': {
'string': 'string'
},
'Connections': {
'Connections': [
'string',
]
},
'MaxRetries': 123,
'AllocatedCapacity': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
}
}
Response Structure
The requested job definition.
The name you assign to this job definition.
Description of the job being defined.
This field is reserved for future use.
The name or ARN of the IAM role associated with this job.
The time and date that this job definition was created.
The last point in time when this job definition was modified.
An ExecutionProperty specifying the maximum number of concurrent runs allowed for this job.
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.
The JobCommand that executes this job.
The name of the job command: this must be glueetl , for an Apache Spark ETL job, or pythonshell , for a Python shell job.
Specifies the S3 path to a script that executes a job (required).
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 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 topic in the developer guide.
The connections used for this job.
A list of connections used by the job.
The maximum number of times to retry this job after a JobRun fails.
This field is deprecated, use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) allocated to runs of this job. 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 .
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).
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
Specifies configuration properties of a job notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this job.
Retrieves the metadata for a given job run.
See also: AWS API Documentation
Request Syntax
response = client.get_job_run(
JobName='string',
RunId='string',
PredecessorsIncluded=True|False
)
[REQUIRED]
Name of the job definition being run.
[REQUIRED]
The ID of the job run.
dict
Response Syntax
{
'JobRun': {
'Id': 'string',
'Attempt': 123,
'PreviousRunId': 'string',
'TriggerName': 'string',
'JobName': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'JobRunState': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'Arguments': {
'string': 'string'
},
'ErrorMessage': 'string',
'PredecessorRuns': [
{
'JobName': 'string',
'RunId': 'string'
},
],
'AllocatedCapacity': 123,
'ExecutionTime': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string',
'LogGroupName': 'string'
}
}
Response Structure
(dict) --
JobRun (dict) --
The requested job-run metadata.
Id (string) --
The ID of this job run.
Attempt (integer) --
The number of the attempt to run this job.
PreviousRunId (string) --
The ID of the previous run of this job. For example, the JobRunId specified in the StartJobRun action.
TriggerName (string) --
The name of the trigger that started this job run.
JobName (string) --
The name of the job definition being used in this run.
StartedOn (datetime) --
The date and time at which this job run was started.
LastModifiedOn (datetime) --
The last time this job run was modified.
CompletedOn (datetime) --
The date and time this job run completed.
JobRunState (string) --
The current state of the job run.
Arguments (dict) --
The job arguments associated with this run. These override equivalent default arguments set for the 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 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 topic in the developer guide.
ErrorMessage (string) --
An error message associated with this job run.
PredecessorRuns (list) --
A list of predecessors to this job run.
(dict) --
A job run that was used in the predicate of a conditional trigger that triggered this job run.
JobName (string) --
The name of the job definition used by the predecessor job run.
RunId (string) --
The job-run ID of the predecessor job run.
AllocatedCapacity (integer) --
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 .
ExecutionTime (integer) --
The amount of time (in seconds) that the job run consumed resources.
Timeout (integer) --
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.
MaxCapacity (float) --
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this job run.
LogGroupName (string) --
The name of the log group for secure logging, that can be server-side encrypted in CloudWatch using 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 will be used to encrypt the log group.
Retrieves metadata for all runs of a given job definition.
See also: AWS API Documentation
Request Syntax
response = client.get_job_runs(
JobName='string',
NextToken='string',
MaxResults=123
)
[REQUIRED]
The name of the job definition for which to retrieve all job runs.
dict
Response Syntax
{
'JobRuns': [
{
'Id': 'string',
'Attempt': 123,
'PreviousRunId': 'string',
'TriggerName': 'string',
'JobName': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'JobRunState': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'Arguments': {
'string': 'string'
},
'ErrorMessage': 'string',
'PredecessorRuns': [
{
'JobName': 'string',
'RunId': 'string'
},
],
'AllocatedCapacity': 123,
'ExecutionTime': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string',
'LogGroupName': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
JobRuns (list) --
A list of job-run metatdata objects.
(dict) --
Contains information about a job run.
Id (string) --
The ID of this job run.
Attempt (integer) --
The number of the attempt to run this job.
PreviousRunId (string) --
The ID of the previous run of this job. For example, the JobRunId specified in the StartJobRun action.
TriggerName (string) --
The name of the trigger that started this job run.
JobName (string) --
The name of the job definition being used in this run.
StartedOn (datetime) --
The date and time at which this job run was started.
LastModifiedOn (datetime) --
The last time this job run was modified.
CompletedOn (datetime) --
The date and time this job run completed.
JobRunState (string) --
The current state of the job run.
Arguments (dict) --
The job arguments associated with this run. These override equivalent default arguments set for the 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 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 topic in the developer guide.
ErrorMessage (string) --
An error message associated with this job run.
PredecessorRuns (list) --
A list of predecessors to this job run.
(dict) --
A job run that was used in the predicate of a conditional trigger that triggered this job run.
JobName (string) --
The name of the job definition used by the predecessor job run.
RunId (string) --
The job-run ID of the predecessor job run.
AllocatedCapacity (integer) --
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 .
ExecutionTime (integer) --
The amount of time (in seconds) that the job run consumed resources.
Timeout (integer) --
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.
MaxCapacity (float) --
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this job run.
LogGroupName (string) --
The name of the log group for secure logging, that can be server-side encrypted in CloudWatch using 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 will be used to encrypt the log group.
NextToken (string) --
A continuation token, if not all reequested job runs have been returned.
Retrieves all current job definitions.
See also: AWS API Documentation
Request Syntax
response = client.get_jobs(
NextToken='string',
MaxResults=123
)
dict
Response Syntax
{
'Jobs': [
{
'Name': 'string',
'Description': 'string',
'LogUri': 'string',
'Role': 'string',
'CreatedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'ExecutionProperty': {
'MaxConcurrentRuns': 123
},
'Command': {
'Name': 'string',
'ScriptLocation': 'string'
},
'DefaultArguments': {
'string': 'string'
},
'Connections': {
'Connections': [
'string',
]
},
'MaxRetries': 123,
'AllocatedCapacity': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Jobs (list) --
A list of job definitions.
(dict) --
Specifies a job definition.
Name (string) --
The name you assign to this job definition.
Description (string) --
Description of the job being defined.
LogUri (string) --
This field is reserved for future use.
Role (string) --
The name or ARN of the IAM role associated with this job.
CreatedOn (datetime) --
The time and date that this job definition was created.
LastModifiedOn (datetime) --
The last point in time when this job definition was modified.
ExecutionProperty (dict) --
An ExecutionProperty specifying the maximum number of concurrent runs allowed for this job.
MaxConcurrentRuns (integer) --
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.
Command (dict) --
The JobCommand that executes this job.
Name (string) --
The name of the job command: this must be glueetl , for an Apache Spark ETL job, or pythonshell , for a Python shell job.
ScriptLocation (string) --
Specifies the S3 path to a script that executes a job (required).
DefaultArguments (dict) --
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 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 topic in the developer guide.
Connections (dict) --
The connections used for this job.
Connections (list) --
A list of connections used by the job.
MaxRetries (integer) --
The maximum number of times to retry this job after a JobRun fails.
AllocatedCapacity (integer) --
This field is deprecated, use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) allocated to runs of this job. 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 .
Timeout (integer) --
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).
MaxCapacity (float) --
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
NotificationProperty (dict) --
Specifies configuration properties of a job notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this job.
NextToken (string) --
A continuation token, if not all job definitions have yet been returned.
Creates mappings.
See also: AWS API Documentation
Request Syntax
response = client.get_mapping(
Source={
'DatabaseName': 'string',
'TableName': 'string'
},
Sinks=[
{
'DatabaseName': 'string',
'TableName': 'string'
},
],
Location={
'Jdbc': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'S3': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'DynamoDB': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
]
}
)
[REQUIRED]
Specifies the source table.
The database in which the table metadata resides.
The name of the table in question.
A list of target tables.
Specifies a table definition in the Data Catalog.
The database in which the table metadata resides.
The name of the table in question.
Parameters for the mapping.
A JDBC location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
An Amazon S3 location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
A DynamoDB Table location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
dict
Response Syntax
{
'Mapping': [
{
'SourceTable': 'string',
'SourcePath': 'string',
'SourceType': 'string',
'TargetTable': 'string',
'TargetPath': 'string',
'TargetType': 'string'
},
]
}
Response Structure
(dict) --
Mapping (list) --
A list of mappings to the specified targets.
(dict) --
Defines a mapping.
SourceTable (string) --
The name of the source table.
SourcePath (string) --
The source path.
SourceType (string) --
The source type.
TargetTable (string) --
The target table.
TargetPath (string) --
The target path.
TargetType (string) --
The target type.
Create a paginator for an operation.
Retrieves information about a specified partition.
See also: AWS API Documentation
Request Syntax
response = client.get_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionValues=[
'string',
]
)
[REQUIRED]
The name of the catalog database where the partition resides.
[REQUIRED]
The name of the partition's table.
[REQUIRED]
The values that define the partition.
dict
Response Syntax
{
'Partition': {
'Values': [
'string',
],
'DatabaseName': 'string',
'TableName': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
Partition (dict) --
The requested information, in the form of a Partition object.
Values (list) --
The values of the partition.
DatabaseName (string) --
The name of the catalog database where the table in question is located.
TableName (string) --
The name of the table in question.
CreationTime (datetime) --
The time at which the partition was created.
LastAccessTime (datetime) --
The last time at which the partition was accessed.
StorageDescriptor (dict) --
Provides information about the physical location where the partition is stored.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
Parameters (dict) --
These key-value pairs define partition parameters.
LastAnalyzedTime (datetime) --
The last time at which column statistics were computed for this partition.
Retrieves information about the partitions in a table.
See also: AWS API Documentation
Request Syntax
response = client.get_partitions(
CatalogId='string',
DatabaseName='string',
TableName='string',
Expression='string',
NextToken='string',
Segment={
'SegmentNumber': 123,
'TotalSegments': 123
},
MaxResults=123
)
[REQUIRED]
The name of the catalog database where the partitions reside.
[REQUIRED]
The name of the partitions' table.
An expression filtering the partitions to be returned.
The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.
Operators : The following are the operators that you can use in the Expression API call:=
Checks if the values of the two operands are equal or not; if yes, then the condition becomes true.
Example: Assume 'variable a' holds 10 and 'variable b' holds 20.
(a = b) is not true.
< >
Checks if the values of two operands are equal or not; if the values are not equal, then the condition becomes true.
Example: (a < > b) is true.
>
Checks if the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.
Example: (a > b) is not true.
<
Checks if the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.
Example: (a < b) is true.
>=
Checks if the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.
Example: (a >= b) is not true.
<=
Checks if the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.
Example: (a <= b) is true.
AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL
Logical operators.
Supported Partition Key Types : The following are the the supported partition keys.
If an invalid type is encountered, an exception is thrown.
The following list shows the valid operators on each type. When you define a crawler, the partitionKey type is created as a STRING , to be compatible with the catalog partitions.
Sample API Call :
The segment of the table's partitions to scan in this request.
The zero-based index number of the this segment. For example, if the total number of segments is 4, SegmentNumber values will range from zero through three.
The total numer of segments.
dict
Response Syntax
{
'Partitions': [
{
'Values': [
'string',
],
'DatabaseName': 'string',
'TableName': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Partitions (list) --
A list of requested partitions.
(dict) --
Represents a slice of table data.
Values (list) --
The values of the partition.
DatabaseName (string) --
The name of the catalog database where the table in question is located.
TableName (string) --
The name of the table in question.
CreationTime (datetime) --
The time at which the partition was created.
LastAccessTime (datetime) --
The last time at which the partition was accessed.
StorageDescriptor (dict) --
Provides information about the physical location where the partition is stored.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
Parameters (dict) --
These key-value pairs define partition parameters.
LastAnalyzedTime (datetime) --
The last time at which column statistics were computed for this partition.
NextToken (string) --
A continuation token, if the returned list of partitions does not does not include the last one.
Gets code to perform a specified mapping.
See also: AWS API Documentation
Request Syntax
response = client.get_plan(
Mapping=[
{
'SourceTable': 'string',
'SourcePath': 'string',
'SourceType': 'string',
'TargetTable': 'string',
'TargetPath': 'string',
'TargetType': 'string'
},
],
Source={
'DatabaseName': 'string',
'TableName': 'string'
},
Sinks=[
{
'DatabaseName': 'string',
'TableName': 'string'
},
],
Location={
'Jdbc': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'S3': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
],
'DynamoDB': [
{
'Name': 'string',
'Value': 'string',
'Param': True|False
},
]
},
Language='PYTHON'|'SCALA'
)
[REQUIRED]
The list of mappings from a source table to target tables.
Defines a mapping.
The name of the source table.
The source path.
The source type.
The target table.
The target path.
The target type.
[REQUIRED]
The source table.
The database in which the table metadata resides.
The name of the table in question.
The target tables.
Specifies a table definition in the Data Catalog.
The database in which the table metadata resides.
The name of the table in question.
Parameters for the mapping.
A JDBC location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
An Amazon S3 location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
A DynamoDB Table location.
An argument or property of a node.
The name of the argument or property.
The value of the argument or property.
True if the value is used as a parameter.
dict
Response Syntax
{
'PythonScript': 'string',
'ScalaCode': 'string'
}
Response Structure
(dict) --
PythonScript (string) --
A Python script to perform the mapping.
ScalaCode (string) --
Scala code to perform the mapping.
Retrieves a specified resource policy.
See also: AWS API Documentation
Request Syntax
response = client.get_resource_policy()
{
'PolicyInJson': 'string',
'PolicyHash': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1)
}
Response Structure
Contains the requested policy document, in JSON format.
Contains the hash value associated with this policy.
The date and time at which the policy was created.
The date and time at which the policy was last updated.
Retrieves a specified security configuration.
See also: AWS API Documentation
Request Syntax
response = client.get_security_configuration(
Name='string'
)
[REQUIRED]
The name of the security configuration to retrieve.
{
'SecurityConfiguration': {
'Name': 'string',
'CreatedTimeStamp': datetime(2015, 1, 1),
'EncryptionConfiguration': {
'S3Encryption': [
{
'S3EncryptionMode': 'DISABLED'|'SSE-KMS'|'SSE-S3',
'KmsKeyArn': 'string'
},
],
'CloudWatchEncryption': {
'CloudWatchEncryptionMode': 'DISABLED'|'SSE-KMS',
'KmsKeyArn': 'string'
},
'JobBookmarksEncryption': {
'JobBookmarksEncryptionMode': 'DISABLED'|'CSE-KMS',
'KmsKeyArn': 'string'
}
}
}
}
Response Structure
The requested security configuration
The name of the security configuration.
The time at which this security configuration was created.
The encryption configuration associated with this security configuration.
The encryption configuration for S3 data.
Specifies how S3 data should be encrypted.
The encryption mode to use for S3 data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for CloudWatch.
The encryption mode to use for CloudWatch data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for Job Bookmarks.
The encryption mode to use for Job bookmarks data.
The AWS ARN of the KMS key to be used to encrypt the data.
Retrieves a list of all security configurations.
See also: AWS API Documentation
Request Syntax
response = client.get_security_configurations(
MaxResults=123,
NextToken='string'
)
dict
Response Syntax
{
'SecurityConfigurations': [
{
'Name': 'string',
'CreatedTimeStamp': datetime(2015, 1, 1),
'EncryptionConfiguration': {
'S3Encryption': [
{
'S3EncryptionMode': 'DISABLED'|'SSE-KMS'|'SSE-S3',
'KmsKeyArn': 'string'
},
],
'CloudWatchEncryption': {
'CloudWatchEncryptionMode': 'DISABLED'|'SSE-KMS',
'KmsKeyArn': 'string'
},
'JobBookmarksEncryption': {
'JobBookmarksEncryptionMode': 'DISABLED'|'CSE-KMS',
'KmsKeyArn': 'string'
}
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
SecurityConfigurations (list) --
A list of security configurations.
(dict) --
Specifies a security configuration.
Name (string) --
The name of the security configuration.
CreatedTimeStamp (datetime) --
The time at which this security configuration was created.
EncryptionConfiguration (dict) --
The encryption configuration associated with this security configuration.
S3Encryption (list) --
The encryption configuration for S3 data.
(dict) --
Specifies how S3 data should be encrypted.
S3EncryptionMode (string) --
The encryption mode to use for S3 data.
KmsKeyArn (string) --
The AWS ARN of the KMS key to be used to encrypt the data.
CloudWatchEncryption (dict) --
The encryption configuration for CloudWatch.
CloudWatchEncryptionMode (string) --
The encryption mode to use for CloudWatch data.
KmsKeyArn (string) --
The AWS ARN of the KMS key to be used to encrypt the data.
JobBookmarksEncryption (dict) --
The encryption configuration for Job Bookmarks.
JobBookmarksEncryptionMode (string) --
The encryption mode to use for Job bookmarks data.
KmsKeyArn (string) --
The AWS ARN of the KMS key to be used to encrypt the data.
NextToken (string) --
A continuation token, if there are more security configurations to return.
Retrieves the Table definition in a Data Catalog for a specified table.
See also: AWS API Documentation
Request Syntax
response = client.get_table(
CatalogId='string',
DatabaseName='string',
Name='string'
)
[REQUIRED]
The name of the database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table for which to retrieve the definition. For Hive compatibility, this name is entirely lowercase.
dict
Response Syntax
{
'Table': {
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
}
}
Response Structure
(dict) --
Table (dict) --
The Table object that defines the specified table.
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
Retrieves a specified version of a table.
See also: AWS API Documentation
Request Syntax
response = client.get_table_version(
CatalogId='string',
DatabaseName='string',
TableName='string',
VersionId='string'
)
[REQUIRED]
The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table. For Hive compatibility, this name is entirely lowercase.
dict
Response Syntax
{
'TableVersion': {
'Table': {
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
},
'VersionId': 'string'
}
}
Response Structure
(dict) --
TableVersion (dict) --
The requested table version.
Table (dict) --
The table in question
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
VersionId (string) --
The ID value that identifies this table version. A VersionId is a string representation of an integer. Each version is incremented by 1.
Retrieves a list of strings that identify available versions of a specified table.
See also: AWS API Documentation
Request Syntax
response = client.get_table_versions(
CatalogId='string',
DatabaseName='string',
TableName='string',
NextToken='string',
MaxResults=123
)
[REQUIRED]
The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table. For Hive compatibility, this name is entirely lowercase.
dict
Response Syntax
{
'TableVersions': [
{
'Table': {
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
},
'VersionId': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
TableVersions (list) --
A list of strings identifying available versions of the specified table.
(dict) --
Specifies a version of a table.
Table (dict) --
The table in question
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
VersionId (string) --
The ID value that identifies this table version. A VersionId is a string representation of an integer. Each version is incremented by 1.
NextToken (string) --
A continuation token, if the list of available versions does not include the last one.
Retrieves the definitions of some or all of the tables in a given Database .
See also: AWS API Documentation
Request Syntax
response = client.get_tables(
CatalogId='string',
DatabaseName='string',
Expression='string',
NextToken='string',
MaxResults=123
)
[REQUIRED]
The database in the catalog whose tables to list. For Hive compatibility, this name is entirely lowercase.
dict
Response Syntax
{
'TableList': [
{
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
TableList (list) --
A list of the requested Table objects.
(dict) --
Represents a collection of related data organized in columns and rows.
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
NextToken (string) --
A continuation token, present if the current list segment is not the last.
Retrieves the definition of a trigger.
See also: AWS API Documentation
Request Syntax
response = client.get_trigger(
Name='string'
)
[REQUIRED]
The name of the trigger to retrieve.
{
'Trigger': {
'Name': 'string',
'Id': 'string',
'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND',
'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING',
'Description': 'string',
'Schedule': 'string',
'Actions': [
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'Predicate': {
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
}
}
}
Response Structure
The requested trigger definition.
Name of the trigger.
Reserved for future use.
The type of trigger that this is.
The current state of the trigger.
A description of this trigger.
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
The actions initiated by this trigger.
Defines an action to be initiated by a trigger.
The name of a job to be executed.
Arguments to be passed to the job run.
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 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 topic in the developer guide.
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.
Specifies configuration properties of a job run notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this action.
The predicate of this trigger, which defines when it will fire.
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
A list of the conditions that determine when the trigger will fire.
Defines a condition under which a trigger fires.
A logical operator.
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
Gets all the triggers associated with a job.
See also: AWS API Documentation
Request Syntax
response = client.get_triggers(
NextToken='string',
DependentJobName='string',
MaxResults=123
)
dict
Response Syntax
{
'Triggers': [
{
'Name': 'string',
'Id': 'string',
'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND',
'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING',
'Description': 'string',
'Schedule': 'string',
'Actions': [
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'Predicate': {
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Triggers (list) --
A list of triggers for the specified job.
(dict) --
Information about a specific trigger.
Name (string) --
Name of the trigger.
Id (string) --
Reserved for future use.
Type (string) --
The type of trigger that this is.
State (string) --
The current state of the trigger.
Description (string) --
A description of this trigger.
Schedule (string) --
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
Actions (list) --
The actions initiated by this trigger.
(dict) --
Defines an action to be initiated by a trigger.
JobName (string) --
The name of a job to be executed.
Arguments (dict) --
Arguments to be passed to the job run.
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 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 topic in the developer guide.
Timeout (integer) --
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.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this action.
Predicate (dict) --
The predicate of this trigger, which defines when it will fire.
Logical (string) --
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
Conditions (list) --
A list of the conditions that determine when the trigger will fire.
(dict) --
Defines a condition under which a trigger fires.
LogicalOperator (string) --
A logical operator.
JobName (string) --
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
State (string) --
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
NextToken (string) --
A continuation token, if not all the requested triggers have yet been returned.
Retrieves a specified function definition from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_user_defined_function(
CatalogId='string',
DatabaseName='string',
FunctionName='string'
)
[REQUIRED]
The name of the catalog database where the function is located.
[REQUIRED]
The name of the function.
dict
Response Syntax
{
'UserDefinedFunction': {
'FunctionName': 'string',
'ClassName': 'string',
'OwnerName': 'string',
'OwnerType': 'USER'|'ROLE'|'GROUP',
'CreateTime': datetime(2015, 1, 1),
'ResourceUris': [
{
'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
'Uri': 'string'
},
]
}
}
Response Structure
(dict) --
UserDefinedFunction (dict) --
The requested function definition.
FunctionName (string) --
The name of the function.
ClassName (string) --
The Java class that contains the function code.
OwnerName (string) --
The owner of the function.
OwnerType (string) --
The owner type.
CreateTime (datetime) --
The time at which the function was created.
ResourceUris (list) --
The resource URIs for the function.
(dict) --
URIs for function resources.
ResourceType (string) --
The type of the resource.
Uri (string) --
The URI for accessing the resource.
Retrieves a multiple function definitions from the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.get_user_defined_functions(
CatalogId='string',
DatabaseName='string',
Pattern='string',
NextToken='string',
MaxResults=123
)
[REQUIRED]
The name of the catalog database where the functions are located.
[REQUIRED]
An optional function-name pattern string that filters the function definitions returned.
dict
Response Syntax
{
'UserDefinedFunctions': [
{
'FunctionName': 'string',
'ClassName': 'string',
'OwnerName': 'string',
'OwnerType': 'USER'|'ROLE'|'GROUP',
'CreateTime': datetime(2015, 1, 1),
'ResourceUris': [
{
'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
'Uri': 'string'
},
]
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
UserDefinedFunctions (list) --
A list of requested function definitions.
(dict) --
Represents the equivalent of a Hive user-defined function (UDF ) definition.
FunctionName (string) --
The name of the function.
ClassName (string) --
The Java class that contains the function code.
OwnerName (string) --
The owner of the function.
OwnerType (string) --
The owner type.
CreateTime (datetime) --
The time at which the function was created.
ResourceUris (list) --
The resource URIs for the function.
(dict) --
URIs for function resources.
ResourceType (string) --
The type of the resource.
Uri (string) --
The URI for accessing the resource.
NextToken (string) --
A continuation token, if the list of functions returned does not include the last requested function.
Returns an object that can wait for some condition.
Imports an existing Athena Data Catalog to AWS Glue
See also: AWS API Documentation
Request Syntax
response = client.import_catalog_to_glue(
CatalogId='string'
)
{}
Response Structure
Sets the security configuration for a specified catalog. Once the configuration has been set, the specified encryption is applied to every catalog write thereafter.
See also: AWS API Documentation
Request Syntax
response = client.put_data_catalog_encryption_settings(
CatalogId='string',
DataCatalogEncryptionSettings={
'EncryptionAtRest': {
'CatalogEncryptionMode': 'DISABLED'|'SSE-KMS',
'SseAwsKmsKeyId': 'string'
},
'ConnectionPasswordEncryption': {
'ReturnConnectionPasswordEncrypted': True|False,
'AwsKmsKeyId': 'string'
}
}
)
[REQUIRED]
The security configuration to set.
Specifies encryption-at-rest configuration for the Data Catalog.
The encryption-at-rest mode for encrypting Data Catalog data.
The ID of the AWS KMS key to use for encryption at rest.
When 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.
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.
A KMS key used to protect access to the JDBC source.
All users in your account should be granted the kms:encrypt permission to encrypt passwords before storing them in the Data Catalog (through the AWS Glue CreateConnection operation).
The decrypt permission should be granted only to KMS key admins and IAM roles designated for AWS Glue crawlers.
dict
Response Syntax
{}
Response Structure
Sets the Data Catalog resource policy for access control.
See also: AWS API Documentation
Request Syntax
response = client.put_resource_policy(
PolicyInJson='string',
PolicyHashCondition='string',
PolicyExistsCondition='MUST_EXIST'|'NOT_EXIST'|'NONE'
)
[REQUIRED]
Contains the policy document to set, in JSON format.
dict
Response Syntax
{
'PolicyHash': 'string'
}
Response Structure
(dict) --
PolicyHash (string) --
A hash of the policy that has just been set. This must be included in a subsequent call that overwrites or updates this policy.
Resets a bookmark entry.
See also: AWS API Documentation
Request Syntax
response = client.reset_job_bookmark(
JobName='string'
)
[REQUIRED]
The name of the job in question.
{
'JobBookmarkEntry': {
'JobName': 'string',
'Version': 123,
'Run': 123,
'Attempt': 123,
'JobBookmark': 'string'
}
}
Response Structure
The reset bookmark entry.
Name of the job in question.
Version of the job.
The run ID number.
The attempt ID number.
The bookmark itself.
Starts a crawl using the specified crawler, regardless of what is scheduled. If the crawler is already running, returns a CrawlerRunningException .
See also: AWS API Documentation
Request Syntax
response = client.start_crawler(
Name='string'
)
[REQUIRED]
Name of the crawler to start.
{}
Response Structure
Changes the schedule state of the specified crawler to SCHEDULED , unless the crawler is already running or the schedule state is already SCHEDULED .
See also: AWS API Documentation
Request Syntax
response = client.start_crawler_schedule(
CrawlerName='string'
)
[REQUIRED]
Name of the crawler to schedule.
{}
Response Structure
Starts a job run using a job definition.
See also: AWS API Documentation
Request Syntax
response = client.start_job_run(
JobName='string',
JobRunId='string',
Arguments={
'string': 'string'
},
AllocatedCapacity=123,
Timeout=123,
MaxCapacity=123.0,
NotificationProperty={
'NotifyDelayAfter': 123
},
SecurityConfiguration='string'
)
[REQUIRED]
The name of the job definition to use.
The job arguments specifically for this run. They override the equivalent default arguments set for 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 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 topic in the developer guide.
This field is deprecated, use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) to allocate 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 .
Specifies configuration properties of a job run notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
dict
Response Syntax
{
'JobRunId': 'string'
}
Response Structure
(dict) --
JobRunId (string) --
The ID assigned to this job run.
Starts an existing trigger. See Triggering Jobs for information about how different types of trigger are started.
See also: AWS API Documentation
Request Syntax
response = client.start_trigger(
Name='string'
)
[REQUIRED]
The name of the trigger to start.
{
'Name': 'string'
}
Response Structure
The name of the trigger that was started.
If the specified crawler is running, stops the crawl.
See also: AWS API Documentation
Request Syntax
response = client.stop_crawler(
Name='string'
)
[REQUIRED]
Name of the crawler to stop.
{}
Response Structure
Sets the schedule state of the specified crawler to NOT_SCHEDULED , but does not stop the crawler if it is already running.
See also: AWS API Documentation
Request Syntax
response = client.stop_crawler_schedule(
CrawlerName='string'
)
[REQUIRED]
Name of the crawler whose schedule state to set.
{}
Response Structure
Stops a specified trigger.
See also: AWS API Documentation
Request Syntax
response = client.stop_trigger(
Name='string'
)
[REQUIRED]
The name of the trigger to stop.
{
'Name': 'string'
}
Response Structure
The name of the trigger that was stopped.
Modifies an existing classifier (a GrokClassifier , XMLClassifier , or JsonClassifier , depending on which field is present).
See also: AWS API Documentation
Request Syntax
response = client.update_classifier(
GrokClassifier={
'Name': 'string',
'Classification': 'string',
'GrokPattern': 'string',
'CustomPatterns': 'string'
},
XMLClassifier={
'Name': 'string',
'Classification': 'string',
'RowTag': 'string'
},
JsonClassifier={
'Name': 'string',
'JsonPath': 'string'
}
)
A GrokClassifier object with updated fields.
The name of the GrokClassifier .
An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, Amazon CloudWatch Logs, and so on.
The grok pattern used by this classifier.
Optional custom grok patterns used by this classifier.
An XMLClassifier object with updated fields.
The name of the classifier.
An identifier of the data format that the classifier matches.
The XML tag designating the element that contains each record in an XML document being parsed. Note that 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, <row item_a="A" item_b="B"></row> is okay, but <row item_a="A" item_b="B" /> is not).
A JsonClassifier object with updated fields.
The name of the classifier.
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 .
dict
Response Syntax
{}
Response Structure
Updates a connection definition in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.update_connection(
CatalogId='string',
Name='string',
ConnectionInput={
'Name': 'string',
'Description': 'string',
'ConnectionType': 'JDBC'|'SFTP',
'MatchCriteria': [
'string',
],
'ConnectionProperties': {
'string': 'string'
},
'PhysicalConnectionRequirements': {
'SubnetId': 'string',
'SecurityGroupIdList': [
'string',
],
'AvailabilityZone': 'string'
}
}
)
[REQUIRED]
The name of the connection definition to update.
[REQUIRED]
A ConnectionInput object that redefines the connection in question.
The name of the connection.
Description of the connection.
The type of the connection. Currently, only JDBC is supported; SFTP is not supported.
A list of criteria that can be used in selecting this connection.
These key-value pairs define parameters for the connection.
A map of physical connection requirements, such as VPC and SecurityGroup, needed for making this connection successfully.
The subnet ID used by the connection.
The security group ID list used by the connection.
The connection's availability zone. This field is redundant, since the specified subnet implies the availability zone to be used. The field must be populated now, but will be deprecated in the future.
dict
Response Syntax
{}
Response Structure
Updates a crawler. If a crawler is running, you must stop it using StopCrawler before updating it.
See also: AWS API Documentation
Request Syntax
response = client.update_crawler(
Name='string',
Role='string',
DatabaseName='string',
Description='string',
Targets={
'S3Targets': [
{
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'JdbcTargets': [
{
'ConnectionName': 'string',
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'DynamoDBTargets': [
{
'Path': 'string'
},
]
},
Schedule='string',
Classifiers=[
'string',
],
TablePrefix='string',
SchemaChangePolicy={
'UpdateBehavior': 'LOG'|'UPDATE_IN_DATABASE',
'DeleteBehavior': 'LOG'|'DELETE_FROM_DATABASE'|'DEPRECATE_IN_DATABASE'
},
Configuration='string',
CrawlerSecurityConfiguration='string'
)
[REQUIRED]
Name of the new crawler.
A list of targets to crawl.
Specifies Amazon S3 targets.
Specifies a data store in Amazon S3.
The path to the Amazon S3 target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies JDBC targets.
Specifies a JDBC data store to crawl.
The name of the connection to use to connect to the JDBC target.
The path of the JDBC target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies DynamoDB targets.
Specifies a DynamoDB table to crawl.
The name of the DynamoDB table to crawl.
A list of custom classifiers that the user has registered. By default, all built-in classifiers are included in a crawl, but these custom classifiers always override the default classifiers for a given classification.
Policy for the crawler's update and deletion behavior.
The update behavior when the crawler finds a changed schema.
The deletion behavior when the crawler finds a deleted object.
dict
Response Syntax
{}
Response Structure
Updates the schedule of a crawler using a cron expression.
See also: AWS API Documentation
Request Syntax
response = client.update_crawler_schedule(
CrawlerName='string',
Schedule='string'
)
[REQUIRED]
Name of the crawler whose schedule to update.
dict
Response Syntax
{}
Response Structure
Updates an existing database definition in a Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.update_database(
CatalogId='string',
Name='string',
DatabaseInput={
'Name': 'string',
'Description': 'string',
'LocationUri': 'string',
'Parameters': {
'string': 'string'
}
}
)
[REQUIRED]
The name of the database to update in the catalog. For Hive compatibility, this is folded to lowercase.
[REQUIRED]
A DatabaseInput object specifying the new definition of the metadata database in the catalog.
Name of the database. For Hive compatibility, this is folded to lowercase when it is stored.
Description of the database
The location of the database (for example, an HDFS path).
Thes key-value pairs define parameters and properties of the database.
dict
Response Syntax
{}
Response Structure
Updates a specified DevEndpoint.
See also: AWS API Documentation
Request Syntax
response = client.update_dev_endpoint(
EndpointName='string',
PublicKey='string',
AddPublicKeys=[
'string',
],
DeletePublicKeys=[
'string',
],
CustomLibraries={
'ExtraPythonLibsS3Path': 'string',
'ExtraJarsS3Path': 'string'
},
UpdateEtlLibraries=True|False
)
[REQUIRED]
The name of the DevEndpoint to be updated.
The list of public keys for the DevEndpoint to use.
The list of public keys to be deleted from the DevEndpoint.
Custom Python or Java libraries to be loaded in the DevEndpoint.
Path(s) to one or more Python libraries in an S3 bucket that should be loaded in your DevEndpoint. Multiple values must be complete paths separated by a comma.
Please note that only pure Python libraries can currently be used on a DevEndpoint. Libraries that rely on C extensions, such as the pandas Python data analysis library, are not yet supported.
Path to one or more Java Jars in an S3 bucket that should be loaded in your DevEndpoint.
Please note that only pure Java/Scala libraries can currently be used on a DevEndpoint.
dict
Response Syntax
{}
Response Structure
Updates an existing job definition.
See also: AWS API Documentation
Request Syntax
response = client.update_job(
JobName='string',
JobUpdate={
'Description': 'string',
'LogUri': 'string',
'Role': 'string',
'ExecutionProperty': {
'MaxConcurrentRuns': 123
},
'Command': {
'Name': 'string',
'ScriptLocation': 'string'
},
'DefaultArguments': {
'string': 'string'
},
'Connections': {
'Connections': [
'string',
]
},
'MaxRetries': 123,
'AllocatedCapacity': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
}
)
[REQUIRED]
Name of the job definition to update.
[REQUIRED]
Specifies the values with which to update the job definition.
Description of the job being defined.
This field is reserved for future use.
The name or ARN of the IAM role associated with this job (required).
An ExecutionProperty specifying the maximum number of concurrent runs allowed for this job.
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.
The JobCommand that executes this job (required).
The name of the job command: this must be glueetl , for an Apache Spark ETL job, or pythonshell , for a Python shell job.
Specifies the S3 path to a script that executes a job (required).
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 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 topic in the developer guide.
The connections used for this job.
A list of connections used by the job.
The maximum number of times to retry this job if it fails.
This field is deprecated. Use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) to allocate to this Job. 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 .
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).
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
Specifies configuration properties of a job notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this job.
dict
Response Syntax
{
'JobName': 'string'
}
Response Structure
(dict) --
JobName (string) --
Returns the name of the updated job definition.
Updates a partition.
See also: AWS API Documentation
Request Syntax
response = client.update_partition(
CatalogId='string',
DatabaseName='string',
TableName='string',
PartitionValueList=[
'string',
],
PartitionInput={
'Values': [
'string',
],
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
}
)
[REQUIRED]
The name of the catalog database in which the table in question resides.
[REQUIRED]
The name of the table where the partition to be updated is located.
[REQUIRED]
A list of the values defining the partition.
[REQUIRED]
The new partition object to which to update the partition.
The values of the partition.
The last time at which the partition was accessed.
Provides information about the physical location where the partition is stored.
A list of the Columns in the table.
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
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.
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
True if the data in the table is compressed, or False if not.
Must be specified if the table contains any dimension columns.
Serialization/deserialization (SerDe) information.
Name of the SerDe.
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
These key-value pairs define initialization parameters for the SerDe.
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
A list specifying the sort order of each bucket in the table.
Specifies the sort order of a sorted column.
The name of the column.
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
User-supplied properties in key-value form.
Information about values that appear very frequently in a column (skewed values).
A list of names of columns that contain skewed values.
A list of values that appear so frequently as to be considered skewed.
A mapping of skewed values to the columns that contain them.
True if the table data is stored in subdirectories, or False if not.
These key-value pairs define partition parameters.
The last time at which column statistics were computed for this partition.
dict
Response Syntax
{}
Response Structure
Updates a metadata table in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.update_table(
CatalogId='string',
DatabaseName='string',
TableInput={
'Name': 'string',
'Description': 'string',
'Owner': 'string',
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
}
},
SkipArchive=True|False
)
[REQUIRED]
The name of the catalog database in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
An updated TableInput object to define the metadata table in the catalog.
Name of the table. For Hive compatibility, this is folded to lowercase when it is stored.
Description of the table.
Owner of the table.
Last time the table was accessed.
Last time column statistics were computed for this table.
Retention time for this table.
A storage descriptor containing information about the physical storage of this table.
A list of the Columns in the table.
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
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.
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
True if the data in the table is compressed, or False if not.
Must be specified if the table contains any dimension columns.
Serialization/deserialization (SerDe) information.
Name of the SerDe.
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
These key-value pairs define initialization parameters for the SerDe.
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
A list specifying the sort order of each bucket in the table.
Specifies the sort order of a sorted column.
The name of the column.
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
User-supplied properties in key-value form.
Information about values that appear very frequently in a column (skewed values).
A list of names of columns that contain skewed values.
A list of values that appear so frequently as to be considered skewed.
A mapping of skewed values to the columns that contain them.
True if the table data is stored in subdirectories, or False if not.
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
A column in a Table .
The name of the Column .
The datatype of data in the Column .
Free-form text comment.
If the table is a view, the original text of the view; otherwise null .
If the table is a view, the expanded text of the view; otherwise null .
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
These key-value pairs define properties associated with the table.
dict
Response Syntax
{}
Response Structure
Updates a trigger definition.
See also: AWS API Documentation
Request Syntax
response = client.update_trigger(
Name='string',
TriggerUpdate={
'Name': 'string',
'Description': 'string',
'Schedule': 'string',
'Actions': [
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'Predicate': {
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
}
}
)
[REQUIRED]
The name of the trigger to update.
[REQUIRED]
The new values with which to update the trigger.
Reserved for future use.
A description of this trigger.
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
The actions initiated by this trigger.
Defines an action to be initiated by a trigger.
The name of a job to be executed.
Arguments to be passed to the job run.
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 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 topic in the developer guide.
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.
Specifies configuration properties of a job run notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this action.
The predicate of this trigger, which defines when it will fire.
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
A list of the conditions that determine when the trigger will fire.
Defines a condition under which a trigger fires.
A logical operator.
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
dict
Response Syntax
{
'Trigger': {
'Name': 'string',
'Id': 'string',
'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND',
'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING',
'Description': 'string',
'Schedule': 'string',
'Actions': [
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'Predicate': {
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
}
}
}
Response Structure
(dict) --
Trigger (dict) --
The resulting trigger definition.
Name (string) --
Name of the trigger.
Id (string) --
Reserved for future use.
Type (string) --
The type of trigger that this is.
State (string) --
The current state of the trigger.
Description (string) --
A description of this trigger.
Schedule (string) --
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
Actions (list) --
The actions initiated by this trigger.
(dict) --
Defines an action to be initiated by a trigger.
JobName (string) --
The name of a job to be executed.
Arguments (dict) --
Arguments to be passed to the job run.
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 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 topic in the developer guide.
Timeout (integer) --
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.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this action.
Predicate (dict) --
The predicate of this trigger, which defines when it will fire.
Logical (string) --
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
Conditions (list) --
A list of the conditions that determine when the trigger will fire.
(dict) --
Defines a condition under which a trigger fires.
LogicalOperator (string) --
A logical operator.
JobName (string) --
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
State (string) --
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
Updates an existing function definition in the Data Catalog.
See also: AWS API Documentation
Request Syntax
response = client.update_user_defined_function(
CatalogId='string',
DatabaseName='string',
FunctionName='string',
FunctionInput={
'FunctionName': 'string',
'ClassName': 'string',
'OwnerName': 'string',
'OwnerType': 'USER'|'ROLE'|'GROUP',
'ResourceUris': [
{
'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
'Uri': 'string'
},
]
}
)
[REQUIRED]
The name of the catalog database where the function to be updated is located.
[REQUIRED]
The name of the function.
[REQUIRED]
A FunctionInput object that re-defines the function in the Data Catalog.
The name of the function.
The Java class that contains the function code.
The owner of the function.
The owner type.
The resource URIs for the function.
URIs for function resources.
The type of the resource.
The URI for accessing the resource.
dict
Response Syntax
{}
Response Structure
The available paginators are:
paginator = client.get_paginator('get_classifiers')
Creates an iterator that will paginate through responses from Glue.Client.get_classifiers().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
{
'Classifiers': [
{
'GrokClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'GrokPattern': 'string',
'CustomPatterns': 'string'
},
'XMLClassifier': {
'Name': 'string',
'Classification': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'RowTag': 'string'
},
'JsonClassifier': {
'Name': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'Version': 123,
'JsonPath': 'string'
}
},
],
}
Response Structure
The requested list of classifier objects.
Classifiers are triggered during a crawl task. A classifier checks whether a given file is in a format it can handle, and 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 supplies, 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, or a JSON classifier, as specified in one of the fields in the Classifier object.
A GrokClassifier object.
The name of the classifier.
An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, and so on.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
The grok pattern applied to a data store by this classifier. For more information, see built-in patterns in Writing Custom Classifers .
Optional custom grok patterns defined by this classifier. For more information, see custom patterns in Writing Custom Classifers .
An XMLClassifier object.
The name of the classifier.
An identifier of the data format that the classifier matches.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
The XML tag designating the element that contains each record in an XML document being parsed. Note that 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, <row item_a="A" item_b="B"></row> is okay, but <row item_a="A" item_b="B" /> is not).
A JsonClassifier object.
The name of the classifier.
The time this classifier was registered.
The time this classifier was last updated.
The version of this classifier.
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 .
paginator = client.get_paginator('get_connections')
Creates an iterator that will paginate through responses from Glue.Client.get_connections().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
Filter={
'MatchCriteria': [
'string',
],
'ConnectionType': 'JDBC'|'SFTP'
},
HidePassword=True|False,
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A filter that controls which connections will be returned.
A criteria string that must match the criteria recorded in the connection definition for that connection definition to be returned.
The type of connections to return. Currently, only JDBC is supported; SFTP is not supported.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'ConnectionList': [
{
'Name': 'string',
'Description': 'string',
'ConnectionType': 'JDBC'|'SFTP',
'MatchCriteria': [
'string',
],
'ConnectionProperties': {
'string': 'string'
},
'PhysicalConnectionRequirements': {
'SubnetId': 'string',
'SecurityGroupIdList': [
'string',
],
'AvailabilityZone': 'string'
},
'CreationTime': datetime(2015, 1, 1),
'LastUpdatedTime': datetime(2015, 1, 1),
'LastUpdatedBy': 'string'
},
],
}
Response Structure
(dict) --
ConnectionList (list) --
A list of requested connection definitions.
(dict) --
Defines a connection to a data source.
Name (string) --
The name of the connection definition.
Description (string) --
Description of the connection.
ConnectionType (string) --
The type of the connection. Currently, only JDBC is supported; SFTP is not supported.
MatchCriteria (list) --
A list of criteria that can be used in selecting this connection.
ConnectionProperties (dict) --
These key-value pairs define parameters for the connection:
PhysicalConnectionRequirements (dict) --
A map of physical connection requirements, such as VPC and SecurityGroup, needed for making this connection successfully.
SubnetId (string) --
The subnet ID used by the connection.
SecurityGroupIdList (list) --
The security group ID list used by the connection.
AvailabilityZone (string) --
The connection's availability zone. This field is redundant, since the specified subnet implies the availability zone to be used. The field must be populated now, but will be deprecated in the future.
CreationTime (datetime) --
The time this connection definition was created.
LastUpdatedTime (datetime) --
The last time this connection definition was updated.
LastUpdatedBy (string) --
The user, group or role that last updated this connection definition.
paginator = client.get_paginator('get_crawler_metrics')
Creates an iterator that will paginate through responses from Glue.Client.get_crawler_metrics().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CrawlerNameList=[
'string',
],
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A list of the names of crawlers about which to retrieve metrics.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'CrawlerMetricsList': [
{
'CrawlerName': 'string',
'TimeLeftSeconds': 123.0,
'StillEstimating': True|False,
'LastRuntimeSeconds': 123.0,
'MedianRuntimeSeconds': 123.0,
'TablesCreated': 123,
'TablesUpdated': 123,
'TablesDeleted': 123
},
],
}
Response Structure
(dict) --
CrawlerMetricsList (list) --
A list of metrics for the specified crawler.
(dict) --
Metrics for a specified crawler.
CrawlerName (string) --
The name of the crawler.
TimeLeftSeconds (float) --
The estimated time left to complete a running crawl.
StillEstimating (boolean) --
True if the crawler is still estimating how long it will take to complete this run.
LastRuntimeSeconds (float) --
The duration of the crawler's most recent run, in seconds.
MedianRuntimeSeconds (float) --
The median duration of this crawler's runs, in seconds.
TablesCreated (integer) --
The number of tables created by this crawler.
TablesUpdated (integer) --
The number of tables updated by this crawler.
TablesDeleted (integer) --
The number of tables deleted by this crawler.
paginator = client.get_paginator('get_crawlers')
Creates an iterator that will paginate through responses from Glue.Client.get_crawlers().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
{
'Crawlers': [
{
'Name': 'string',
'Role': 'string',
'Targets': {
'S3Targets': [
{
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'JdbcTargets': [
{
'ConnectionName': 'string',
'Path': 'string',
'Exclusions': [
'string',
]
},
],
'DynamoDBTargets': [
{
'Path': 'string'
},
]
},
'DatabaseName': 'string',
'Description': 'string',
'Classifiers': [
'string',
],
'SchemaChangePolicy': {
'UpdateBehavior': 'LOG'|'UPDATE_IN_DATABASE',
'DeleteBehavior': 'LOG'|'DELETE_FROM_DATABASE'|'DEPRECATE_IN_DATABASE'
},
'State': 'READY'|'RUNNING'|'STOPPING',
'TablePrefix': 'string',
'Schedule': {
'ScheduleExpression': 'string',
'State': 'SCHEDULED'|'NOT_SCHEDULED'|'TRANSITIONING'
},
'CrawlElapsedTime': 123,
'CreationTime': datetime(2015, 1, 1),
'LastUpdated': datetime(2015, 1, 1),
'LastCrawl': {
'Status': 'SUCCEEDED'|'CANCELLED'|'FAILED',
'ErrorMessage': 'string',
'LogGroup': 'string',
'LogStream': 'string',
'MessagePrefix': 'string',
'StartTime': datetime(2015, 1, 1)
},
'Version': 123,
'Configuration': 'string',
'CrawlerSecurityConfiguration': 'string'
},
],
}
Response Structure
A list of crawler metadata.
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.
The crawler name.
The IAM role (or ARN of an IAM role) used to access customer resources, such as data in Amazon S3.
A collection of targets to crawl.
Specifies Amazon S3 targets.
Specifies a data store in Amazon S3.
The path to the Amazon S3 target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies JDBC targets.
Specifies a JDBC data store to crawl.
The name of the connection to use to connect to the JDBC target.
The path of the JDBC target.
A list of glob patterns used to exclude from the crawl. For more information, see Catalog Tables with a Crawler .
Specifies DynamoDB targets.
Specifies a DynamoDB table to crawl.
The name of the DynamoDB table to crawl.
The database where metadata is written by this crawler.
A description of the crawler.
A list of custom classifiers associated with the crawler.
Sets the behavior when the crawler finds a changed or deleted object.
The update behavior when the crawler finds a changed schema.
The deletion behavior when the crawler finds a deleted object.
Indicates whether the crawler is running, or whether a run is pending.
The prefix added to the names of tables that are created.
For scheduled crawlers, the schedule when the crawler runs.
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
The state of the schedule.
If the crawler is running, contains the total time elapsed since the last crawl began.
The time when the crawler was created.
The time the crawler was last updated.
The status of the last crawl, and potentially error information if an error occurred.
Status of the last crawl.
If an error occurred, the error information about the last crawl.
The log group for the last crawl.
The log stream for the last crawl.
The prefix for a message about this crawl.
The time at which the crawl started.
The version of the crawler.
Crawler configuration information. This versioned JSON string allows users to specify aspects of a crawler's behavior. For more information, see Configuring a Crawler .
The name of the SecurityConfiguration structure to be used by this Crawler.
paginator = client.get_paginator('get_databases')
Creates an iterator that will paginate through responses from Glue.Client.get_databases().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'DatabaseList': [
{
'Name': 'string',
'Description': 'string',
'LocationUri': 'string',
'Parameters': {
'string': 'string'
},
'CreateTime': datetime(2015, 1, 1)
},
],
}
Response Structure
(dict) --
DatabaseList (list) --
A list of Database objects from the specified catalog.
(dict) --
The Database object represents a logical grouping of tables that may reside in a Hive metastore or an RDBMS.
Name (string) --
Name of the database. For Hive compatibility, this is folded to lowercase when it is stored.
Description (string) --
Description of the database.
LocationUri (string) --
The location of the database (for example, an HDFS path).
Parameters (dict) --
These key-value pairs define parameters and properties of the database.
CreateTime (datetime) --
The time at which the metadata database was created in the catalog.
paginator = client.get_paginator('get_dev_endpoints')
Creates an iterator that will paginate through responses from Glue.Client.get_dev_endpoints().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
{
'DevEndpoints': [
{
'EndpointName': 'string',
'RoleArn': 'string',
'SecurityGroupIds': [
'string',
],
'SubnetId': 'string',
'YarnEndpointAddress': 'string',
'PrivateAddress': 'string',
'ZeppelinRemoteSparkInterpreterPort': 123,
'PublicAddress': 'string',
'Status': 'string',
'NumberOfNodes': 123,
'AvailabilityZone': 'string',
'VpcId': 'string',
'ExtraPythonLibsS3Path': 'string',
'ExtraJarsS3Path': 'string',
'FailureReason': 'string',
'LastUpdateStatus': 'string',
'CreatedTimestamp': datetime(2015, 1, 1),
'LastModifiedTimestamp': datetime(2015, 1, 1),
'PublicKey': 'string',
'PublicKeys': [
'string',
],
'SecurityConfiguration': 'string'
},
],
}
Response Structure
A list of DevEndpoint definitions.
A development endpoint where a developer can remotely debug ETL scripts.
The name of the DevEndpoint.
The AWS ARN of the IAM role used in this DevEndpoint.
A list of security group identifiers used in this DevEndpoint.
The subnet ID for this DevEndpoint.
The YARN endpoint address used by this DevEndpoint.
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 virtual private cloud (VPC).
The Apache Zeppelin port for the remote Apache Spark interpreter.
The public IP address used by this DevEndpoint. The PublicAddress field is present only when you create a non-VPC (virtual private cloud) DevEndpoint.
The current status of this DevEndpoint.
The number of AWS Glue Data Processing Units (DPUs) allocated to this DevEndpoint.
The AWS availability zone where this DevEndpoint is located.
The ID of the virtual private cloud (VPC) used by this DevEndpoint.
Path(s) to one or more Python libraries in an S3 bucket that should be loaded in your DevEndpoint. Multiple values must be complete paths separated by a comma.
Please note that only pure Python libraries can currently be used on a DevEndpoint. Libraries that rely on C extensions, such as the pandas Python data analysis library, are not yet supported.
Path to one or more Java Jars in an S3 bucket that should be loaded in your DevEndpoint.
Please note that only pure Java/Scala libraries can currently be used on a DevEndpoint.
The reason for a current failure in this DevEndpoint.
The status of the last update.
The point in time at which this DevEndpoint was created.
The point in time at which this DevEndpoint was last modified.
The public key to be used by this DevEndpoint for authentication. This attribute is provided for backward compatibility, as the recommended attribute to use is public keys.
A list of public keys to be used by the DevEndpoints for authentication. The use of this attribute is preferred over a single public key because the public keys allow you to have a different private key per client.
Note
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 with the public key content in the deletePublicKeys attribute, and the list of new keys in the addPublicKeys attribute.
The name of the SecurityConfiguration structure to be used with this DevEndpoint.
paginator = client.get_paginator('get_job_runs')
Creates an iterator that will paginate through responses from Glue.Client.get_job_runs().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
JobName='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
[REQUIRED]
The name of the job definition for which to retrieve all job runs.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'JobRuns': [
{
'Id': 'string',
'Attempt': 123,
'PreviousRunId': 'string',
'TriggerName': 'string',
'JobName': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'JobRunState': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'Arguments': {
'string': 'string'
},
'ErrorMessage': 'string',
'PredecessorRuns': [
{
'JobName': 'string',
'RunId': 'string'
},
],
'AllocatedCapacity': 123,
'ExecutionTime': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string',
'LogGroupName': 'string'
},
],
}
Response Structure
(dict) --
JobRuns (list) --
A list of job-run metatdata objects.
(dict) --
Contains information about a job run.
Id (string) --
The ID of this job run.
Attempt (integer) --
The number of the attempt to run this job.
PreviousRunId (string) --
The ID of the previous run of this job. For example, the JobRunId specified in the StartJobRun action.
TriggerName (string) --
The name of the trigger that started this job run.
JobName (string) --
The name of the job definition being used in this run.
StartedOn (datetime) --
The date and time at which this job run was started.
LastModifiedOn (datetime) --
The last time this job run was modified.
CompletedOn (datetime) --
The date and time this job run completed.
JobRunState (string) --
The current state of the job run.
Arguments (dict) --
The job arguments associated with this run. These override equivalent default arguments set for the 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 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 topic in the developer guide.
ErrorMessage (string) --
An error message associated with this job run.
PredecessorRuns (list) --
A list of predecessors to this job run.
(dict) --
A job run that was used in the predicate of a conditional trigger that triggered this job run.
JobName (string) --
The name of the job definition used by the predecessor job run.
RunId (string) --
The job-run ID of the predecessor job run.
AllocatedCapacity (integer) --
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 .
ExecutionTime (integer) --
The amount of time (in seconds) that the job run consumed resources.
Timeout (integer) --
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.
MaxCapacity (float) --
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this job run.
LogGroupName (string) --
The name of the log group for secure logging, that can be server-side encrypted in CloudWatch using 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 will be used to encrypt the log group.
paginator = client.get_paginator('get_jobs')
Creates an iterator that will paginate through responses from Glue.Client.get_jobs().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
{
'Jobs': [
{
'Name': 'string',
'Description': 'string',
'LogUri': 'string',
'Role': 'string',
'CreatedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'ExecutionProperty': {
'MaxConcurrentRuns': 123
},
'Command': {
'Name': 'string',
'ScriptLocation': 'string'
},
'DefaultArguments': {
'string': 'string'
},
'Connections': {
'Connections': [
'string',
]
},
'MaxRetries': 123,
'AllocatedCapacity': 123,
'Timeout': 123,
'MaxCapacity': 123.0,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
}
Response Structure
A list of job definitions.
Specifies a job definition.
The name you assign to this job definition.
Description of the job being defined.
This field is reserved for future use.
The name or ARN of the IAM role associated with this job.
The time and date that this job definition was created.
The last point in time when this job definition was modified.
An ExecutionProperty specifying the maximum number of concurrent runs allowed for this job.
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.
The JobCommand that executes this job.
The name of the job command: this must be glueetl , for an Apache Spark ETL job, or pythonshell , for a Python shell job.
Specifies the S3 path to a script that executes a job (required).
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 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 topic in the developer guide.
The connections used for this job.
A list of connections used by the job.
The maximum number of times to retry this job after a JobRun fails.
This field is deprecated, use MaxCapacity instead.
The number of AWS Glue data processing units (DPUs) allocated to runs of this job. 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 .
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).
AWS Glue supports running jobs on a JobCommand.Name ="pythonshell" with allocated processing as low as 0.0625 DPU, which can be specified using MaxCapacity . Glue ETL jobs running in any other way cannot have fractional DPU allocations.
Specifies configuration properties of a job notification.
After a job run starts, the number of minutes to wait before sending a job run delay notification.
The name of the SecurityConfiguration structure to be used with this job.
paginator = client.get_paginator('get_partitions')
Creates an iterator that will paginate through responses from Glue.Client.get_partitions().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
DatabaseName='string',
TableName='string',
Expression='string',
Segment={
'SegmentNumber': 123,
'TotalSegments': 123
},
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
[REQUIRED]
The name of the catalog database where the partitions reside.
[REQUIRED]
The name of the partitions' table.
An expression filtering the partitions to be returned.
The expression uses SQL syntax similar to the SQL WHERE filter clause. The SQL statement parser JSQLParser parses the expression.
Operators : The following are the operators that you can use in the Expression API call:=
Checks if the values of the two operands are equal or not; if yes, then the condition becomes true.
Example: Assume 'variable a' holds 10 and 'variable b' holds 20.
(a = b) is not true.
< >
Checks if the values of two operands are equal or not; if the values are not equal, then the condition becomes true.
Example: (a < > b) is true.
>
Checks if the value of the left operand is greater than the value of the right operand; if yes, then the condition becomes true.
Example: (a > b) is not true.
<
Checks if the value of the left operand is less than the value of the right operand; if yes, then the condition becomes true.
Example: (a < b) is true.
>=
Checks if the value of the left operand is greater than or equal to the value of the right operand; if yes, then the condition becomes true.
Example: (a >= b) is not true.
<=
Checks if the value of the left operand is less than or equal to the value of the right operand; if yes, then the condition becomes true.
Example: (a <= b) is true.
AND, OR, IN, BETWEEN, LIKE, NOT, IS NULL
Logical operators.
Supported Partition Key Types : The following are the the supported partition keys.
If an invalid type is encountered, an exception is thrown.
The following list shows the valid operators on each type. When you define a crawler, the partitionKey type is created as a STRING , to be compatible with the catalog partitions.
Sample API Call :
The segment of the table's partitions to scan in this request.
The zero-based index number of the this segment. For example, if the total number of segments is 4, SegmentNumber values will range from zero through three.
The total numer of segments.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'Partitions': [
{
'Values': [
'string',
],
'DatabaseName': 'string',
'TableName': 'string',
'CreationTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'Parameters': {
'string': 'string'
},
'LastAnalyzedTime': datetime(2015, 1, 1)
},
],
}
Response Structure
(dict) --
Partitions (list) --
A list of requested partitions.
(dict) --
Represents a slice of table data.
Values (list) --
The values of the partition.
DatabaseName (string) --
The name of the catalog database where the table in question is located.
TableName (string) --
The name of the table in question.
CreationTime (datetime) --
The time at which the partition was created.
LastAccessTime (datetime) --
The last time at which the partition was accessed.
StorageDescriptor (dict) --
Provides information about the physical location where the partition is stored.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
Parameters (dict) --
These key-value pairs define partition parameters.
LastAnalyzedTime (datetime) --
The last time at which column statistics were computed for this partition.
paginator = client.get_paginator('get_security_configurations')
Creates an iterator that will paginate through responses from Glue.Client.get_security_configurations().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
{
'SecurityConfigurations': [
{
'Name': 'string',
'CreatedTimeStamp': datetime(2015, 1, 1),
'EncryptionConfiguration': {
'S3Encryption': [
{
'S3EncryptionMode': 'DISABLED'|'SSE-KMS'|'SSE-S3',
'KmsKeyArn': 'string'
},
],
'CloudWatchEncryption': {
'CloudWatchEncryptionMode': 'DISABLED'|'SSE-KMS',
'KmsKeyArn': 'string'
},
'JobBookmarksEncryption': {
'JobBookmarksEncryptionMode': 'DISABLED'|'CSE-KMS',
'KmsKeyArn': 'string'
}
}
},
],
}
Response Structure
A list of security configurations.
Specifies a security configuration.
The name of the security configuration.
The time at which this security configuration was created.
The encryption configuration associated with this security configuration.
The encryption configuration for S3 data.
Specifies how S3 data should be encrypted.
The encryption mode to use for S3 data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for CloudWatch.
The encryption mode to use for CloudWatch data.
The AWS ARN of the KMS key to be used to encrypt the data.
The encryption configuration for Job Bookmarks.
The encryption mode to use for Job bookmarks data.
The AWS ARN of the KMS key to be used to encrypt the data.
paginator = client.get_paginator('get_table_versions')
Creates an iterator that will paginate through responses from Glue.Client.get_table_versions().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
DatabaseName='string',
TableName='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
[REQUIRED]
The database in the catalog in which the table resides. For Hive compatibility, this name is entirely lowercase.
[REQUIRED]
The name of the table. For Hive compatibility, this name is entirely lowercase.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'TableVersions': [
{
'Table': {
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
},
'VersionId': 'string'
},
],
}
Response Structure
(dict) --
TableVersions (list) --
A list of strings identifying available versions of the specified table.
(dict) --
Specifies a version of a table.
Table (dict) --
The table in question
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
VersionId (string) --
The ID value that identifies this table version. A VersionId is a string representation of an integer. Each version is incremented by 1.
paginator = client.get_paginator('get_tables')
Creates an iterator that will paginate through responses from Glue.Client.get_tables().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
DatabaseName='string',
Expression='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
[REQUIRED]
The database in the catalog whose tables to list. For Hive compatibility, this name is entirely lowercase.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'TableList': [
{
'Name': 'string',
'DatabaseName': 'string',
'Description': 'string',
'Owner': 'string',
'CreateTime': datetime(2015, 1, 1),
'UpdateTime': datetime(2015, 1, 1),
'LastAccessTime': datetime(2015, 1, 1),
'LastAnalyzedTime': datetime(2015, 1, 1),
'Retention': 123,
'StorageDescriptor': {
'Columns': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'Location': 'string',
'InputFormat': 'string',
'OutputFormat': 'string',
'Compressed': True|False,
'NumberOfBuckets': 123,
'SerdeInfo': {
'Name': 'string',
'SerializationLibrary': 'string',
'Parameters': {
'string': 'string'
}
},
'BucketColumns': [
'string',
],
'SortColumns': [
{
'Column': 'string',
'SortOrder': 123
},
],
'Parameters': {
'string': 'string'
},
'SkewedInfo': {
'SkewedColumnNames': [
'string',
],
'SkewedColumnValues': [
'string',
],
'SkewedColumnValueLocationMaps': {
'string': 'string'
}
},
'StoredAsSubDirectories': True|False
},
'PartitionKeys': [
{
'Name': 'string',
'Type': 'string',
'Comment': 'string'
},
],
'ViewOriginalText': 'string',
'ViewExpandedText': 'string',
'TableType': 'string',
'Parameters': {
'string': 'string'
},
'CreatedBy': 'string'
},
],
}
Response Structure
(dict) --
TableList (list) --
A list of the requested Table objects.
(dict) --
Represents a collection of related data organized in columns and rows.
Name (string) --
Name of the table. For Hive compatibility, this must be entirely lowercase.
DatabaseName (string) --
Name of the metadata database where the table metadata resides. For Hive compatibility, this must be all lowercase.
Description (string) --
Description of the table.
Owner (string) --
Owner of the table.
CreateTime (datetime) --
Time when the table definition was created in the Data Catalog.
UpdateTime (datetime) --
Last time the table was updated.
LastAccessTime (datetime) --
Last time the table was accessed. This is usually taken from HDFS, and may not be reliable.
LastAnalyzedTime (datetime) --
Last time column statistics were computed for this table.
Retention (integer) --
Retention time for this table.
StorageDescriptor (dict) --
A storage descriptor containing information about the physical storage of this table.
Columns (list) --
A list of the Columns in the table.
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
Location (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.
InputFormat (string) --
The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.
OutputFormat (string) --
The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.
Compressed (boolean) --
True if the data in the table is compressed, or False if not.
NumberOfBuckets (integer) --
Must be specified if the table contains any dimension columns.
SerdeInfo (dict) --
Serialization/deserialization (SerDe) information.
Name (string) --
Name of the SerDe.
SerializationLibrary (string) --
Usually the class that implements the SerDe. An example is: org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe .
Parameters (dict) --
These key-value pairs define initialization parameters for the SerDe.
BucketColumns (list) --
A list of reducer grouping columns, clustering columns, and bucketing columns in the table.
SortColumns (list) --
A list specifying the sort order of each bucket in the table.
(dict) --
Specifies the sort order of a sorted column.
Column (string) --
The name of the column.
SortOrder (integer) --
Indicates that the column is sorted in ascending order (== 1 ), or in descending order (==0 ).
Parameters (dict) --
User-supplied properties in key-value form.
SkewedInfo (dict) --
Information about values that appear very frequently in a column (skewed values).
SkewedColumnNames (list) --
A list of names of columns that contain skewed values.
SkewedColumnValues (list) --
A list of values that appear so frequently as to be considered skewed.
SkewedColumnValueLocationMaps (dict) --
A mapping of skewed values to the columns that contain them.
StoredAsSubDirectories (boolean) --
True if the table data is stored in subdirectories, or False if not.
PartitionKeys (list) --
A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.
When creating a table used by Athena, and you do not specify any partitionKeys , you must at least set the value of partitionKeys to an empty list. For example:
"PartitionKeys": []
(dict) --
A column in a Table .
Name (string) --
The name of the Column .
Type (string) --
The datatype of data in the Column .
Comment (string) --
Free-form text comment.
ViewOriginalText (string) --
If the table is a view, the original text of the view; otherwise null .
ViewExpandedText (string) --
If the table is a view, the expanded text of the view; otherwise null .
TableType (string) --
The type of this table (EXTERNAL_TABLE , VIRTUAL_VIEW , etc.).
Parameters (dict) --
These key-value pairs define properties associated with the table.
CreatedBy (string) --
Person or entity who created the table.
paginator = client.get_paginator('get_triggers')
Creates an iterator that will paginate through responses from Glue.Client.get_triggers().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
DependentJobName='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'Triggers': [
{
'Name': 'string',
'Id': 'string',
'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND',
'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING',
'Description': 'string',
'Schedule': 'string',
'Actions': [
{
'JobName': 'string',
'Arguments': {
'string': 'string'
},
'Timeout': 123,
'NotificationProperty': {
'NotifyDelayAfter': 123
},
'SecurityConfiguration': 'string'
},
],
'Predicate': {
'Logical': 'AND'|'ANY',
'Conditions': [
{
'LogicalOperator': 'EQUALS',
'JobName': 'string',
'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT'
},
]
}
},
],
}
Response Structure
(dict) --
Triggers (list) --
A list of triggers for the specified job.
(dict) --
Information about a specific trigger.
Name (string) --
Name of the trigger.
Id (string) --
Reserved for future use.
Type (string) --
The type of trigger that this is.
State (string) --
The current state of the trigger.
Description (string) --
A description of this trigger.
Schedule (string) --
A cron expression used to specify the schedule (see Time-Based Schedules for Jobs and Crawlers . For example, to run something every day at 12:15 UTC, you would specify: cron(15 12 * * ? *) .
Actions (list) --
The actions initiated by this trigger.
(dict) --
Defines an action to be initiated by a trigger.
JobName (string) --
The name of a job to be executed.
Arguments (dict) --
Arguments to be passed to the job run.
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 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 topic in the developer guide.
Timeout (integer) --
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.
NotificationProperty (dict) --
Specifies configuration properties of a job run notification.
NotifyDelayAfter (integer) --
After a job run starts, the number of minutes to wait before sending a job run delay notification.
SecurityConfiguration (string) --
The name of the SecurityConfiguration structure to be used with this action.
Predicate (dict) --
The predicate of this trigger, which defines when it will fire.
Logical (string) --
Optional field if only one condition is listed. If multiple conditions are listed, then this field is required.
Conditions (list) --
A list of the conditions that determine when the trigger will fire.
(dict) --
Defines a condition under which a trigger fires.
LogicalOperator (string) --
A logical operator.
JobName (string) --
The name of the Job to whose JobRuns this condition applies and on which this trigger waits.
State (string) --
The condition state. Currently, the values supported are SUCCEEDED, STOPPED, TIMEOUT and FAILED.
paginator = client.get_paginator('get_user_defined_functions')
Creates an iterator that will paginate through responses from Glue.Client.get_user_defined_functions().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
CatalogId='string',
DatabaseName='string',
Pattern='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
[REQUIRED]
The name of the catalog database where the functions are located.
[REQUIRED]
An optional function-name pattern string that filters the function definitions returned.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'UserDefinedFunctions': [
{
'FunctionName': 'string',
'ClassName': 'string',
'OwnerName': 'string',
'OwnerType': 'USER'|'ROLE'|'GROUP',
'CreateTime': datetime(2015, 1, 1),
'ResourceUris': [
{
'ResourceType': 'JAR'|'FILE'|'ARCHIVE',
'Uri': 'string'
},
]
},
],
}
Response Structure
(dict) --
UserDefinedFunctions (list) --
A list of requested function definitions.
(dict) --
Represents the equivalent of a Hive user-defined function (UDF ) definition.
FunctionName (string) --
The name of the function.
ClassName (string) --
The Java class that contains the function code.
OwnerName (string) --
The owner of the function.
OwnerType (string) --
The owner type.
CreateTime (datetime) --
The time at which the function was created.
ResourceUris (list) --
The resource URIs for the function.
(dict) --
URIs for function resources.
ResourceType (string) --
The type of the resource.
Uri (string) --
The URI for accessing the resource.