Lanzamento de DBMS distribuído TiDB 4.0

Dispoñible versión de DBMS distribuído TiDB 4.0desenvolvido baixo a influencia das tecnoloxías de Google Padiola и F1. TiDB pertence á categoría de sistemas híbridos HTAP (Hybrid Transactional/Analytical Processing) capaces tanto de proporcionar transaccións en tempo real (OLTP) como de procesar consultas analíticas. O proxecto está escrito en Go e distribuído por licenciado baixo Apache 2.0.

Características de TiDB:

  • Soporte para SQL e a provisión dunha interface de cliente compatible co protocolo MySQL, o que facilita a adaptación das aplicacións existentes escritas para MySQL a TiDB e tamén permite utilizar bibliotecas cliente comúns. Ademais do protocolo MySQL, pode usar a API baseada en JSON e o conector para Spark para acceder ao DBMS.
  • Das características de SQL, son compatibles os índices, as funcións agregadas, as expresións GROUP BY, ORDER BY, DISTINCT, combinacións (LEFT JOIN / RIGHT JOIN / CROSS JOIN), vistas, funcións de ventá e subconsultas. As oportunidades proporcionadas son suficientes para organizar o traballo con TiDB de aplicacións web como PhpMyAdmin, lentes e WordPress;
  • Ampliación e resistencia: a potencia de almacenamento e procesamento pódese ampliar simplemente engadindo novos nodos. Os datos distribúense entre nós con redundancia para permitir que as operacións continúen se fallan nodos individuais. Os fallos son tratados automaticamente.
  • O sistema garante a coherencia e parece un gran DBMS para o software do cliente, a pesar de que os datos de moitos nodos se usan realmente para completar a transacción.
  • Pódense usar diferentes backends para o almacenamento físico de datos en nodos, por exemplo, motores de almacenamento local GoLevelDB e BoltDB ou motores de almacenamento distribuído nativo. TiKV e TiFlash. TiKV almacena os datos en filas en formato clave/valor e é máis óptimo para tarefas de procesamento de transaccións (OLTP). TiFlash almacena os datos de forma baseada en columnas e permítelle acadar un maior rendemento ao resolver problemas analíticos (OLAP).
  • A capacidade de cambiar de forma asíncrona o esquema de almacenamento, o que lle permite engadir columnas e índices sobre a marcha sen deter o procesamento das operacións en curso.

Na nova versión:

  • Por defecto, o colector de lixo distribuído Green GC está activado, o que pode aumentar significativamente a velocidade da recollida de lixo en grandes clústeres e mellorar a estabilidade;
  • Engadiuse soporte para grandes transaccións, cuxo tamaño está limitado case polo tamaño da memoria física. O límite de tamaño de transacción única aumentou de 100 MB a 10 GB;
  • Engadido soporte para os comandos BACKUP e RESTORE para a copia de seguridade;
  • Engadida a posibilidade de establecer un bloqueo nas mesas;
  • Engadido mecanismo de illamento de transaccións compatible con MySQL a nivel de lectura (READ COMMITTED);
  • Engadiuse soporte para as expresións LIKE e WHERE ao comando "ADMIN SHOW DDL JOBS";
  • Engadiuse o parámetro oom-use-tmp-storage, que permite usar ficheiros temporais para almacenar en caché resultados intermedios en condicións de RAM insuficiente;
  • Engadiuse unha palabra clave aleatoria para asignar valores aleatorios aos atributos;
  • O comando CARGAR DATOS agora ten a capacidade de usar expresións hexadecimais e binarias;
  • Engadíronse 15 parámetros para controlar o comportamento do optimizador;
  • Ferramentas engadidas para diagnosticar o rendemento das consultas SQL. Engadiuse o rexistro de consultas lentas dispoñible a través das táboas do sistema SLOW_QUERY/CLUSTER_SLOW_QUERY;
  • Engadido soporte para funcións para traballar con secuencias;
  • Engadida a posibilidade de cambiar dinámicamente os parámetros de configuración lidos desde o PD (Controlador de colocación, servidor de xestión de clúster). Engadiuse a posibilidade de usar a instrución "SET CONFIG" para cambiar a configuración dos nodos PD/TiKV.
  • Engadida a configuración max-server-connections para limitar o número máximo de conexións simultáneas ao servidor (4096 por defecto);
  • Mellora do rendemento nas situacións nas que as columnas solicitadas están completamente cubertas por índices;
  • Engadida optimización de consulta baseada na fusión de índices;
  • Mellora do rendemento das operacións con intervalos de valores;
  • Reduciu a carga da CPU almacenando en caché os resultados do acceso aos índices e filtrando os duplicados;
  • Engadido soporte para un novo formato de almacenamento de cadeas que permite aumentar o rendemento das táboas cunha gran cantidade de columnas;
  • A función GROUP_CONCAT agora admite a expresión "ORDER BY";
  • Engadida a posibilidade de extraer datos do rexistro de TiFlash mediante SQL;
  • O comando "RECOVER TABLE" implementa soporte para recuperar táboas truncadas;
  • Engadiuse a táboa do sistema DDLJobs para consultar detalles sobre a execución do traballo DDL;
  • Engadida a posibilidade de usar o comando SHOW CONFIG para mostrar a configuración de PD e TiKV;
  • Acendido caché do coprocesador predeterminado;
  • O número de goroutines na fase de reintento de commit agora pódese controlar mediante a configuración de committer-concurrency;
  • Engadida a posibilidade de mostrar as rexións da partición da táboa;
  • Engadida a capacidade de limitar o tamaño do almacenamento temporal ao servidor tidb;
  • Engadido soporte para as operacións "inserir en tbl_name partition(partition_name_list)" e "substituír en tbl_name partition(partition_name_list)";
  • No hash usado para particionar (particionamento), engadiuse soporte para filtrar en base a "é nulo";
  • Para táboas particionadas, engadiuse soporte para comprobar, limpar e restaurar índices.

Fonte: opennet.ru

Engadir un comentario