[решено]MySQL большой Шестнадцатиричные Индексы
в первый раз я наткнулся на базу данных со значительным ростом (125,000 вставки/день).
Эта база данных используется для отслеживания оборудования сети.
У меня есть много данных, относящихся к этим устройствам, и я буду обновлять их day2day (проверяя, были ли они обновлены/понижены/изменены позиции/остались неустановленными и тысячи вещей). SO означает, что мне нужно постоянно обновлять их и Только фиксированная вещь будет их серийными номерами.
Теперь моя головная боль начинается ...
У меня есть бесполезное ID [INT (11) PK), это бесполезно, потому что я делаю основан на SerialNumbers [VARCHAR (22) UQ].
Оглядываясь дальше, я видел, что серийные номера всегда HEX из (от 7 до 24) мест, первая вещь в моем сознании была: TADA решена, просто поместите эти серийные числа как целые и работайте каждый раз, когда конверсии hex2dec ничего не представляют ... Тогда я выяснил, что неподписанных биноклей недостаточно для чисел, больших HEX (16).
И, наконец, вопрос:
Кто-нибудь есть какие-либо идеи о том, который является самым быстрым индексируемым способом хранения моего SERIALNUMBER поля?
Я не возражаю, если вы не пробовали решение, которое вы собираетесь сказать, любая идея будет приветствоваться и Upvoted :)
На рисунке ниже показан счетчик serialnumbers для каждого SerialNumber длина у меня есть в базе данных.
Может быть, этот вопрос на DBA SE помогает Http: //dba.stackexchange.com/q/35821/33821 –
@OlafDietsche Я не вижу, как это может поместиться в моем сценарии: S –
OP также ищет индексирование столбца 'varchar'. Поскольку у вас есть то же самое и попытайтесь уменьшить его до меньшего значения, можно предположить, что предложение 3., использующее какое-то значение хэш-функции. –