Todos os produtos
Search
Central de documentação

PolarDB:Ative o X-Engine

Última atualização: Sep 08, 2026

Este tópico descreve como ativar a X-Engine Edition, além das condições e precauções para o processo de ativação.

Pré-requisitos

  • A Engine version deve atender aos seguintes requisitos:

    • 8.0.1.1.31 ou posterior.

    • 8.0.2.2.12 ou posterior.

    Consulte Checking the engine version para verificar a versão do cluster.

  • O Multi-master Cluster (Limitless) não oferece suporte à ativação da X-Engine Edition.

  • O nó de leitura e gravação (RW) do cluster deve ter especificação de pelo menos 8 GB, e os nós somente leitura (RO) devem ter especificações iguais ou superiores às do nó RW.

  • O cluster não faz parte de uma Global Database Network (GDN).

Observações de uso

  • A X-Engine Edition apresenta limitações em recursos do mecanismo e em transações grandes.

    Limitations

    Limitações de recursos do mecanismo

    Categoria

    Recurso

    Descrição

    Recursos SQL

    foreign key

    Sem suporte

    temporary table

    Sem suporte

    generated column

    Sem suporte

    handler API

    Sem suporte

    Colunas e propriedades de colunas

    Número máximo de colunas por tabela

    10.000

    Comprimento máximo do registro

    256 MB

    Tipo de dados GIS

    O X-Engine não oferece suporte a tipos de dados relacionados a GIS, incluindo geometry, point, linestring, polygon, multipoint, multilinestring, multipolygon e geometrycollection.

    Índice

    hash index

    Sem suporte

    spatial index

    Sem suporte. Recursos para índices de texto completo também não têm suporte.

    Transação

    Nível de isolamento de transação

    Dois níveis de isolamento têm suporte:

    • Read committed (RC)

    • Repeatable read (RR)

    Máximo de linhas por transação

    Por padrão, uma única transação pode conter até 100.000 linhas. Altere esse limite usando o parâmetro loose_xengine_bulk_load_size.

    savepoint

    Sem suporte

    Transação XA

    Transações XA internas têm suporte.

    Bloqueio

    Granularidade de bloqueio

    • Bloqueios no nível de tabela e no nível de linha têm suporte.

    • Gap locks não têm suporte.

    Skip Locked

    Sem suporte

    Lock Nowait

    Sem suporte

    Conjunto de caracteres

    Conjuntos de caracteres com suporte para colunas não indexadas

    Todos os conjuntos de caracteres e collations têm suporte para colunas não indexadas.

    Conjuntos de caracteres com suporte para colunas indexadas

    • latin1 (latin1_bin)

    • gbk (gbk_chinese_ci, gbk_bin)

    • utf8 (utf8_general_ci, utf8_bin, utf8_unicode_ci)

    • utf8mb4 (utf8mb4_0900_ai_ci, utf8mb4_general_ci, utf8mb4_bin, utf8mb4_unicode_ci)

    Replicação primária/secundária

    Formato de binary log

    Três formatos têm suporte:

    • stmt

    • row

    • mixed

    Nota

    O formato padrão é row. O uso dos formatos stmt ou mixed pode comprometer a segurança dos dados em cenários específicos de alta concorrência.

    Nota

    Para quaisquer recursos não listados neste tópico, o X-Engine se comporta de maneira idêntica ao InnoDB.

    Limitações de transações grandes

    O X-Engine não oferece suporte a transações grandes. Quando uma transação modifica 10.000 linhas ou mais, o X-Engine ativa o recurso commit in middle. Esse recurso faz com que o X-Engine confirme internamente a transação atual e inicie uma nova subtransação para continuar a operação. No entanto, o commit in middle não garante estritamente a atomicidade transacional. Observe as seguintes implicações:

    • Se você iniciar uma transação para inserir um grande volume de dados, o recurso commit in middle poderá confirmar parte dos dados antes da conclusão da transação. Esses dados parcialmente confirmados tornam-se visíveis para outras transações simultâneas.

    • Não é possível reverter completamente uma transação que o recurso commit in middle tenha confirmado parcialmente.

      DROP TABLE t1;
      CREATE TABLE t1(c1 int primary key , c2 int)ENGINE=xengine;
      BEGIN;
      call insert_data(12000); // Insert 12,000 rows to trigger commit in middle. The first 10,000 rows are committed.
      rollback;// The rollback operation can only undo the last 2,000 rows.
      SELECT COUNT(*) FROM t1; // The query still finds the 10,000 committed rows.
      +----------+
      | COUNT(*) |
      +----------+
      |    10000 |
      +----------+
      1 row in set (0.00 sec)
    • Devido ao recurso commit in middle, se uma transação inserir e depois excluir um grande número de linhas, a operação DELETE poderá não visualizar as linhas recém-inseridas.

      DROP TABLE t1;
      CREATE TABLE t1(c1 int primary key , c2 int)ENGINE=xengine;
      call insert_data(10000);
      BEGIN;
      INSERT INTO t1 VALUES(10001,10001), (10002,10002);
      DELETE FROM t1 WHERE c1 >= 0; // The DELETE operation triggers commit in middle, causing it to miss the rows inserted within the same transaction.
      commit;
      SELECT * FROM t1;
      +-------+-------+
      | c1    | c2    |
      +-------+-------+
      | 10001 | 10001 |
      | 10002 | 10002 |
      +-------+-------+
      2 rows in set (0.00 sec)
  • A ativação da X-Engine Edition reinicia automaticamente o cluster. Durante a reinicialização, podem ocorrer interrupções de conexão de até 30 segundos. Recomendamos realizar essa operação fora dos horários de pico e garantir que sua aplicação ofereça suporte à reconexão automática.

  • Após ativar a X-Engine Edition:

    • Para evitar exceções de acesso em tabelas já armazenadas na X-Engine Edition, este recurso não pode ser desativado.

    • Não há suporte para ingresso em uma Global Database Network (GDN).

