

# 연결 메타데이터 및 미리 보기 API
<a name="aws-glue-api-catalog-connections-connections-metadata"></a>

다음 연결 API는 연결 메타데이터를 설명하는 작업에 대해 설명합니다.

## 데이터 타입
<a name="aws-glue-api-catalog-connections-connections-metadata-objects"></a>
+ [Entity 구조](#aws-glue-api-catalog-connections-connections-metadata-Entity)
+ [Field 구조](#aws-glue-api-catalog-connections-connections-metadata-Field)

## Entity 구조
<a name="aws-glue-api-catalog-connections-connections-metadata-Entity"></a>

지정된 `ConnectionType`에서 지원하는 개체입니다.

**Fields**
+ `EntityName` – UTF-8 문자열입니다.

  개체의 이름입니다.
+ `Label` – UTF-8 문자열입니다.

  엔터티에 사용되는 레이블입니다.
+ `IsParentEntity` – 부울입니다.

  나열할 수 있는 하위 객체가 있는지 확인하는 데 도움이 되는 부울 값입니다.
+ `Description` – UTF-8 문자열입니다.

  엔터티에 대한 설명입니다.
+ `Category` – UTF-8 문자열입니다.

  응답에 있는 엔터티의 유형입니다. 이 값은 소스 연결에 따라 다릅니다. 예를 들어 Salesforce의 경우 `SObjects`이고 Amazon Redshift와 같은 소스의 경우 `databases`, `schemas` 또는 `tables`입니다.
+ `CustomProperties` – 

  커넥터가 엔터티에 대해 반환할 수 있는 키의 선택적 맵입니다.

## Field 구조
<a name="aws-glue-api-catalog-connections-connections-metadata-Field"></a>

`Field` 객체에는 커넥터의 필드와 연결된 다양한 속성에 대한 정보가 있습니다.

**Fields**
+ `FieldName` – UTF-8 문자열입니다.

  필드의 고유 식별자입니다.
+ `Label` – UTF-8 문자열입니다.

  필드에 사용되는 읽기 가능한 레이블입니다.
+ `Description` – UTF-8 문자열입니다.

  필드에 대한 설명입니다.
+ `FieldType` – UTF-8 문자열입니다(유효한 값: `INT` \$1 `SMALLINT` \$1 `BIGINT` \$1 `FLOAT` \$1 `LONG` \$1 `DATE` \$1 `BOOLEAN` \$1 `MAP` \$1 `ARRAY` \$1 `STRING` \$1 `TIMESTAMP` \$1 `DECIMAL` \$1 `BYTE` \$1 `SHORT` \$1 `DOUBLE` \$1 `STRUCT`).

  필드의 데이터 유형입니다.
+ `IsPrimaryKey` – 부울입니다.

  이 필드를 지정된 엔터티의 기본 키로 사용할 수 있는지 여부를 나타냅니다.
+ `IsNullable` – 부울입니다.

  이 필드에 null 값이 허용되는지 여부를 나타냅니다.
+ `IsRetrievable` – 부울입니다.

  SQL 쿼리의 Select 절에 이 필드를 추가할 수 있는지 또는 이 필드를 검색할 수 있는지 여부를 나타냅니다.
+ `IsFilterable` – 부울입니다.

   데이터를 쿼리할 때 SQL 문의 filter 절(`WHERE` 절)에 이 필드를 사용할 수 있는지 여부를 나타냅니다.
+ `IsPartitionable` – 부울입니다.

  SaaS에 대한 쿼리를 분할하는 데 지정된 필드를 사용할 수 있는지 여부를 나타냅니다.
+ `IsCreateable` – 부울입니다.

  이 필드를 대상 쓰기의 일부로 생성할 수 있는지 여부를 나타냅니다.
+ `IsUpdateable` – 부울입니다.

  이 필드를 대상 쓰기의 일부로 업데이트할 수 있는지 여부를 나타냅니다.
+ `IsUpsertable` – 부울입니다.

  이 필드를 대상 쓰기의 일부로 삽입할 수 있는지 여부를 나타냅니다.
+ `IsDefaultOnCreate` – 부울입니다.

  타임스탬프에서 생성되는 객체와 같은 객체가 생성될 때 이 필드가 자동으로 채워지는지 여부를 나타냅니다.
+ `SupportedValues` – .

  필드의 지원되는 값 목록입니다.
+ `SupportedFilterOperators` – UTF-8 문자열의 배열입니다.

  이 필드에 대한 지원 필터 연산자를 나타냅니다.
+ `CustomProperties` – 

  반환되는 키의 선택적 맵입니다.

## 작업
<a name="aws-glue-api-catalog-connections-connections-metadata-actions"></a>
+ [ListEntities 작업(Python: list\$1entities)](#aws-glue-api-catalog-connections-connections-metadata-ListEntities)
+ [DescribeEntity 작업(Python: describe\$1entity)](#aws-glue-api-catalog-connections-connections-metadata-DescribeEntity)
+ [GetEntityRecords 작업(Python: get\$1entity\$1records)](#aws-glue-api-catalog-connections-connections-metadata-GetEntityRecords)

## ListEntities 작업(Python: list\$1entities)
<a name="aws-glue-api-catalog-connections-connections-metadata-ListEntities"></a>

연결 유형에서 지원하는 사용 가능한 엔터티를 반환합니다.

**요청**
+ `ConnectionName` – 과(와) 일치하는 1\$1255바이트 길이의 UTF-8 문자열입니다..[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)

  모든 연결 유형을 쿼리하는 데 필요한 자격 증명이 있는 연결의 이름입니다.
+ `CatalogId` – 과(와) 일치하는 1\$1255바이트 길이의 카탈로그 ID 문자열입니다..[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)

  연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.
+ `ParentEntityName` – UTF-8 문자열입니다.

  하위 항목을 나열하려는 상위 엔터티의 이름입니다. 이 파라미터는 하위 엔터티를 나열하기 위해 엔터티의 정규화된 경로를 사용합니다.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.
+ `DataStoreApiVersion` – 과(와) 일치하는 1\$1256바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #23](aws-glue-api-common.md#regex_23)

  SaaS 커넥터의 API 버전입니다.

**응답**
+ `Entities` – [개체](#aws-glue-api-catalog-connections-connections-metadata-Entity) 객체의 배열입니다.

  `Entity` 객체의 목록.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  현재 세그먼트가 마지막이 아닌 경우 연속 토큰이 존재합니다.

**오류**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`

## DescribeEntity 작업(Python: describe\$1entity)
<a name="aws-glue-api-catalog-connections-connections-metadata-DescribeEntity"></a>

선택한 엔터티의 각 필드의 데이터 모델에 대한 설명과 함께 연결 유형에 사용되는 엔터티에 대한 세부 정보를 제공합니다.

 엔터티를 구성하는 모든 필드가 응답에 포함됩니다.

**요청**
+ `ConnectionName` – *필수(Required):* [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)과(와) 일치하는 1\$1255바이트 길이의 UTF-8 문자열입니다.

  연결 유형 자격 증명이 포함된 연결의 이름입니다.
+ `CatalogId` – 과(와) 일치하는 1\$1255바이트 길이의 카탈로그 ID 문자열입니다..[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)

  연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.
+ `EntityName` – *필수:* UTF-8 문자열입니다.

  연결 유형에서 설명할 엔터티의 이름입니다.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.
+ `DataStoreApiVersion` – 과(와) 일치하는 1\$1256바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #23](aws-glue-api-common.md#regex_23)

  데이터 스토어에 사용되는 API의 버전입니다.

**응답**
+ `Fields` – [필드](#aws-glue-api-catalog-connections-connections-metadata-Field) 객체의 배열입니다.

  해당 커넥터 엔터티의 필드를 설명합니다. `Field` 객체의 목록입니다. `Field`는 데이터베이스의 열과 매우 유사합니다. `Field` 객체에는 커넥터의 필드와 연결된 다양한 속성에 대한 정보가 있습니다.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  현재 세그먼트가 마지막이 아닌 경우 연속 토큰이 존재합니다.

**오류**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`

## GetEntityRecords 작업(Python: get\$1entity\$1records)
<a name="aws-glue-api-catalog-connections-connections-metadata-GetEntityRecords"></a>

이 API는 지정된 연결 유형 또는 기본 Amazon S3 기반 AWS Glue Data Catalog에서 미리 보기 데이터를 쿼리하는 데 사용됩니다.

레코드를 JSON Blob의 배열로 반환합니다. 각 레코드는 `DescribeEntity` API에서 정의한 필드 유형에 따라 Jackson JsonNode를 사용하여 형식이 지정됩니다.

Spark 커넥터는 `DescribeEntity` API와 동일한 데이터 형식 매핑에 따라 스키마를 생성합니다. Spark 커넥터는 행을 반환할 때 데이터를 스키마와 일치하는 적절한 데이터 유형으로 변환합니다.

**요청**
+ `ConnectionName` – 과(와) 일치하는 1\$1255바이트 길이의 UTF-8 문자열입니다..[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)

  연결 유형 자격 증명이 포함된 연결의 이름입니다.
+ `CatalogId` – 과(와) 일치하는 1\$1255바이트 길이의 카탈로그 ID 문자열입니다..[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)

  연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.
+ `EntityName` – *필수:* UTF-8 문자열입니다.

  지정된 연결 유형에서 미리 보기 데이터를 쿼리하려는 엔터티의 이름입니다.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.
+ `DataStoreApiVersion` – 과(와) 일치하는 1\$1256바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #23](aws-glue-api-common.md#regex_23)

  SaaS 커넥터의 API 버전입니다.
+ `ConnectionOptions` – 100개 이하의 페어로 구성된 키-값 페어의 맵 배열입니다.

  각 키는 [Custom string pattern #18](aws-glue-api-common.md#regex_18)과(와) 일치하는 1\$1256바이트 길이의 UTF-8 문자열입니다.

  각 값은 [Custom string pattern #17](aws-glue-api-common.md#regex_17)과(와) 일치하는 1\$1256바이트 길이의 UTF-8 문자열입니다.

  데이터를 쿼리하는 데 필요한 커넥터 옵션입니다.
+ `FilterPredicate` – UTF-8 문자열입니다(1\$1100,000바이트).

  쿼리 요청에 적용할 수 있는 필터 조건자입니다.
+ `Limit` – *필수:* 1\$11,000의 숫자(long)입니다.

  요청으로 가져오는 레코드 수를 제한합니다.
+ `SelectedFields` – UTF-8 문자열의 배열입니다(1\$11,000개의 문자열).

   미리 보기 데이터의 일부로 가져오려는 필드 목록입니다.

**응답**
+ `Records` - 구조의 배열입니다.

  요청한 객체의 목록입니다.
+ `NextToken` – 과(와) 일치하는 1\$12,048바이트 길이의 UTF-8 문자열입니다..[Custom string pattern #11](aws-glue-api-common.md#regex_11)

  현재 세그먼트가 마지막이 아닌 경우 연속 토큰이 존재합니다.

**오류**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`