Lançamento do banco de dados distribuído TiDB 4.0

Disponível lançamento do SGBD distribuído TiDB 4.0, desenvolvido sob a influência das tecnologias do Google Spanner e F1. TiDB é classificada como um sistema híbrido HTAP (Hybrid Transactional/Analytical Processing), capaz de realizar transações em tempo real (OLTP) e processar consultas analíticas. O projeto é escrito na linguagem Go e é distribuído estão sob a licença Apache 2.0.

Recursos do TiDB:

  • Suporte a SQL e fornecimento de uma interface de cliente compatível com o protocolo MySQL, facilitando a adaptação de aplicações existentes para TiDB que foram escritas para MySQL, além de permitir o uso de bibliotecas de cliente populares. Além do protocolo MySQL, é possível acessar o SGBD através de uma API baseada em JSON e conector para Spark.
  • Entre os recursos suportados pelo SQL estão índices, funções agregadas, expressões GROUP BY, ORDER BY, DISTINCT, junções (LEFT JOIN / RIGHT JOIN / CROSS JOIN), visões, funções de janela e subconsultas. As capacidades fornecidas são suficientes para operar com TiDB em web-aplicações como PhpMyAdmin, Gogs e WordPress;
  • Capacidade de escalonamento horizontal e garantia de alta disponibilidade: o tamanho do armazenamento e a potência computacional podem ser aumentados simplesmente conectando novos nós. Os dados são distribuídos entre os nós com redundância, permitindo a continuidade do funcionamento em caso de falhas de nós individuais. Falhas são tratadas automaticamente.
  • O sistema garante consistência e para o software cliente parece um único grande SGBD, apesar de que, para executar uma transação, são utilizados dados de vários nós.
  • Para o armazenamento físico de dados nos nós, diferentes backends podem ser utilizados, como os mecanismos de armazenamento locais GoLevelDB e BoltDB ou os mecanismos próprios de armazenamento distribuído. TiKV e TiFlash. TiKV armazena dados em formato de chave/valor, otimizado para tarefas de processamento transacional (OLTP). TiFlash armazena dados em colunas, permitindo melhor desempenho em tarefas analíticas (OLAP).
  • Capacidade de alteração assíncrona do esquema de armazenamento, permitindo a adição de colunas e índices em tempo real sem interromper a execução de operações atuais.

No novo lançamento:

  • O coletor de lixo distribuído Green GC está habilitado por padrão, permitindo aumentar significativamente a velocidade de coleta de lixo em grandes clusters e aumentar a estabilidade do sistema.
  • Adicionada a capacidade de lidar com grandes transações, cujo tamanho é praticamente limitado pelo tamanho da memória física. O limite para uma única transação foi aumentado de 100 MB para 10 GB.
  • Adicionada a suportar os comandos BACKUP e RESTORE para backup.
  • Adicionada a possibilidade de aplicar bloqueios em tabelas.
  • Adicionado o mecanismo de isolamento de transações compatível com MySQL no nível de leitura (READ COMMITTED).
  • Na equipe 'ADMIN SHOW DDL JOBS', adicionada a suporte para expressões LIKE e WHERE.
  • Adicionado o parâmetro oom-use-tmp-storage, permitindo o uso de arquivos temporários para armazenar resultados intermediários em condições de falta de memória RAM.
  • Adicionada a palavra-chave Random para atribuir valores aleatórios a atributos.
  • Na instrução LOAD DATA, agora é possível usar expressões hexadecimais e binárias.
  • Adicionados 15 parâmetros para controlar o comportamento do otimizador.
  • Incluídos recursos para diagnóstico de desempenho de consultas SQL. Adicionado um log de consultas lentas, acessível através das tabelas de sistema SLOW_QUERY / CLUSTER_SLOW_QUERY.
  • Adicionada a suporte para funções de trabalho com sequências.
  • Adicionada a capacidade de modificar dinamicamente parâmetros de configuração lidos do PD (Placement Driver), servidor de gerenciamento de cluster. Possibilidade de usar a expressão 'SET CONFIG' para alterar as configurações dos nós PD/TiKV.
  • Adicionada a configuração max-server-connections para limitar o número máximo de conexões simultâneas ao servidor (por padrão 4096).
  • Aumentada a performance em situações onde as colunas requisitadas são totalmente cobertas por índices.
  • Adicionada a otimização de consultas baseada na fusão de índices.
  • Aumentou o desempenho das operações com intervalos de valores;
  • A carga no CPU foi reduzida graças ao cache dos resultados de acesso aos índices e à filtragem de duplicatas;
  • Adicionada a suporte ao novo formato de armazenamento de strings, permitindo aumentar o desempenho de tabelas com um grande número de colunas;
  • A função GROUP_CONCAT agora suporta a expressão 'ORDER BY';
  • Adicionada a possibilidade de extrair dados do log TiFlash através do SQL;
  • No comando 'RECOVER TABLE' foi implementado suporte para a recuperação de tabelas truncadas;
  • Adicionada a tabela de sistema DDLJobs para consultar detalhes sobre a execução de trabalhos DDL;
  • Adicionada a possibilidade de usar o comando SHOW CONFIG para mostrar as configurações do PD e TiKV;
  • Ativado por padrão, cache do co-processador;
  • O número de goroutines na fase de tentativas de commit agora pode ser controlado através da configuração committer-concurrency;
  • Adicionada a possibilidade de exibir regiões de partição de tabelas;
  • No tidb-server, foi adicionada a possibilidade de limitar o tamanho do armazenamento temporário;
  • Suporte adicionado para as operações 'insert into tbl_name partition(partition_name_list)' e 'replace into tbl_name partition(partition_name_list)';
  • O hash usado para particionamento agora suporta filtragem pelo critério 'is null';
  • Para tabelas particionadas, suporte adicionado para operações de verificação, limpeza e recuperação de índices.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster