MySQL против Readdir PHP - PullRequest
       1

MySQL против Readdir PHP

1 голос
/ 22 июня 2011

У меня есть каталог с большим количеством файлов.Более 10.000 файлов.Мы собираемся провести рефакторинг этого каталога.Каждые 2 файла принадлежат определенному «элементу».Теперь мы планируем разделить каталог на несколько каталогов и дать каждому «элементу» свой собственный каталог с каждым собственным файлом.

В настоящее время мы сохраняем имена файлов в нашей базе данных вместе с первичным ключом «»item ".

Теперь мне стало интересно, как лучше всего управлять этими файлами?Лучше использовать функцию readdir в php для чтения каталога, чтобы получить изображения, или лучше читать таблицу базы данных и получать файлы с этими именами?

Мне интересно, что дает наилучшую производительность и какой самый распространенный способ работы с большим количеством изображений.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 22 июня 2011

Я бы использовал базу данных для поиска файлов. readdir может быть медленным, и это не может быть сделано с тем же уровнем интеллекта, что и SQL-запрос. Также, если вы решите переместить dir s3, вы ограничены выбором readdir. также использование readdir заставляет файлы находиться на том же сервере, что и PHP-клиент hwich, также является другим ограничением.

0 голосов
/ 22 июня 2011

Пройдите базу данных. При условии, что он правильно проиндексирован, он будет на несколько порядков быстрее, чем сканирование файловой системы на нужные вам папки.

Найдите интересующие вас записи с помощью SQL-запроса, а затем найдите соответствующие файлы на диске. Это не только быстрее, но и служит основой для дополнительных функций: вы сможете искать и сортировать записи гораздо проще, чем реализовывать подобные функции самостоятельно поверх линейного поиска в файловой системе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...