ситывание большого числа файлов - Форум успешных вебмастеров - GoFuckBiz.com - Страница 5
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB89.7026
BTC/USD67963.8672
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 31.10.2010, 10:50
Start Post: ситывание большого числа файлов 
  #41
qazxcvbnm
Ниибаца крутой програмер
 
Аватар для qazxcvbnm
 
Регистрация: 04.08.2009
Сообщений: 904
Бабло: $177555
По умолчанию

какой способ для считывание 100k+ текстовых файлов, самый быстрый ?

del

тормозилось походу потому что считывал в переменную

при записи в файл и последуюющем считывании из него, работает быстрее

Последний раз редактировалось qazxcvbnm; 31.10.2010 в 11:01.
qazxcvbnm вне форума  
Старый 01.11.2010, 17:00   #42
qazxcvbnm
Ниибаца крутой програмер
 
Аватар для qazxcvbnm
 
Регистрация: 04.08.2009
Сообщений: 904
Бабло: $177555
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от chesser Посмотреть сообщение
Самое главная причина - это ОС, у меня linux fedora.
чё из-за оси такая разница может быть ?


Цитата:
Сообщение от chesser Посмотреть сообщение
все равно в пхп какое-то ограничение стоит типа 512 что-ли.
у меня выжрало 2 гига и ещё захотело (ещё та, моя версия скрипта)
qazxcvbnm вне форума  
Старый 01.11.2010, 17:23   #43
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от qazxcvbnm Посмотреть сообщение
чё из-за оси такая разница может быть ?
ну винда же гавно, что ты от нее хочешь
Цитата:
Сообщение от qazxcvbnm Посмотреть сообщение
у меня выжрало 2 гига и ещё захотело (ещё та, моя версия скрипта)
так у тебя же кривой алгоритм, если ты сам захотел занять столько памяти - он столько и занял, и тут винда-невинда - защиты нет.
Когда придумываешь алго, иногда есть смысл подумать об использовании системных ресурсов.
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 01.11.2010, 18:00   #44
qazxcvbnm
Ниибаца крутой програмер
 
Аватар для qazxcvbnm
 
Регистрация: 04.08.2009
Сообщений: 904
Бабло: $177555
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от chesser Посмотреть сообщение
так у тебя же кривой алгоритм, если ты сам захотел занять столько памяти - он столько и занял, и тут винда-невинда - защиты нет.
я к тому что вроде какого-то внутреннего ограничения на использование оперативки у php нет
qazxcvbnm вне форума  
Старый 01.11.2010, 18:04   #45
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,239
Бабло: $247847011
По умолчанию

Цитата:
я к тому что вроде какого-то внутреннего ограничения на использование оперативки у php нет
есть то что в конфиге укажешь

то что такая разница из-за оси как-то не верю
imgreen вне форума  
Старый 01.11.2010, 18:16   #46
RedHead
Senior Member
 
Аватар для RedHead
 
Регистрация: 26.08.2008
Адрес: UA
Сообщений: 2,941
Бабло: $402835
По умолчанию

ну так массив с 60кк словами создается, куда он денется?

каждое слово добавленное в этот ассоц. массив увеличивает его размер в оперативке. никуда не деться.

тут надо или сохранять промежуточные результаты в файлы\базы или работать "порциями".
RedHead вне форума  
Старый 01.11.2010, 18:59   #47
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

RedHead, глянь мой скрипт выше, все работает без проблем.
максимальный размер ассоциативного массива получился около 200к элементов. Порции никуда сохранять не надо.

кстати, у меня в php.ini стояло memory_limit = 128M
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 01.11.2010, 20:09   #48
RedHead
Senior Member
 
Аватар для RedHead
 
Регистрация: 26.08.2008
Адрес: UA
Сообщений: 2,941
Бабло: $402835
По умолчанию

chesser, да, скрипт работает, и работает быстро. На запрос автора: "какой способ для считывание 100k+ текстовых файлов, самый быстрый ?" отвечает.

Но видимо ТС объединил все статьи в 1 файл. а от этого file_get_contents разростаеться и дохнет. например у меня от одного тестового файла на 40мб, php-cgi.exe - 800мб в оперативке занял. 120мбайтный заставил кешироваться винду.
RedHead вне форума  
Старый 01.11.2010, 20:36   #49
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от RedHead Посмотреть сообщение
Но видимо ТС объединил все статьи в 1 файл.
вроде нет, если смотреть на его первый for - он читает пофайлово.
Там проблема у него была в том, что он считывал абсолютно все слова в память и пытался все их держать в переменной в памяти. А слов то там как раз много - как я понял 60кк. 60кк слов в памяти удержать сложно
Но если хранить только уникальные слова, то их будет всего 200к - они нормально уместились у меня в 128М
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 02.11.2010, 06:40   #50
qazxcvbnm
Ниибаца крутой програмер
 
Аватар для qazxcvbnm
 
Регистрация: 04.08.2009
Сообщений: 904
Бабло: $177555
ТС -->
автор темы ТС По умолчанию

да ... спасибо парни за помощь и советы
qazxcvbnm вне форума