As tabelas particionadas do PolarDB são totalmente compatíveis com a sintaxe e os recursos nativos do MySQL. Além disso, oferecem desempenho superior ao MySQL nativo, suportam mais tipos e combinações de partições e proporcionam praticidade, facilidade de uso e eficiência.
O particionamento divide uma tabela lógica grande em várias tabelas físicas menores com base em regras específicas. A tabela lógica maior corresponde à tabela particionada, enquanto as tabelas físicas menores são as partições. Cada partição organiza e gerencia dados e índices independentemente no mecanismo de armazenamento. As regras de particionamento incluem principalmente RANGE, LIST e HASH. Especifique chaves de partição para distribuir os dados entre diferentes partições conforme essas regras. O PolarDB também permite Crie uma partição híbrida para usar mecanismos de armazenamento distintos nas partições. A figura a seguir ilustra a tabela subparticionada Orders.
Benefícios
-
Ampla variedade de tipos e combinações de partições
Compatibilidade com partições RANGE, LIST, HASH e LIST DEFAULT HASH, além de suas combinações. Isso possibilita métodos flexíveis de governança de dados nas tabelas particionadas.
Suporte a partições INTEVAL RANGE, o que simplifica a manutenção automática de partições.
Suporte a Particionamento híbrido com INNODB e OSS para reduzir custos e aumentar a eficiência.
Disponibilidade de Índices parciais e índices secundários globais para atender melhor aos diferentes requisitos de índices de tabela em transações HTAP baseadas em partições e cargas de consulta.
-
Desempenho aprimorado
Eliminação de partições: durante consultas, o otimizador filtra automaticamente as partições com base nas condições da consulta e nos metadados de partição para reduzir a varredura de dados. O PolarDB também suporta eliminação dinâmica de partições para melhorar a eficiência das consultas.
Junções por partição: ao unir partições, o sistema decompõe a tabela particionada em junções individuais com base nas condições de partição e filtra aquelas que não atendem aos critérios. Essa abordagem minimiza o número de junções e aumenta a eficiência da consulta.
Coleta e gerenciamento de estatísticas: processos baseados em partições são precisos e flexíveis, permitindo selecionar planos de consulta mais eficientes.
Consultas paralelas melhoram significativamente o desempenho da solução de tabelas grandes baseadas em partições.
-
Gestão de dados fortalecida
Crie, exclua e reconstrua índices para partições específicas.
Faça backup e restaure dados no nível de partição.
-
Redução de custos
Armazene partições com base na data importance, no data storage performance, na data storage reliability e na data storage form.
Otimizações de recursos
Em comparação com o MySQL nativo, o PolarDB oferece as otimizações apresentadas na tabela a seguir.
Categoria | Otimização | Referências | |
Partições estendidas | Todos os tipos de subpartições | Subparticionamento de partições HASH e KEY | |
Subpartições RANGE e LIST | |||
Eliminação de subpartições | |||
Algumas operações DDL em subpartições | |||
Partições LIST DEFAULT HASH | Partições LIST DEFAULT HASH | ||
Subparticionamento de partições LIST DEFAULT HASH | |||
Subpartições LIST DEFAULT | |||
Instrução REORGANIZE PARTITION para separar uma partição LIST da partição DEFAULT HASH | |||
Instrução REORGANIZE PARTITION para mesclar uma partição LIST em uma partição DEFAULT HASH | |||
Instrução REORGANIZE PARTITION para modifique o número de partições DEFAULT | |||
Eliminação de partições LIST DEFAULT HASH | |||
Instrução ADD PARTITION para adicionar uma partição LIST DEFAULT HASH | |||
Partições INTERVAL-RANGE | Partições INTERVAL-RANGE | ||
Subparticionamento hash de partições INTERVAL-RANGE | |||
Partições cuja chave primária e chave exclusiva podem não ser exclusivas entre partições (UNIQUE CHECK IGNORE) | Suporte a | ||
Suporte a | |||
Índices particionados | Índices parciais | Índices parciais em partições | |
Índices parciais em subpartições | |||
Operações ADD, DROP e REBUILD de índices em partições e subpartições. | |||
Eliminação de índices parciais | |||
Estatísticas sobre índices parciais | |||
Índices parciais em tabelas com particionamento híbrido | |||
Índices parciais em partições LIST DEFAULT HASH | |||
Índices particionados globais | CREATE e DROP de índices secundários globais | ||
Índices secundários globais para operações DML e a maioria das operações DDL em tabelas | |||
Índices secundários globais para operações DDL | |||
Índices secundários globais exclusivos | |||
Otimização de consultas | Otimizadores de consulta | Junções parciais por partição | N/A |
Eliminação dinâmica de partições | |||
Eliminação de índices particionados | |||
HyperLogLog | |||
Varredura paralela de partições em uma tabela particionada | |||
Seleção de otimizador de índice global e varredura paralela | |||
Combinação de particionamento e MPP | |||
MDLs baseados em partição | ADD PARTITION e DROP PARTITION suportam MDLs baseados em partição | ||
EXCHANGE PARTITION suporta MDLs baseados em partição | |||
REBUILD PARTITION e REORGANIZE PARTITION suportam MDLs baseados em partição | |||
Subpartições suportam MDLs baseados em subpartição | |||
Operações DDL | Operações DDL para tabelas comuns e tabelas particionadas | Operação DDL para converter uma tabela comum em uma tabela particionada | |
Partições híbridas | Suporte a diferentes tipos de mecanismos de armazenamento | ||