O Hologres integra-se ao MaxCompute para oferecer acesso bidirecional ao armazenamento e mapeamento de metadados com um clique em, acelerando a leitura e a gravação de dados.
Contexto
O MaxCompute é um data warehouse totalmente gerenciado, em escala de exabytes, destinado ao armazenamento em lote e à computação de dados estruturados. Para mais informações, consulte O que é o MaxCompute?.
O Hologres é um data warehouse em tempo real projetado para gravar, atualizar, processar e analisar grandes volumes de dados. Ele consulta dados do MaxCompute diretamente por meio de bancos de dados externos e tabelas externas, sem necessidade de importação, e conecta-se às principais ferramentas de BI via protocolo PostgreSQL. Para mais informações, consulte Hologres + BI.
-
A partir do Hologres V3.1, a capacidade de leitura direta foi atualizada para a versão 2,0, reconstruída sobre o sdk Nativo C++ do MaxCompute. Essa versão lê diretamente do Apsara Distributed File System, eliminando custos computacionais e limitações de taxa no lado do MaxCompute, oferecendo desempenho de leitura superior ao dobro do método da Storage api.
NotaPara usar o novo caminho de roteamento, adicione o seguinte GUC no nível da sessão. Insira o comando
SET hg_experimental_external_catalog_routing = 'odps:common_table';antes da consulta SQL e execute ambos juntos.
Cenários
Consultar dados do MaxCompute com bancos de dados externos ou tabelas externas
Bancos de dados externos e tabelas externas eliminam a movimentação de dados, permitindo que um único sistema de armazenamento suporte fluxos de trabalho de computação offline e em tempo real.
Execute a instrução CREATE EXTERNAL DATABASE para crie um banco de dados externo que mapeie schemas e tabelas em um projeto do MaxCompute. Use a instrução IMPORT FOREIGN SCHEMA para crie várias tabelas externas simultaneamente. Para acelerar consultas em tabelas ou campos específicos do MaxCompute, execute a instrução CREATE FOREIGN TABLE.
A partir do Hologres V3.0, os limites de varredura de 200 GB e 512 partições por consulta de tabela externa foram removidos. Consultas extensas consomem mais recursos. Isole-as usando Introdução às instâncias de virtual warehouse ou Visão geral do Serverless Computing.
Importar dados do MaxCompute para o Hologres
Importe dados para o Hologres para aproveitar a indexação e a otimização de armazenamento em análises de BI em tempo real, consultas pontuais de alta concorrência e junções de múltiplas tabelas. Para mais informações, consulte Importar dados do MaxCompute usando SQL.
Exportar dados do Hologres para o MaxCompute
Grave dados em tempo real e resultados agregados de volta no MaxCompute para arquivamento histórico, armazenamento em camadas (hot-cold) ou reabastecimento do warehouse offline, usando INSERT INTO ou INSERT OVERWRITE. Para mais informações, consulte Exportar dados para o MaxCompute.
Recursos
Capacidades de aceleração do MaxCompute por versão do Hologres:
|
Versão do Hologres |
Recurso compatível |
Descrição |
|
V3.1 |
Atualização da capacidade de leitura direta para a versão 2,0, reconstruída sobre o sdk Nativo C++ do MaxCompute para melhorar o desempenho e a experiência do usuário. |
A versão 2,0 lê diretamente do Apsara Distributed File System, eliminando custos computacionais e limitações de taxa no lado do MaxCompute. O desempenho de leitura supera em mais de duas vezes o método da Storage api. |
|
Leitura direta de dados de tabelas Delta do MaxCompute. Há compatibilidade apenas com acesso completo ao snapshot mais recente. |
Tabelas Delta são um formato de dados incrementais no MaxCompute compatível com ingestão no nível de minutos, semântica UPSERT e leituras/escritas incrementais no formato CDC usando AliORC. Para mais informações, consulte Acessar tabelas Delta do MaxCompute. |
|
|
Leitura direta de dados do MaxCompute com mascaramento dinâmico de dados ativado. |
O mascaramento dinâmico de dados oculta ou substitui dados sensíveis em tempo real durante o acesso. Para mais informações, consulte Mascaramento dinâmico de dados. |
|
|
Leitura direta de tabelas com Evolução de Schema do MaxCompute. |
Operações compatíveis: adição de colunas, exclusão de colunas, modificação de tipos de coluna e reordenação de colunas. |
|
|
Leitura direta de tabelas clusterizadas do MaxCompute, incluindo tabelas com cluster de intervalo (range-clustered) que possuem colunas de cluster DATETIME, TIMESTAMP ou DECIMAL. |
Nenhuma. |
|
|
V3.0.7 |
Compatibilidade com a instrução CREATE EXTERNAL DATABASE para mapear schemas e tabelas em um projeto do MaxCompute. |
Crie um banco de dados externo para carregar metadados de fontes de dados externas no Hologres, permitindo o gerenciamento centralizado de metadados com a arquitetura lakehouse. Para mais informações, consulte CREATE EXTERNAL DATABASE. |
|
Remoção dos limites de varredura de 200 GB e 512 partições por consulta de tabela externa. |
Use instâncias de virtual warehouse ou Serverless Computing para isolar consultas extensas de outras cargas de trabalho. |
|
|
V2.2.1 |
O recurso Auto Load oferece compatibilidade com projetos do MaxCompute que usam o modelo de três camadas. |
Os schemas do MaxCompute classificam tabelas, recursos e funções dentro de um projeto. Para mais informações sobre schemas, consulte Schema. Para mais informações sobre o Auto Load, consulte Carregar tabelas externas automaticamente. |
|
O recurso Auto Load oferece compatibilidade com atualizações automáticas de metadados. |
Nenhuma. |
|
|
O recurso Auto Load oferece compatibilidade com evolução de schema em tabelas externas do MaxCompute. |
A evolução de schema inclui exclusão de colunas, reordenação de colunas e alteração de tipos de dados das colunas. Para mais informações, consulte Carregar tabelas externas automaticamente. |
|
|
Compatibilidade com função vinculada ao serviço do Hologres para acessar o MaxCompute. |
Uma função vinculada ao serviço é uma função do RAM que permite acesso autorizado entre serviços. Para mais informações, consulte Função vinculada ao serviço para Hologres. |
|
|
V2.1 |
Gravação de dados em tabelas dentro de um schema especificado em projetos do MaxCompute com modelo de três camadas. |
Os schemas do MaxCompute classificam tabelas, recursos e funções em um projeto. Para mais informações, consulte Schema. |
|
Acesso a tabelas em um schema específico do modelo de três camadas do MaxCompute pelo console HoloWeb. |
Para mais informações, consulte Criar uma tabela externa do MaxCompute no HoloWeb. |
|
|
V2.0 |
Motor de consulta atualizado para Hologres Query Engine (HQE), proporcionando maior compatibilidade e estabilidade. |
Nenhuma. |
|
V1.3 |
Consultas via tabela externa em tabelas transacionais do MaxCompute. |
Nenhuma. |
|
Leitura de dados de tabelas do MaxCompute em estado de evolução de schema. |
Uma tabela encontra-se em estado de evolução de schema quando colunas são excluídas, reordenadas ou têm seus tipos de dados alterados. |
|
|
Autenticação de assinatura dupla entre Hologres e MaxCompute. |
Para mais informações, consulte Tabelas externas do Hologres. |
|
|
Acesso a tabelas do MaxCompute criptografadas com Bring Your Own Key (BYOK). |
Para mais informações, consulte Consultar dados criptografados do MaxCompute. |
|
|
V1.1.43 |
Compatibilidade com o recurso Auto Load. Tabelas externas são criadas automaticamente para tabelas consultadas do MaxCompute ou para todas as tabelas, conforme necessário. |
Para mais informações, consulte Carregar tabelas externas automaticamente. |
Limites
Limites para o uso de bancos de dados externos ou tabelas externas na aceleração de consultas do MaxCompute:
A instância do Hologres deve estar na mesma região do projeto do MaxCompute.
Há compatibilidade apenas com tabelas internas do MaxCompute. Tabelas externas e views não são compatíveis.
Campos de partição do MaxCompute são mapeados como campos comuns do Hologres e podem ser usados como condições de filtro.
Não há compatibilidade com os tipos de dados MAP e STRUCT.
Não há compatibilidade com tabelas com cluster de intervalo (range-clustered) que possuam colunas de chave de cluster DATETIME, TIMESTAMP ou DECIMAL.
Há compatibilidade apenas com o armazenamento padrão. Armazenamento de acesso infrequente (IA) e armazenamento de longo prazo não são compatíveis.