Agrupamentos do RDS para PostgreSQL para EBCDIC e outras migrações de mainframe
O RDS para PostgreSQL versões 10 e posteriores inclui a ICU versão 60.2, que é baseada no Unicode 10.0 e inclui agrupamentos do Unicode Common Locale Data Repository, CLDR 32. Essas bibliotecas de internacionalização de software garantem que as codificações de caracteres sejam apresentadas de forma consistente, independentemente do sistema operacional ou da plataforma. Para obter mais informações sobre o Unicode CLDR-32, consulte a “CLDR 32 Release Note”
A partir da versão 14.3, o RDS para PostgreSQL também inclui agrupamentos que ajudam na integração e conversão de dados de sistemas baseados em EBCDIC. O código de intercâmbio decimal codificado binário estendido ou codificação EBCDIC é comumente usada pelos sistemas operacionais de mainframe. Esses agrupamentos fornecidos pelo Amazon RDS são definidos de forma restrita para classificar somente os caracteres Unicode que são mapeados diretamente para páginas de código EBCDIC. Os caracteres são classificados em ordem de pontos de código EBCDIC para permitir a validação dos dados após a conversão. Esses agrupamentos não incluem formulários desnormalizados nem incluem caracteres Unicode que não são mapeados diretamente para um caractere na página de código EBCDIC de origem.
Os mapeamentos de caracteres entre páginas de código EBCDIC e pontos de código Unicode são baseados em tabelas publicadas pela IBM. O conjunto completo é disponibilizado pela IBM como um arquivo compactado
-
Unicode to EBCDIC collations table: algumas ferramentas de migração de dados de mainframe usam internamente LATIN1 ou LATIN9 para codificar e processar dados. Essas ferramentas usam esquemas de ida e volta para preservar a integridade dos dados e oferecer suporte à conversão reversa. Os agrupamentos nesta tabela podem ser usados por ferramentas que processam dados usando a codificação LATIN1, que não exige tratamento especial.
-
Unicode to LATIN9 collations table: você pode usar esses agrupamentos em qualquer banco de dados do RDS para PostgreSQL.
Na tabela a seguir, você encontra agrupamentos disponíveis no RDS para PostgreSQL que mapeiam páginas de código EBCDIC para pontos de código Unicode. Recomendamos usar os agrupamentos nesta tabela para o desenvolvimento de aplicações que exijam classificação com base na ordem das páginas de código da IBM.
Nome do agrupamento PostgreSQL | Descrição do mapeamento da página de código e ordem de classificação |
---|---|
da-DK-cp277-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 277 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 277 |
de-DE-cp273-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 273 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 273 |
en-GB-cp285-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 285 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 285 |
en-US-cp037-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 037 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 37 |
es-ES-cp284-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 284 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 284 |
fi-FI-cp278-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 278 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 278 |
fr-FR-cp297-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 297 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 297 |
it-IT-cp280-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 280 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 280 |
nl-BE-cp500-x-icu |
Os caracteres Unicode que são mapeados diretamente para a página de código IBM EBCDIC 500 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 500 |
O Amazon RDS fornece um conjunto de agrupamentos adicionais que classificam pontos de código Unicode mapeados para caracteres LATIN9 usando as tabelas publicadas pela IBM, na ordem dos pontos de código originais, de acordo com a página de código EBCDIC dos dados de origem.
Nome do agrupamento PostgreSQL | Descrição do mapeamento da página de código e ordem de classificação |
---|---|
da-DK-cp1142m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1142 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1142 |
de-DE-cp1141m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1141 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1141 |
en-GB-cp1146m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1146 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1146 |
en-US-cp1140m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1140 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1140 |
es-ES-cp1145m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1145 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1145 |
fi-FI-cp1143m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1143 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1143 |
fr-FR-cp1147m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1147 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1147 |
it-IT-cp1144m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1144 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1144 |
nl-BE-cp1148m-x-icu |
Caracteres Unicode mapeados para caracteres LATIN9 originalmente convertidos da página de código IBM EBCDIC 1148 (por tabelas de conversão) são classificados na ordem de pontos de código IBM CP 1148 |
A seguir, você pode encontrar um exemplo de como usar um agrupamento do RDS para 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
Recomendamos usar os agrupamentos na Unicode to EBCDIC collations table e na Unicode to LATIN9 collations table para desenvolvimento de aplicações que exijam classificação com base na ordenação das páginas de código da IBM. Os seguintes agrupamentos (com o sufixo “b”) também são visíveis em pg_collation
, mas são destinados ao uso por ferramentas de integração e migração de dados de mainframe em AWS que mapeiam páginas de código com mudanças específicas de pontos de código e exigem tratamento especial em agrupamento. Ou seja, o uso dos agrupamentos a seguir não é recomendado.
-
da-DK-277b-x-icu
-
da-DK-1142b-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
Para saber mais sobre a migração de aplicações de ambientes de mainframe para a AWS, consulte O que é o AWS Mainframe Modernization?
Para obter mais informações sobre como gerenciar agrupamentos no PostgreSQL, consulte “Collation Support”