Amazon Athena의 데이터 형식
CREATE TABLE
을 실행할 때 각 열에 포함할 수 있는 열 이름과 데이터 형식을 지정합니다. 생성한 테이블은 AWS Glue Data Catalog에 저장됩니다.
다른 쿼리 엔진과의 상호 운용성을 높이기 위해 Athena는 CREATE TABLE
과 같은 DDL 문에 Apache HiveSELECT
, CTAS
, INSERT INTO
등과 같은 DML 쿼리의 경우 Athena는 Trino
DDL | DML | 설명 |
---|---|---|
BOOLEAN | 값은 true 및 false 입니다. |
|
TINYINT | 2의 보수 형식의 부호 있는 8비트 정수로, 최솟값은 -27, 최댓값은 27-1입니다. | |
SMALLINT | 2의 보수 형식의 부호 있는 16비트 정수로, 최솟값은 -215, 최댓값은 215-1입니다. | |
INT, INTEGER | 2의 보수 형식의 부호 있는 32비트 값으로, 최솟값은 -231, 최댓값은 231-1입니다. | |
BIGINT | 2의 보수 형식의 부호 있는 64비트 정수로, 최솟값은 -263, 최댓값은 263-1입니다. | |
FLOAT | REAL | 32비트 부호 포함 단정밀도 부동 소수점 숫자입니다. 범위는 1.40129846432481707e-45에서 3.40282346638528860e+38로, 양수 또는 음수입니다. 부동 소수점 산술에 대한 IEEE 표준(IEEE 754)을 따릅니다. |
DOUBLE | 64비트 부호 포함 배정밀도 부동 소수점 숫자입니다. 범위는 4.94065645841246544e-324d에서 1.79769313486231570e+308d로, 양수 또는 음수입니다. 부동 소수점 산술에 대한 IEEE 표준(IEEE 754)을 따릅니다. | |
DECIMAL(precision , scale ) |
은 총 자릿수이고, (선택 사항)은 소수부의 자릿수이며, 기본값은 0입니다. 예를 들어 decimal(11,5) , decimal(15) 형식 정의를 사용합니다. precision 최대값은 38이고, scale 최대값은 38입니다. |
|
CHAR, CHAR(length ) |
길이가 1~255자로 지정된 고정 길이 문자 데이터입니다(예: char(10)). 자세한 내용은 CHAR Hive 데이터 형식 |
|
STRING | VARCHAR | 가변 길이 문자 데이터. |
VARCHAR(length ) |
최대 읽기 길이를 가진 가변 길이 문자 데이터. 읽을 때 문자열이 지정된 길이만큼 잘립니다. 기본 데이터 문자열이 더 긴 경우 기본 데이터 문자열은 변경되지 않습니다. | |
BINARY | VARBINARY | 가변 길이 이진 데이터. |
TIME | 밀리초 단위의 정밀도의 하루 중 시간. | |
사용할 수 없음 | TIME(precision ) |
특정 정밀도의 하루 중 시간. TIME(3) 은 TIME 과 동일합니다. |
사용할 수 없음 | TIME WITH TIME ZONE | 시간대의 하루 중 시간. 시간대는 UTC 기준 오프셋으로 지정되어야 합니다. |
날짜 | 년, 월, 일 단위로 구성된 달력 날짜. | |
TIMESTAMP | TIMESTAMP, TIMESTAMP WITHOUT TIME ZONE | 밀리초 단위의 정밀도의 달력 날짜와 하루 중 시간. |
사용할 수 없음 | TIMESTAMP(precision ), TIMESTAMP(precision ) WITHOUT TIME ZONE |
특정 정밀도의 달력 날짜 및 하루 중 시간. TIMESTAMP(3) 은 TIMESTAMP 과 동일합니다. |
사용할 수 없음 | TIMESTAMP(시간대 사용) | 시간대의 달력 날짜 및 하루 중 시간. 시간대는 UTC로부터의 오프셋, IANA 시간대 이름 또는 UTC, UT, Z 또는 GMT를 사용하여 지정될 수 있습니다. |
사용할 수 없음 | TIMESTAMP(precision ) WITH TIME ZONE |
시간대에서 특정 정밀도의 달력 날짜 및 하루 중 시간입니다. |
사용할 수 없음 | INTERVAL YEAR TO MONTH | 하나 이상의 달 간격 |
사용할 수 없음 | INTERVAL DAY TO SECOND | 하나 이상의 초, 분, 시간 또는 일 간격 |
ARRAY<element_type > |
ARRAY[element_type ] |
값으로 구성된 배열. 모든 값은 동일한 데이터 형식이어야 합니다. |
MAP<key_type , value_type > |
MAP(key_type , value_type ) |
키로 값을 조회할 수 있는 맵입니다. 모든 키가 동일한 데이터 형식이고 모든 값이 동일한 데이터 형식이어야 합니다. 예: map<string, integer> . |
STRUCT<field_name_1 :field_type_1 , field_name_2 :field_type_2 , …> |
ROW(field_name_1 field_type_1 , field_name_2 field_type_2 , …) |
이름이 지정된 필드와 값이 포함된 데이터 구조입니다. |
사용할 수 없음 | JSON | JSON 값 유형은 JSON 객체, JSON 배열, JSON 번호, JSON 문자열, true , false 또는 null 가 될 수 있습니다. |
사용할 수 없음 | UUID | UUID(범용 고유 식별자). |
사용할 수 없음 | IPADDRESS | IPv4 주소 또는 IPv6 주소. |
사용할 수 없음 | HyperLogLog |
이러한 데이터 유형은 대략적인 함수 내부를 지원합니다. 각 유형에 대한 자세한 내용은 Trino 설명서의 해당 항목을 참조하세요. |
P4HyperLogLog |
||
SetDigest |
||
QDigest |
||
TDigest |