Для физического хранения данных на узлах могут применяться разные бэкенды, например, локальные движки хранения GoLevelDB и BoltDB или собственные движки распределённого хранилища TiKV и TiFlash. TiKV хранит данные в разрезе строк в формате ключ/значение и является более оптимальным для задач обработки транзакций (OLTP). TiFlash хранит данные в привязке к столбцам и позволяет добиться более высокой производительности при решении аналитических задач (OLAP).
По умолчанию включён распределённый сборщик мусора Green GC, позволяющий существенно повысить скорость сборки мусора в крупных кластерах и повысить стабильность работы;
Добавлена поддержка больших транзакций, размер которых ограничены практически размером физической памяти. Ограничение размера одной транзакции увеличено со 100 МБ до 10ГБ;
Добавлена поддержка команд BACKUP и RESTORE для резервного копирования;
Добавлена возможность установки блокировки на таблицы;
Добавлен совместимый с MySQL механизм изоляции транзакций на уровне чтения (READ COMMITTED);
В команду «ADMIN SHOW DDL JOBS» добавлена поддержка выражений LIKE и WHERE;
Добавлен параметр oom-use-tmp-storage, позволяющий использовать временные файлы для кэширования промежуточных результатов в условиях нехватки оперативной памяти;
Добавлено ключевое слово Random для присвоения атрибутам случайных значений;
В команде LOAD DATA появилась возможность использования шестнадцатеричных и двоичных выражений;
Добавлено 15 параметров для управления поведением оптимизатора;
Добавлены средства для диагностики производительности SQL-запросов. Добавлен лог медленных запросов, доступный через системные таблицы SLOW_QUERY / CLUSTER_SLOW_QUERY;
Добавлена поддержка функций для работы с последовательностями;
Добавлена возможность динамического изменения параметров конфигурации, читаемых из PD (Placement Driver, сервер управления кластером). Добавлена возможность использования выражения «SET CONFIG» для изменения настроек узлов PD/TiKV.
Добавлена настройка max-server-connections для ограничения максимального числа одновременных соединений к серверу (по умолчанию 4096);
Увеличена производительность в ситуациях, когда запрошенные столбцы полностью покрываются индексами;
Добавлена оптимизация запросов на основе слияния индексов;
Повышена производительность операций с диапазонами значений;
Снижена нагрузка на CPU за счёт кэширования результатов обращения к индексам и отсеивания дубликатов;
Добавлена поддержка нового формата хранения строк, позволяющего увеличить производительность таблиц с большим числом столбцов;
В функции GROUP_CONCAT появилась поддержка выражения «ORDER BY»;
Добавлена возможность извлечения данных из лога TiFlash через SQL;
В команде «RECOVER TABLE реализована поддержка восстановления обрезанных таблиц;
Добавлена системная таблица DDLJobs для запроса деталей о выполнении работ DDL;
Добавлена возможность применения команды SHOW CONFIG для показа настроек PD и TiKV;