O Apache Paimon é um formato de armazenamento lakehouse que unifica o processamento de dados em streaming e em lote. Baseado na tecnologia LSM (log-structured merge-tree), o Paimon oferece semântica de atualização em tempo real na camada de lake, com leituras consistentes e alto throughput. Use tabelas Paimon no Realtime Compute for Apache Flink para criar um lakehouse de streaming em armazenamentos em nuvem, como o Object Storage Service (OSS).
O Paimon integra-se ao Apache Flink para processamento de stream e ao Apache Spark para processamento em lote por meio de um único formato de armazenamento. Principais recursos:
Ingestão de dados em tempo real: Ingira dezenas de milhões de registros de streams de alteração de banco de dados, como MySQL CDC, com sincronização automática de mudanças de schema e baixa latência.
Processamento unificado de stream e lote: Leia a mesma tabela Paimon como fonte de lote delimitada no Spark ou como stream de changelog ilimitado no Flink, sem conversão de formato.
Ampla integração com o ecossistema: Conecte tabelas Paimon ao Realtime Compute for Apache Flink, E-MapReduce (Spark, StarRocks, Hive e Trino) e MaxCompute sem duplicar dados.
Consultas OLAP de baixa latência: Vetores de exclusão e índices de chave primária mantêm a latência das consultas no nível de minutos para cargas de trabalho de streaming, lote e processamento analítico online (OLAP).
Para a especificação completa, consulte Apache Paimon.
Uso
Primeiros passos com o Paimon
Comece pelos conceitos fundamentais e operações básicas antes de construir pipelines de produção. Para mais informações, consulte Início rápido do Paimon: Recursos básicos.
Escolha o tipo de tabela adequado à sua carga de trabalho: use tabelas de chave primária quando os dados exigirem inserções, atualizações ou exclusões em streaming; use tabelas apenas de anexação (sem chaves primárias) para cargas de trabalho somente de inserção, como sincronização de logs.
Para entender como o Paimon mantém a atualidade e a consistência dos dados entre snapshots, consulte Latência e consistência de dados.
Para obter um guia passo a passo sobre como construir um lakehouse de streaming de ponta a ponta, consulte Lakehouse de streaming com Paimon e StarRocks.
Criar um catálogo Paimon
Um catálogo Paimon funciona como registro centralizado para tabelas Paimon armazenadas em sistemas externos, como o OSS. Outros serviços da Alibaba Cloud acessam as tabelas por meio desse mesmo catálogo. Configure um catálogo das seguintes formas:
Crie e use um catálogo Paimon. Para mais informações, consulte Gerenciar catálogos Paimon.
Sincronize os metadados da tabela Paimon com o Data Lake Formation (DLF). Para mais informações, consulte Criar um catálogo DLF.
Crie uma tabela externa Paimon no MaxCompute para consultar dados Paimon diretamente no MaxCompute. Para mais informações, consulte Criar um catálogo MaxCompute.
Sincronize metadados com o DLF e crie simultaneamente uma tabela externa Paimon no MaxCompute. Para mais informações, consulte Criar um catálogo de sincronização Paimon.
Criar uma tabela Paimon
Crie uma tabela diretamente em um catálogo Paimon. Para mais informações, consulte Gerenciar tabelas.
Crie uma tabela Paimon sincronizando dados de fontes externas, como MySQL e Apache Kafka, usando a instrução CREATE TABLE AS (CTAS) ou a instrução CREATE DATABASE AS (CDAS). Para mais informações, consulte Criar uma tabela usando CTAS ou CDAS.
Gravar dados em uma tabela Paimon
Insira ou atualize registros em uma tabela Paimon. Para mais informações, consulte Gravar dados em uma tabela Paimon.
Faça join de uma tabela Paimon com outras tabelas e aplique funções de agregação. Para mais informações, consulte Mecanismos de mesclagem.
Sobrescreva parcial ou totalmente uma tabela Paimon. Para mais informações, consulte Sobrescrever dados com INSERT OVERWRITE.
Exclua linhas de uma tabela Paimon. Para mais informações, consulte Excluir dados usando DELETE.
Remova partições de uma tabela Paimon. Para mais informações, consulte Modificar o schema de uma tabela.
Consumir dados de uma tabela Paimon
Consulte ou consuma dados de uma tabela Paimon nos modos batch ou streaming. Para mais informações, consulte Consumir dados de uma tabela Paimon. Para consumir dados de uma tabela de chave primária em modo streaming, configure primeiro o produtor de changelog.
Configure o offset de consumo de uma tabela Paimon. Para mais informações, consulte Consumir dados a partir de um offset específico.
Salve o offset de consumo de uma tabela Paimon ou retenha arquivos de snapshot expirados ainda referenciados por consumidores ativos. Para mais informações, consulte Especificar um ID de consumidor.
Execute um job em lote para ler o estado histórico de uma tabela Paimon a partir de um snapshot específico. Para mais informações, consulte Time travel em lote.
Manter uma tabela Paimon
Solucione problemas comuns relacionados ao Paimon. Para mais informações, consulte Conectores.
Otimize o desempenho de leitura e gravação das tabelas Paimon. Para mais informações, consulte Ajuste de desempenho para tabelas Paimon.
Inspecione metadados da tabela, como a lista de partições e o tamanho de arquivo por partição. Para mais informações, consulte Tabelas de sistema do Paimon.
Modifique o schema de uma tabela em um catálogo Paimon. Para mais informações, consulte Modificar o schema de uma tabela.
Remova uma tabela de um catálogo Paimon. Para mais informações, consulte Excluir uma tabela.
Redimensione o número de buckets de uma tabela Paimon no modo de bucket fixo. Para mais informações, consulte Alterar o número de buckets no modo de bucket fixo.
Limpe arquivos obsoletos do diretório de uma tabela Paimon. Para mais informações, consulte Limpar dados expirados.