O AliSQL é uma ramificação independente do MySQL desenvolvida pela Alibaba Cloud. Ele oferece todos os recursos do MySQL, além de funcionalidades empresariais como backup e restauração, monitoramento, otimização de desempenho e instâncias somente leitura. Este tópico apresenta uma visão geral dos recursos do AliSQL e inclui uma comparação com outras versões do MySQL.
O RDS for MySQL utiliza o kernel AliSQL, uma ramificação independente do MySQL altamente personalizada pela Alibaba Cloud. Ele disponibiliza todos os recursos do MySQL, somados a funcionalidades empresariais como segurança, backup, restauração, monitoramento, otimização de desempenho e instâncias somente leitura. Este documento descreve os principais recursos do AliSQL e o compara com outras versões do MySQL.
AliSQL
O AliSQL é uma ramificação do MySQL mantida pela Alibaba Cloud. Ele aprimora a Community Edition com recursos empresariais comparáveis aos da MySQL Enterprise Edition, incluindo backup e recuperação corporativos, pool de threads e consulta paralela. O AliSQL também oferece recursos compatíveis com Oracle, como o mecanismo de sequência.
Disponibilidade de recursos por versão
Recursos
Recurso | Descrição | Versões do MySQL | |||
8.4 | 8.0 | 5.7 | 5.6 | ||
Permite usar instruções SQL para consultar ou restaurar dados até um ponto específico no tempo, garantindo recuperação rápida após operações acidentais. | Suportado | Suportado | Não suportado | Não suportado | |
Separa threads de sessões por meio de um pool, permitindo que poucas threads processem tarefas de muitas sessões ativas. | Suportado | Suportado | Suportado | Suportado | |
Estabiliza planos de execução do MySQL usando dicas de otimizador e índices. Inclui o toolkit DBMS_OUTLN para facilitar o gerenciamento. | Suportado | Suportado | Suportado | Não suportado | |
Simplifica a geração de valores de sequência. | Suportado | Suportado | Suportado | Suportado | |
Habilita instruções DML a retornar um conjunto de resultados. Inclui o toolkit DBMS_TRANS para facilitar o gerenciamento. | Suportado | Suportado | Não suportado | Não suportado | |
Criptografa colunas de dados específicas para impedir acesso não autorizado a dados em texto simples por ferramentas da plataforma em nuvem. | Não suportado | Suportado | Suportado | Não suportado | |
Desempenho
Recurso | Descrição | Versões do MySQL | |||
8.4 | 8.0 | 5.7 | 5.6 | ||
Melhora o desempenho de consultas com um cache redesenhado que supera as limitações do cache de consulta nativo do MySQL. | Não suportado | Não suportado | Suportado | Não suportado | |
Grava o conteúdo do log binário no log de redo de forma síncrona durante o commit da transação, reduzindo E/S de disco e melhorando o desempenho do banco de dados. | Suportado | Suportado | Não suportado | Não suportado | |
Agrupa instruções em uma fila para reduzir a sobrecarga de conflitos. Instruções propensas a conflitos, como aquelas na mesma linha, são colocadas no mesmo bucket. | Suportado | Suportado | Suportado | Não suportado | |
Permite commits e rollbacks rápidos de transações. Seu uso combinado com os recursos returning e fila de instruções melhora significativamente o throughput do negócio. | Suportado | Suportado | Suportado | Suportado | |
Melhora o desempenho de gravação do banco de dados em cenários de alta concorrência ao gravar logs binários em paralelo durante os commits de transação. | Suportado | Suportado | Não suportado | Não suportado | |
Estabilidade
Recurso | Descrição | Versões do MySQL | |||
8.4 | 8.0 | 5.7 | 5.6 | ||
Oferece controle de concorrência no nível de instrução (CCL). Inclui o toolkit DBMS_CCL para facilitar o gerenciamento. | Suportado | Suportado | Suportado | Não suportado | |
Plug-in do MySQL que coleta e agrega métricas internas de desempenho da instância. | Suportado | Suportado | Suportado | Suportado | |
Garante a estabilidade do sistema ao excluir arquivos grandes de forma assíncrona. | Suportado | Suportado | Suportado | Suportado | |
Ferramenta avançada para monitoramento de carga de trabalho no nível da instância, análise de correlação e ajuste de desempenho. Ajuda a avaliar rapidamente as cargas do banco de dados, identificar a causa raiz de problemas de desempenho e melhorar a estabilidade. | Suportado | Suportado | Suportado | Não suportado | |
Otimiza a fase de gravação do log binário para commits de transações grandes. Isso evita tempos longos de gravação, paralisações e travamentos da instância, melhorando sua estabilidade. | Suportado | Suportado | Suportado | Não suportado | |
Otimização de DDL
Recurso | Descrição | Versões do MySQL | |||
8.4 | 8.0 | 5.7 | 5.6 | ||
Adiciona colunas instantaneamente modificando apenas metadados, evitando a reconstrução completa da tabela. Esta operação rápida, eficiente em recursos e não bloqueadora é ideal para ambientes que exigem alterações frequentes de esquema. | Suportado | Suportado | Suportado | Não suportado | |
Modifica instantaneamente o tipo de dados de uma coluna alterando apenas metadados, evitando a cópia completa da tabela. Isso reduz o tempo da operação e melhora a eficiência de O&M. | Suportado | Suportado | Não suportado | Não suportado | |
Modifica instantaneamente o conjunto de caracteres de uma coluna alterando apenas metadados, evitando a reconstrução da tabela. Isso reduz o tempo da operação e melhora a eficiência de O&M. | Suportado | Suportado | Suportado | Não suportado | |
Realiza modificações de tipo de coluna na camada do mecanismo InnoDB, permitindo alterações online sem bloquear operações de leitura e gravação. | Suportado | Suportado | Suportado | Não suportado | |
Melhora o tratamento de conflitos de chave única durante a execução de DDL para reduzir falhas e aumentar a taxa de sucesso. | Suportado | Suportado | Não suportado | Não suportado | |
Permite definir limites de BPS e IOPS para operações DDL, controlando o consumo de recursos de E/S e garantindo a estabilidade da carga de trabalho. | Suportado | Suportado | Não suportado | Não suportado | |
Impede que operações DDL bloqueiem sessões caso um bloqueio MDL não possa ser adquirido prontamente. Isso evita acúmulo de conexões e melhora a estabilidade e disponibilidade da instância. | Suportado | Suportado | Não suportado | Não suportado | |
Permite usar dicas para controlar o tempo limite de espera do bloqueio MDL para threads DDL, ajudando a prevenir bloqueios de sessão e acúmulo de conexões devido a longas esperas. | Suportado | Suportado | Não suportado | Não suportado | |
Otimiza o mecanismo de gerenciamento do buffer pool durante operações DDL para reduzir o impacto no desempenho e aumentar a concorrência de operações DDL online. | Suportado | Suportado | Suportado | Suportado | |
Move tabelas excluídas para uma lixeira com período de retenção configurável, facilitando a recuperação de dados. Inclui o toolkit DBMS_RECYCLE para facilitar o gerenciamento. | Suportado | Suportado | Suportado | Não suportado | |
Otimização de replicação
Recurso | Descrição | Versões do MySQL | |||
8.4 | 8.0 | 5.7 | 5.6 | ||
otimização de atraso de replicação para processamento em lote | Otimiza a lógica de espera de replicação paralela para eliminar atrasos durante o processamento de dados em lote. Ideal para tarefas de exclusão, reorganização ou importação de dados em lote fora do horário de pico. | Suportado | Suportado | Não suportado | Não suportado |
Transmite logs binários para instâncias secundárias durante a execução de transações grandes. Isso impede que a replicação semissíncrona atinja o tempo limite e degrade para o modo assíncrono, garantindo alta confiabilidade dos dados e desempenho estável. | Suportado | Suportado | Não suportado | Não suportado | |
Permite que instâncias primárias e secundárias executem operações DDL simultaneamente, notificando a secundária quando a primária inicia. Isso praticamente elimina o atraso de replicação relacionado a DDL e garante alta disponibilidade. | Suportado | Suportado | Não suportado | Não suportado | |
Permite que instâncias primárias e secundárias executem transações grandes simultaneamente, notificando a secundária quando a primária inicia. Isso praticamente elimina o atraso de replicação e garante alta disponibilidade. | Não suportado | Suportado | Não suportado | Não suportado | |
otimização de atraso para transações pequenas de alta concorrência | Otimiza a lógica de espera de bloqueio entre threads de E/S, SQL e worker para reduzir esperas, eliminando praticamente o atraso de replicação para transações pequenas de alta concorrência. | Não suportado | Suportado | Não suportado | Não suportado |
Recursos
Categoria | Recurso | Community edition | Enterprise edition | AliSQL | Alibaba Cloud RDS for MySQL |
Serviços de valor agregado empresariais | Não disponível | √ | √ | √ | |
Não disponível | √ | √ | √ | ||
Não disponível | √ | √ | √ | ||
Recursos do MySQL | √ | √ | √ | √ | |
Conectores MySQL | √ | √ | Suporta versões públicas | Suporta versões públicas | |
Replicação MySQL | √ | √ | √ | √ | |
MySQL router | √ | √ | MaxScale (suportado no MySQL 8.0) | proxy de banco de dados single-tenant | |
Particionamento MySQL | √ | √ | √ | √ | |
InnoDB MyISAM NDB | InnoDB MyISAM NDB | InnoDB X-Engine | InnoDB X-Engine | ||
Compatibilidade com Oracle | Não disponível | Não disponível | Suportado no MySQL 8.0 | Suportado no MySQL 8.0 | |
MySQL enterprise monitor | Não disponível | √ | Em desenvolvimento | Enhanced Monitor | |
Não disponível | √ | Em desenvolvimento | Performance Insight | ||
Não disponível | √ | Em desenvolvimento | √ | ||
Não disponível | Não disponível | Não disponível | Enhanced Monitor | ||
MySQL enterprise backup | Não disponível | √ | √ | √ | |
Não disponível | √ | √ | backup no nível de banco de dados e tabela | ||
Não disponível | √ | √ | restauração no nível de banco de dados e tabela | ||
Não disponível | √ | √ | √ | ||
Não disponível | Não disponível | Não disponível | backup cross-region | ||
Não disponível | Não disponível | Suportado no MySQL 8.0 | Suportado no MySQL 8.0 | ||
Não disponível | Não disponível | √ | √ | ||
MySQL enterprise security | Substituição de chave local | √ | BYOK TDE, rotação de chave | BYOK TDE, rotação de chave | |
Não disponível | Não disponível | Não disponível | Criptografia BYOK em repouso | ||
SSL | √ | SSL | SSL | ||
Não disponível | √ | SQL Insights | SQL Insights | ||
Algoritmo de criptografia SM4 | Não disponível | Não disponível | √ | √ | |
Não disponível | Não disponível | Suportado no MySQL 5.7 | Suportado no MySQL 5.7 | ||
MySQL enterprise scalability | Não disponível | √ | Suportado no MySQL 8.0 | Suportado no MySQL 8.0 | |
Não disponível | Não disponível | √ | instância somente leitura | ||
MySQL enterprise reliability | Não disponível | Não disponível | √ | √ | |
Não disponível | Não disponível | √ | √ | ||
Não disponível | Não disponível | √ | √ | ||
Não disponível | Não disponível | √ | √ | ||
MySQL enterprise high-availability | Não disponível | Não disponível | É necessário um mecanismo de HA de terceiros. | High-availability Edition | |
√ | √ | √ | Alta disponibilidade para instâncias somente leitura |