Примечание: это только в случае проверки уникального EXACT MATCH строк менее 128 символов.
Очень распространенная операция во многих моих приложениях это просто проверка существования постоянной строки , которая представляет собой
- уникальное имя пользователя,
- уникальное имя файла / URL
- (в общем) уникальную строку (UUID) например)
Раньше, не особо задумываясь об этом, я только что создал стандартную таблицу в MySQL для отслеживания этого.
Мне недавно сказали, что эту эквивалентную операцию простой проверки уникальной строки, вероятно, следует просто выполнить в файловой системе, отметив file_exist()
в пути.
У меня вопрос, когда нужно использовать MySQL против просто (?) Файловой системы?
Наивно я понимаю, что MySQL предназначен для индексации лучше - но это только для более сложных операций?
У меня есть несколько проблем:
- Не ухудшается ли PHP
file_exists()
, когда в папке находится большое количество файлов? В какой момент вы должны «осколить» папку на сервере CentOS или Ubuntu Apache (на самом деле, я не уверен, насколько это зависит от версии PHP, ОС, версии веб-сервера)? - Если нужно делать что-то вроде файлов списков, это также приводит к высокой производительности по сравнению с обычными MySQL
SELECT Like '%bla%'
, например?
Лемма: должны ли обе системы создаваться параллельно? Используется ли файловая система для быстрых проверок и система MySQL для распечатки / поиска / других операций?