Я создаю веб-словарь английского языка, где пользователи могут вводить слова и получать определения. Я думал об этом некоторое время, и поскольку данные на 100% статические, и мне нужно было извлекать только одно слово за раз, мне было лучше использовать файловую систему (ext3) в качестве системы базы данных вместо того, чтобы использовать MySQL для хранения определений. Я полагал, что будет меньше накладных расходов, учитывая, что вам нужно подключиться к MySQL, а это само по себе очень медленная операция.
Я боюсь, что если моя система подвергнется бомбардировке, скажем, 500 поисками слов в секунду, будет ли мне все же лучше использовать файловую систему в качестве базы данных? или увеличение количества операций чтения файловой системы повлияет на производительность, в отличие от того, что MySQL может делать под капотом?
В настоящее время иерархия сегментирована по первой, второй и третьей букве слова. Поэтому, если вы будете искать определение «вода», скрипт (PHP) попытается прочитать из «../dict/w/a/t/water.word» (после очистки слова от проблемных символов и в нижнем регистре)
Я иду в правильном направлении с этим или есть более быстрое решение (не считая хранения определений в памяти с использованием чего-то вроде memcached)? Будет ли количество файлов, хранящихся в любом каталоге, влиять на производительность? Каков приблизительный ориентир количества файлов, которые я должен хранить в каталоге?