Parâmetros

Depois de ativar a X-Engine Edition, caso precise arquivar partições de uma tabela particionada no formato X-Engine, defina manualmente os seguintes parâmetros de kernel na página Parameters do cluster. Para obter descrições completas dos parâmetros e limitações de uso de partições híbridas, consulte Crie uma partição híbrida.

Parâmetro

Nível

Descrição

loose_polar_allow_create_hybrid_partition

Global

Especifica se permite criar ou arquivar tabelas particionadas que contenham partições de mecanismos diferentes do InnoDB. Valores válidos:

  • OFF (padrão): A criação de tabelas particionadas contendo partições de mecanismos diferentes do InnoDB não é permitida. Todas as partições devem usar o mecanismo InnoDB.

  • ON (recomendado): A criação de tabelas particionadas contendo partições de mecanismos diferentes do InnoDB é permitida. Especifique o mecanismo X-Engine no nível da partição.

Nota

Os parâmetros acima se aplicam apenas a clusters da versão 8.0.2 com versão de revisão 8.0.2.2.34.1 ou posterior.

Procedimento

Ative o mecanismo de alta compressão (X-Engine) usando um dos dois métodos a seguir.

Método 1: Ativar o mecanismo de alta compressão (X-Engine) com um clique em um cluster existente

  1. Faça login no console do PolarDB. No painel de navegação à esquerda, clique em Clusters. Selecione a Region onde o cluster está implantado e clique no ID do cluster para acessar a página de detalhes do cluster.

  2. No painel de navegação à esquerda, escolha Settings and Management > Data Lifecycle e, na aba X-Engine (Warm Data), clique em Enable.

  3. Nota
    • Caso não visualize a aba X-Engine (Warm Data), verifique se o seu cluster atende aos Prerequisites.

    • Depois que o mecanismo de armazenamento de alta compressão for ativado para o cluster, ele não poderá ser desativado. A ativação exige a reinicialização do cluster, durante a qual podem ocorrer de 1 a 2 interrupções transitórias de conexão de até 30 segundos.

  4. Na caixa de diálogo, personalize a proporção de recursos de memória da X-Engine Edition com base no seu cenário de negócios e clique em Enable Now.

    A tabela a seguir mostra as configurações de proporção de recursos de memória para três cenários típicos como referência. Configure a proporção de acordo com o seu cenário de negócios.

    Cenário aplicável

    Proporção de recursos de memória do InnoDB (%)

    Proporção de recursos de memória do X-Engine (%)

    O mecanismo InnoDB armazena dados quentes, o mecanismo X-Engine armazena dados frios e os dados frios arquivados raramente são acessados.

    80

    20

    O mecanismo InnoDB armazena dados quentes, o mecanismo X-Engine armazena dados frios e os dados frios arquivados ainda são atualizados ou consultados.

    50

    50

    O mecanismo InnoDB armazena um pequeno número de tabelas, o mecanismo X-Engine armazena um grande número de tabelas e os dados são atualizados ou consultados.

    20

    80

    Nota
    • Após a ativação do mecanismo de alta compressão (X-Engine), ajuste a proporção de recursos de memória a qualquer momento conforme o seu cenário de negócios na aba X-Engine (Warm Data) da página Settings and Management > Data Lifecycle do cluster.

    • Defina a proporção de recursos de memória do X-Engine entre 10% e 90%. Se você usar o mecanismo X-Engine para armazenar todas as tabelas e não possuir tabelas InnoDB, defina a proporção de recursos de memória do X-Engine como 90%.

Método 2: Selecionar o X-Engine ao comprar um novo cluster

Ao comprar um novo cluster PolarDB for MySQL, defina o mecanismo de armazenamento como InnoDB & X-Engine e use o controle deslizante em X-Engine Memory Usage para definir a proporção de armazenamento entre X-Engine e InnoDB. O intervalo varia de 10% a 90%. Por exemplo, quando definido como 50%, o aviso abaixo exibe X-Engine: 4 GB; InnoDB: 4 GB. Para mais informações, consulte a opção Storage Engine em Purchase a cluster.

Nota

Após a ativação do mecanismo de alta compressão (X-Engine), ajuste a proporção de recursos de memória a qualquer momento conforme o seu cenário de negócios na aba X-Engine (Warm Data) da página Settings and Management > Data Lifecycle do cluster.