PostgreSQL용 RDS 버전 10 이상에는 유니코드 10.0을 기반으로 하고 유니코드 공통 로케일 데이터 저리포지토리(CLDR 32)의 데이터 정렬이 포함된 ICU 버전 60.2가 포함되어 있습니다. 이러한 소프트웨어 국제화 라이브러리는 운영 체제나 플랫폼에 관계없이 문자 인코딩이 일관된 방식으로 표시되도록 합니다. 유니코드 CLDR-32에 대한 자세한 내용은 유니코드 CLDR 웹 사이트의 CLDR 32 릴리스 노트
14.3 버전부터 PostgreSQL용 RDS에는 EBCDIC 기반 시스템에서 데이터 통합 및 변환을 지원하는 데이터 정렬도 포함됩니다. 확장 이진 코딩 십진 교환 코드 또는 EBCDIC 인코딩은 일반적으로 메인프레임 운영 체제에서 사용됩니다. Amazon RDS에서 제공하는 이러한 데이터 정렬은 EBCDIC 코드 페이지에 직접 매핑되는 유니코드 문자만 정렬하도록 좁게 정의되어 있습니다. 문자는 변환 후 데이터 유효성 검사가 가능하도록 EBCDIC 코드 포인트 순서로 정렬됩니다. 이러한 데이터 정렬에는 비정규화된 형식이 포함되지 않으며 소스 EBCDIC 코드 페이지의 문자에 직접 매핑되지 않는 유니코드 문자도 포함되지 않습니다.
EBCDIC 코드 페이지와 유니코드 코드 포인트 간의 문자 매핑은 IBM에서 게시한 테이블을 기반으로 합니다. 전체 세트는 다운로드용 압축 파일
-
Unicode to EBCDIC collations table - 일부 메인프레임 데이터 마이그레이션 툴은 내부적으로 LATIN1 또는 LATIN9 을 사용하여 데이터를 인코딩하고 처리합니다. 이러한 도구는 왕복 방식을 사용하여 데이터 무결성을 유지하고 역변환을 지원합니다. 이 표의 데이터 정렬은 특별한 처리가 필요하지 않은 LATIN1 인코딩을 사용하여 데이터를 처리하는 도구에서 사용할 수 있습니다.
-
Unicode to LATIN9 collations table - 모든 RDS for PostgreSQL 데이터베이스에서 이러한 데이터 정렬을 사용할 수 있습니다.
다음 표에는 EBCDIC 코드 페이지를 유니코드 코드 포인트에 매핑하는 RDS for PostgreSQL에서 사용할 수 있는 데이터 정렬이 나와 있습니다. IBM 코드 페이지의 순서를 기준으로 정렬해야 하는 애플리케이션 개발에는 이 테이블의 데이터 정렬을 사용하는 것이 좋습니다.
PostgreSQL 데이터 정렬 이름 | 코드 페이지 매핑 및 정렬 순서에 대한 설명 |
---|---|
da-DK-cp277-x-icu |
IBM EBCDIC 코드 페이지 277에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 277 코드 포인트 순서로 정렬됩니다. |
de-DE-cp273-x-icu |
IBM EBCDIC 코드 페이지 273에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 273 코드 포인트 순서로 정렬됩니다. |
en-GB-cp285-x-icu |
IBM EBCDIC 코드 페이지 285에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 285 코드 포인트 순서로 정렬됩니다. |
en-US-cp037-x-icu |
IBM EBCDIC 코드 페이지 037에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 37 코드 포인트 순서로 정렬됩니다. |
es-ES-cp284-x-icu |
IBM EBCDIC 코드 페이지 284에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 284 코드 포인트 순서로 정렬됩니다. |
fi-FI-cp278-x-icu |
IBM EBCDIC 코드 페이지 278에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 278 코드 포인트 순서로 정렬됩니다. |
fr-FR-cp297-x-icu |
IBM EBCDIC 코드 페이지 297에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 297 코드 포인트 순서로 정렬됩니다. |
it-IT-cp280-x-icu |
IBM EBCDIC 코드 페이지 280에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 280 코드 포인트 순서로 정렬됩니다. |
nl-BE-cp500-x-icu |
IBM EBCDIC 코드 페이지 500에 직접 매핑되는 유니코드 문자(변환 테이블당)는 IBM CP 500 코드 포인트 순서로 정렬됩니다. |
Amazon RDS는 소스 데이터의 EBCDIC 코드 페이지에 따라 원래 코드 포인트의 순서로 IBM에서 게시한 테이블을 사용하여 LATIN9 문자에 매핑되는 유니코드 코드 포인트를 정렬하는 추가 데이터 정렬 세트를 제공합니다.
PostgreSQL 데이터 정렬 이름 | 코드 페이지 매핑 및 정렬 순서에 대한 설명 |
---|---|
da-DK-cp1142b-x-icu |
IBM EBCDIC 코드 페이지 1142(변환 테이블당)에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1142 코드 포인트 순서로 정렬됩니다. |
de-DE-cp1141m-x-icu |
IBM EBCDIC 코드 페이지 1141(변환 테이블당)에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1141 코드 포인트 순서로 정렬됩니다. |
en-GB-cp1146m-x-icu |
IBM EBCDIC 코드 페이지 1146(변환 테이블당)에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1146 코드 포인트 순서로 정렬됩니다. |
en-US-cp1140m-x-icu |
IBM EBCDIC 코드 페이지 1140(변환 테이블당)에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1140 코드 포인트 순서로 정렬됩니다. |
es-ES-cp1145m-x-icu |
IBM EBCDIC 코드 페이지 1145(변환 테이블당)에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1145 코드 포인트 순서로 정렬됩니다. |
fi-FI-cp1143m-x-icu |
IBM EBCDIC 코드 페이지 1143(변환 테이블당) 에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1143 코드 포인트 순서로 정렬됩니다. |
fr-FR-cp1147m-x-icu |
IBM EBCDIC 코드 페이지 1147(변환 테이블당) 에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1147 코드 포인트 순서로 정렬됩니다. |
it-IT-cp1144m-x-icu |
IBM EBCDIC 코드 페이지 1144(변환 테이블당) 에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1144 코드 포인트 순서로 정렬됩니다. |
nl-BE-cp1148m-x-icu |
IBM EBCDIC 코드 페이지 1148(변환 테이블당) 에서 원래 변환된 LATIN9 문자에 매핑되는 유니코드 문자는 IBM CP 1148 코드 포인트 순서로 정렬됩니다. |
RDS for PostgreSQL 데이터 정렬 사용 예를 찾아볼 수 있습니다.
db1=>
SELECT pg_import_system_collations('pg_catalog');pg_import_system_collations ----------------------------- 36
db1=>
SELECT '¤' < 'a' col1;col1 ------ t
db1=>
SELECT '¤' < 'a' COLLATE "da-DK-cp277-x-icu" col1;col1 ------ f
IBM 코드 페이지의 순서를 기반으로 정렬해야 하는 애플리케이션 개발의 경우 Unicode to EBCDIC collations table 및 Unicode to LATIN9 collations table의 데이터 정렬을 사용하는 것이 좋습니다. 다음 데이터 정렬(문자 "b" 접미사)도 pg_collation
에서 볼 수 있지만 특정 코드 포인트 이동이 있는 코드 페이지를 매핑하고 데이터 정렬에서 특별한 처리가 필요한 AWS의 메인프레임 데이터 통합 및 마이그레이션 도구에서 사용하기 위한 것입니다. 즉, 다음과 같은 데이터 정렬 데이터 정렬 방식은 권장되지 않습니다.
-
da-DK-cp1142b-x-icu
-
da-DK-cp1142b-x-icu
-
de-DE-cp273b-x-icu
-
de-DE-cp1141b-x-icu
-
en-GB-cp1146b-x-icu
-
en-GB-cp285b-x-icu
-
en-US-cp037b-x-icu
-
en-US-cp1140b-x-icu
-
es-ES-cp1145b-x-icu
-
es-ES-cp284b-x-icu
-
fi-FI-cp1143b-x-icu
-
fr-FR-cp1147b-x-icu
-
fr-FR-cp297b-x-icu
-
it-IT-cp1144b-x-icu
-
it-IT-cp280b-x-icu
-
nl-BE-cp1148b-x-icu
-
nl-BE-cp500b-x-icu
메인프레임 환경에서 AWS로 애플리케이션을 마이그레이션하는 방법에 대한 자세한 내용은 AWS Mainframe Modernization 무엇입니까?를 참조하세요.
PostgreSQL의 데이터 정렬에 대한 자세한 내용은 PostgreSQL 설명서의 데이터 정렬 지원