> For the complete documentation index, see [llms.txt](https://upsolver.gitbook.io/content/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://upsolver.gitbook.io/content/how-to-guides-1/connectors/configure-access/aws-glue-data-catalog.md).

# AWS Glue Data Catalog

## AWS Glue Data Catalog Access

This section outlines how to configure AWS Glue Data Catalog access in Upsolver. Setting up AWS Glue access in Upsolver facilitates effective data management and processing.

### Creating an IAM Role for AWS Glue Access

To set up AWS Glue Data Catalog in Upsolver, an IAM role with the appropriate permissions is required. Follow the AWS documentation to create an IAM role and establish a trust relationship.

#### Required IAM Permissions for AWS Glue

Upsolver needs these permissions for integrating with AWS Glue:

* `glue:GetDatabase`
* `glue:GetTable`
* `glue:GetPartition`
* `glue:GetPartitions`
* `glue:GetUserDefinedFunction`
* `glue:CreateDatabase`: Create new databases in the AWS Glue Catalog
* `glue:UpdateDatabase`: Update existing databases
* `glue:DeleteDatabase`: Delete databases
* `glue:CreateTable`: Create new tables
* `glue:UpdateTable`: Update existing tables
* `glue:DeleteTable`: Delete tables
* `glue:BatchCreatePartition`: Create multiple partitions simultaneously
* `glue:BatchDeletePartition`: Delete multiple partitions simultaneously

### Configuring AWS Glue Connection in Upsolver

When creating an AWS Glue connection in Upsolver, specify the AWS Glue Data Catalog and database for Upsolver to access and manage data structures.

#### IAM Policy for AWS Glue Access

Create an IAM policy with the following statements to grant Upsolver access to AWS Glue resources. Replace `<database_name>` with your actual database name:

```json
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "glue:GetDatabase",
                "glue:GetTable",
                "glue:GetPartition",
                "glue:GetPartitions",
                "glue:GetUserDefinedFunction"
                "glue:CreateDatabase",
                "glue:UpdateDatabase",
                "glue:DeleteDatabase",
                "glue:CreateTable",
                "glue:UpdateTable",
                "glue:DeleteTable",
                "glue:BatchCreatePartition",
                "glue:BatchDeletePartition"
            ],
            "Resource": [
                "arn:aws:glue:<region>:<account-id>:database/<database_name>",
                "arn:aws:glue:<region>:<account-id>:table/<database_name>/*",
                "arn:aws:glue:<region>:<account-id>:catalog"
            ]
        }     
    ]
}
```

This policy allows Upsolver to perform read and write operations in the specified AWS Glue Data Catalog.

{% hint style="success" %}
**Learn More**

For detailed information on AWS Glue permissions and integration with Upsolver, refer to Amazon's [AWS Glue documentation](https://docs.aws.amazon.com/glue/latest/dg/set-up-iam.html).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://upsolver.gitbook.io/content/how-to-guides-1/connectors/configure-access/aws-glue-data-catalog.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
