연결 메타데이터 및 미리 보기 API - AWS Glue

연결 메타데이터 및 미리 보기 API

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

데이터 타입

Entity 구조

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

필드
  • EntityName – UTF-8 문자열입니다.

    개체의 이름입니다.

  • Label – UTF-8 문자열입니다.

    엔터티에 사용되는 레이블입니다.

  • IsParentEntity – 부울입니다.

    나열할 수 있는 하위 객체가 있는지 확인하는 데 도움이 되는 부울 값입니다.

  • Description – UTF-8 문자열입니다.

    엔터티에 대한 설명입니다.

  • Category – UTF-8 문자열입니다.

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

  • CustomProperties – 키-값 페어의 맵 배열입니다.

    각 키는 UTF-8 문자열입니다.

    각 값은 UTF-8 문자열입니다.

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

Field 구조

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

필드
  • FieldName – UTF-8 문자열입니다.

    필드의 고유 식별자입니다.

  • Label – UTF-8 문자열입니다.

    필드에 사용되는 읽기 가능한 레이블입니다.

  • Description – UTF-8 문자열입니다.

    필드에 대한 설명입니다.

  • FieldType – UTF-8 문자열입니다(유효한 값: INT | SMALLINT | BIGINT | FLOAT | LONG | DATE | BOOLEAN | MAP | ARRAY | STRING | TIMESTAMP | DECIMAL | BYTE | SHORT | DOUBLE | STRUCT).

    필드의 데이터 유형입니다.

  • IsPrimaryKey – 부울입니다.

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

  • IsNullable – 부울입니다.

    이 필드에 null 값이 허용되는지 여부를 나타냅니다.

  • IsRetrievable – 부울입니다.

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

  • IsFilterable – 부울입니다.

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

  • IsPartitionable – 부울입니다.

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

  • IsCreateable – 부울입니다.

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

  • IsUpdateable – 부울입니다.

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

  • IsUpsertable – 부울입니다.

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

  • IsDefaultOnCreate – 부울입니다.

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

  • SupportedValues – UTF-8 문자열의 배열입니다.

    필드의 지원되는 값 목록입니다.

  • SupportedFilterOperators – UTF-8 문자열의 배열입니다.

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

  • CustomProperties – 키-값 페어의 맵 배열입니다.

    각 키는 UTF-8 문자열입니다.

    각 값은 UTF-8 문자열입니다.

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

운영

ListEntities 작업(Python: list_entities)

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

요청
  • ConnectionNameSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    모든 연결 유형을 쿼리하는 데 필요한 자격 증명이 있는 연결의 이름입니다.

  • CatalogIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.

    연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.

  • ParentEntityName – UTF-8 문자열입니다.

    하위 항목을 나열하려는 상위 엔터티의 이름입니다. 이 파라미터는 하위 엔터티를 나열하기 위해 엔터티의 정규화된 경로를 사용합니다.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

    이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.

  • DataStoreApiVersionCustom string pattern #23과(와) 일치하는 1~256바이트 길이의 UTF-8 문자열입니다.

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

응답
  • Entities개체 객체의 배열입니다.

    Entity 객체의 목록.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

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

오류
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException

DescribeEntity 작업(Python: describe_entity)

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

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

요청
  • ConnectionName필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    연결 유형 자격 증명이 포함된 연결의 이름입니다.

  • CatalogIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.

    연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.

  • EntityName필수: UTF-8 문자열입니다.

    연결 유형에서 설명할 엔터티의 이름입니다.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

    이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.

  • DataStoreApiVersionCustom string pattern #23과(와) 일치하는 1~256바이트 길이의 UTF-8 문자열입니다.

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

응답
  • Fields필드 객체의 배열입니다.

    해당 커넥터 엔터티의 필드를 설명합니다. Field 객체의 목록입니다. Field는 데이터베이스의 열과 매우 유사합니다. Field 객체에는 커넥터의 필드와 연결된 다양한 속성에 대한 정보가 있습니다.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

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

오류
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException

GetEntityRecords 작업(Python: get_entity_records)

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

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

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

요청
  • ConnectionNameSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.

    연결 유형 자격 증명이 포함된 연결의 이름입니다.

  • CatalogIdSingle-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.

    연결이 포함된 카탈로그의 카탈로그 ID입니다. 이 값은 null일 수 있습니다. 기본적으로 AWS 계정 ID는 카탈로그 ID입니다.

  • EntityName필수: UTF-8 문자열입니다.

    지정된 연결 유형에서 미리 보기 데이터를 쿼리하려는 엔터티의 이름입니다.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

    이것이 지속적으로 호출되면 지속적인 토큰을 포함합니다.

  • DataStoreApiVersionCustom string pattern #23과(와) 일치하는 1~256바이트 길이의 UTF-8 문자열입니다.

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

  • ConnectionOptions – 100개 이하의 페어로 구성된 키-값 페어의 맵 배열입니다.

    각 키는 Custom string pattern #18과(와) 일치하는 1~256바이트 길이의 UTF-8 문자열입니다.

    각 값은 Custom string pattern #17과(와) 일치하는 1~256바이트 길이의 UTF-8 문자열입니다.

    데이터를 쿼리하는 데 필요한 커넥터 옵션입니다.

  • FilterPredicate – UTF-8 문자열입니다(1~100,000바이트).

    쿼리 요청에 적용할 수 있는 필터 조건자입니다.

  • Limit필수: 1~1,000의 숫자(long)입니다.

    요청으로 가져오는 레코드 수를 제한합니다.

  • OrderBy – UTF-8 문자열입니다.

    응답 미리 보기 데이터의 순서를 지정하는 파라미터입니다.

  • SelectedFields – UTF-8 문자열의 배열입니다(1~1,000개의 문자열).

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

응답
  • Records - 구조의 배열입니다.

    요청한 객체의 목록입니다.

  • NextTokenCustom string pattern #11과(와) 일치하는 1~2,048바이트 길이의 UTF-8 문자열입니다.

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

오류
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException