DocsAWS 101BlogServices

Glue

Data Catalog (databases, tables, partitions), crawlers, jobs, triggers, connections, schema registry.

JSON-RPC (X-Amz-Target) multi-tenant 77 operations

Quick start

import boto3
glue = boto3.client("glue", endpoint_url="http://localhost:4566",
                    region_name="us-east-1",
                    aws_access_key_id="test", aws_secret_access_key="test")
glue.create_database(DatabaseInput={"Name":"db"})
glue.create_table(DatabaseName="db",
    TableInput={"Name":"t","StorageDescriptor":{"Columns":[{"Name":"c","Type":"string"}]}})

Supported operations

77 operations exposed by this service as of MiniStack 1.4.21. Extracted directly from the handler dispatch in the source module.

BatchCreatePartition BatchDeleteTable BatchGetPartition BatchGetTriggers BatchStopJobRun BatchUpdatePartition CreateClassifier CreateConnection CreateCrawler CreateDatabase CreateJob CreatePartition CreatePartitionIndex CreateSecurityConfiguration CreateTable CreateTrigger CreateUserDefinedFunction CreateWorkflow DeleteClassifier DeleteColumnStatisticsForPartition DeleteColumnStatisticsForTable DeleteConnection DeleteCrawler DeleteDatabase DeleteJob DeletePartition DeleteSecurityConfiguration DeleteTable DeleteTrigger DeleteUserDefinedFunction DeleteWorkflow GetClassifier GetClassifiers GetColumnStatisticsForPartition GetColumnStatisticsForTable GetConnection GetConnections GetCrawler GetCrawlerMetrics GetCrawlers GetDatabase GetDatabases GetJob GetJobRun GetJobRuns GetJobs GetPartition GetPartitionIndexes GetPartitions GetSecurityConfiguration GetSecurityConfigurations GetTable GetTables GetTags GetTrigger GetTriggers GetUserDefinedFunction GetUserDefinedFunctions GetWorkflow ListTriggers StartCrawler StartJobRun StartTrigger StartWorkflowRun StopCrawler StopTrigger TagResource UntagResource UpdateColumnStatisticsForPartition UpdateColumnStatisticsForTable UpdateCrawler UpdateDatabase UpdateJob UpdateTable UpdateTrigger UpdateUserDefinedFunction UpdateWorkflow

CloudFormation

No CloudFormation resource types map to this service yet. Resources can still be created via the SDK or CLI.

Known limitations

  • Crawlers transition RUNNING→READY on a timer but create or update no tables — no S3 files are read and no schema is inferred.
  • Python-shell jobs run as a subprocess and Spark (glueetl) jobs run in Docker when available; job runs are not pure metadata.

Source

  • ministack/services/glue.py

Read the source to verify the ops list above — dispatch tables and handler functions are the ground truth.