Можно ли в mysql установить primary key на несколько столбцов, среди которых есть строковые?
Подскажите, пожалуйста, не будет ли слишком тормозить обработка таблицы, в которой на 1 числовой (tinyint unsigned) и 4 строковых столбца (varchar(8)) поставлен primary key?
Ситуация такова: в базе mysql с кодировкой utf8mb4 нужно хранить векторы с пятью координатами. Первая координата числовая, для неё предусмотрен столбец типа tinyint unsigned. Остальные 4 столбца могут быть или натуральными числами, или же строками (длиной от 0 до 7-8 символов, а в среднем - 3 символа) такого вида: "45-1-2" (дефис, если есть, лишь между натуральными числами).
Каждый вектор уникален, т.е. повторов векторов нет. У каждого вектора есть дополнительные свойства (например, дата добавления в таблицу), для которых предусмотрены поля в таблице.
В таблицу предполагается лишь добавление векторов (не часто: 1-2 в день), удаление (тоже изредка) и поиск нужных векторов по координатам (это уже частая операция). Например, выбрать все векторы, у которых первые три координаты равны фиксированным заданным значениям.
Объём таблицы - не более ста тысяч записей, если смотреть на перспективу :) А реально - до 20-30 тысяч.
Внесение суррогатного ключа я рассматривал, но как-то это кажется бессмысленным, ведь никаких внешних связей таблица не имеет, а для внутренней работы этот ключ не нужен.
Поэтому и возникает вопрос - допусти́м ли такой подход к формированию таблицы?