Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с простым скриптом-обработчиком текстового файла [3]
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Помогите с простым скриптом-обработчиком текстового файла

Страниц (4): « 1 2 [3] 4 »
 

31. Строитель - 11 Февраля, 2017 - 20:06:37 - перейти к сообщению
LIME пишет:
Я выше писал что обычно новички чего-то попарсят и думают что умеют
Это не так
Теперь понимаешь к чему я это говорил?
Не все так просто в реалиях кровавого девелопмента))
(Добавление)
А если полезная инфа занимает более строки?
Боль
Опыт приходит со временем ))
(Добавление)
LIME пишет:
Никак не правильно
Нетривиально решается
По ситуации
О, это полезный совет, спс )
32. LIME - 11 Февраля, 2017 - 20:13:46 - перейти к сообщению
ОК
Дам более полезный
Например можно брать блоки по 1мб
И их парсить как маленькие файлы
Тогда нужно учесть границы блоков
И их отдельно обработать как еще маленькие файлы

Чтобы не дублировать инфу надо ее класть с ключем

Как то так
Так легче?))
33. Строитель - 11 Февраля, 2017 - 20:18:29 - перейти к сообщению
LIME пишет:
Так легче?))
Так ещё вопросы появляются Радость По какому принципу организовывать эти блоки? Ведь нельзя же ровно на 1-ом мегабайте разорвать файл и воткнуть какой-то ограничитель?

И ещё мне не понятно, что из себя должен представлять ограничитель блока? Это может быть обычный возврат каретки с переводом строки?
34. LIME - 11 Февраля, 2017 - 20:21:27 - перейти к сообщению
Так потому и работать с границами блоков отдельно
И чтобы инфу не повторять придумать ключ
Вот вот
Вопросы лавинообразно
А я о чем
(Добавление)
Распарси лог на 30 Гибибайт
Бинарный
Не текстовый
И купи себе медаль смело
35. Строитель - 11 Февраля, 2017 - 20:24:03 - перейти к сообщению
LIME пишет:
И чтобы инфу не повторять придумать ключ
Ну всё, ты меня запутал окончательно Ха-ха ))
36. LIME - 11 Февраля, 2017 - 20:29:17 - перейти к сообщению
Ну типа если читаем инфу по человекам то номер паспорта делаем ключем
Тогда читаем поблочно
И заносим в бд
И отдельно читаем +- две строки-на границах блоков
Чтоб не терять инфу на разрывах
Тогда можем дублировать инфу
Чтоб на такое не нарваться пишем данные с ключем например по-номеру паспорта
Фуууух
Это примерный вариант
(Добавление)
Границы без признака
Тупо читаем по 1мигибайту
37. Строитель - 11 Февраля, 2017 - 20:35:44 - перейти к сообщению
LIME пишет:
Ну типа если читаем инфу по человекам то номер паспорта делаем ключем
Тогда читаем поблочно
И заносим в бд
И отдельно читаем +- две строки-на границах блоков
Чтоб не терять инфу на разрывах
Тогда можем дублировать инфу
Чтоб на такое не нарваться пишем данные с ключем например по-номеру паспорта
Фуууух
Это примерный вариант
Мне ещё не приходилось на практике объёмные файлы парсить, но теоретически мне было не понятно, как это реализовывается. Теперь понял, правда пока тоже теоретически. Благодарю за инфу )
38. LIME - 11 Февраля, 2017 - 20:39:25 - перейти к сообщению
Это не инфа о решении
Это инфа о камнях под водой
Не за что
Удачи
39. Строитель - 11 Февраля, 2017 - 20:39:43 - перейти к сообщению
LIME, ещё один вопрос возник -- а как же потом "склеивать" разорванный файл?
40. LIME - 11 Февраля, 2017 - 20:41:58 - перейти к сообщению
Никак
Прочли блок
Прочли границу с предыдущим
Обработали
Забыли
Прочли следующий
(Добавление)
Вопросов больше чем ответов)
И это в порядке вещей
41. Строитель - 11 Февраля, 2017 - 20:44:24 - перейти к сообщению
LIME пишет:
Никак
Прочли блок
Прочли границу с предыдущим
Обработали
Забыли
Прочли следующий
Я протупил )) Исходный же файл мы не меняем, мы извлекаем из него требуемые данные. Поэтому никакой "сборки" исходника не требуется.
42. LIME - 11 Февраля, 2017 - 20:46:47 - перейти к сообщению
Агась)
Менять большой файл это отдельная тема
А еще он может лежать удаленно
И быть архивом
Ооой
Начать и кончить
Страшно тебе?))
43. Строитель - 11 Февраля, 2017 - 20:48:06 - перейти к сообщению
LIME пишет:
Агась)
Менять большой файл это отдельная тема
А еще он может лежать удаленно
И быть архивом
Ооой
Начать и кончить
Страшно тебе?))
Не, наоборот интересно ))
44. LIME - 11 Февраля, 2017 - 20:50:41 - перейти к сообщению
Тогда еще подкину
Если другие его тоже читают и изменяют?
Блокировка?
Возможно
На каком уровне?
Страшно?
Могу еще придумать траблы но это уже совсем теоретические будут)
(Добавление)
Короче не тривиально
Удачки
45. Строитель - 11 Февраля, 2017 - 20:55:58 - перейти к сообщению
LIME пишет:
Если другие его тоже читают и изменяют?
Блокировка?
Ну вроде бы да, блокировка.
LIME пишет:
На каком уровне?
Не понял этого вопроса... О каких уровнях блокировки идёт речь? Я знаю только одну блокировку, с помощью функции flock().
LIME пишет:
Могу еще придумать траблы но это уже совсем теоретические будут)
Пока достаточно и этой инфы ))

 

Powered by ExBB FM 1.0 RC1