В любом случае записать в 1 файл быстрее чем в 10 с тем же общим размером. Тут уже зависит от файовой системы.
ЗЫ. В mysql вся база хранится в одном файле. И не зря.
41. SviMik - 11 Февраля, 2007 - 10:15:13 - перейти к сообщению
42. cosc - 11 Февраля, 2007 - 16:22:17 - перейти к сообщению
SviMik
Нет я имел в виду, что лучше изменить 3 файла размером в 40 раз меньше.
Нет я имел в виду, что лучше изменить 3 файла размером в 40 раз меньше.
43. Леголегс - 12 Февраля, 2007 - 11:27:15 - перейти к сообщению
SviMik пишет:
Там файл не читается целиком для каждого действия.
В mysql вся база хранится в одном файле. И не зря.
44. SviMik - 13 Февраля, 2007 - 17:01:38 - перейти к сообщению
А что мешает управлять чтением через fread()?
Когда файл большой, всегда помогает чтение блоками.
И вообще, чего все привязались к стандартному способу форума "прочесть_целиком + unserialize"?
Леголегс помнишь мой скрипт архиватора? Там файл архива один. И даже если он 100мб, при просмотре содержимого или извлечении отдельных файлов время выполнения 0.01-0.1 сек Память не считал, но также мало.
Когда файл большой, всегда помогает чтение блоками.
И вообще, чего все привязались к стандартному способу форума "прочесть_целиком + unserialize"?
Леголегс помнишь мой скрипт архиватора? Там файл архива один. И даже если он 100мб, при просмотре содержимого или извлечении отдельных файлов время выполнения 0.01-0.1 сек Память не считал, но также мало.
45. Леголегс - 14 Февраля, 2007 - 07:20:21 - перейти к сообщению
SviMik
А всё равно мелкие файлы быстрее.
PS В RiSearch тоже fread
А всё равно мелкие файлы быстрее.
PS В RiSearch тоже fread
46. SviMik - 14 Февраля, 2007 - 10:35:54 - перейти к сообщению
Не согласен. Файловая система должна будет каждый файл найти и открыть, а это значительная нагрузка. (пробовали скопировать прорву мелких файлов? и как, быстрее одного?). А fseek() + fread() (имеется ввиду именно частичное чтение\запись) всяко быстрее. Файл-то один, и открывается только один раз. А обьём прочитанных данных не меняется. Что кусок 1кб от 100метрового файла, что просто целиком килобайтный файл - разницы никакой.
47. cosc - 14 Февраля, 2007 - 11:00:03 - перейти к сообщению
SviMik
Да сложно сказать, вполне может, что один файл в таком случае и быстрее читать....
Но смысл сортировки заключается в том что бы искать не по всей базе индексов, а только по части ее. Так что в принципе можнжо ее сделать и в 1 файле....
Да сложно сказать, вполне может, что один файл в таком случае и быстрее читать....
Но смысл сортировки заключается в том что бы искать не по всей базе индексов, а только по части ее. Так что в принципе можнжо ее сделать и в 1 файле....
48. Alone - 15 Февраля, 2007 - 02:21:18 - перейти к сообщению
Может быть пригодится статья:
Скрипт морфологического поиска на PHP
http://zipper.net.ru/8
Как пишет автор статьи сделать можно за 10 минут.
Скрипт морфологического поиска на PHP
http://zipper.net.ru/8
Как пишет автор статьи сделать можно за 10 минут.
49. Леголегс - 15 Февраля, 2007 - 06:33:34 - перейти к сообщению
SviMik
seek тоже не мгновенно работает, кроме того тяжуло определить куда этот сик делать (записи то разной длины)
seek тоже не мгновенно работает, кроме того тяжуло определить куда этот сик делать (записи то разной длины)
50. SviMik - 15 Февраля, 2007 - 09:09:05 - перейти к сообщению
Ну почти мгновенно Заметно быстрее чем открытие файла.
Прояви фантазию. Например я делаю заголовок файла, в котором сериализованный массив, где указана длинна каждой записи. Длинна заголовка также указывается в самом начале файла. Получается своя независимая файловая система
Леголегс пишет:
тяжуло определить куда этот сик делать (записи то разной длины)
Прояви фантазию. Например я делаю заголовок файла, в котором сериализованный массив, где указана длинна каждой записи. Длинна заголовка также указывается в самом начале файла. Получается своя независимая файловая система
А ты думал мой архиватор при извлечении одного файла читает все?