Парсинг бааальшого xml'ника

Ak85

Guest
Парсинг бааальшого xml'ника

dmoz.org думаю все знают. Так вот беру и скачиваю content.rdf.u8.gz (296M) (Небольшой пример XML'ника )формат RDF.
Задача: на сайте начиная с определенного узла этого дерева выводится ссылки и категории как в каталоге. Но не в этом проблема - как максимально экономично для ресурсов сервера (Linux или FreeBSD + PHP4) пропарсить этот файл для поиска и анализа данных. Можно использовать для парсинга регулярки, но думаю есть способы оптимальнее, но я их ненашел(Святые RTFM и Поиск не помогли). Причем главное - не использовать БД(не надо ругаться и говорить нехорошие слова - база и так загружена другими процессами до отказа).
 

Fiva

Держу ZMH
парси обычным саксовым парсером(xml_func), и паралельно с пропарсиванием ищи то что тебе нужно
 

Фанат

oncle terrible
Команда форума
Парсинг бааальшого xml'ника
главное - не использовать БД- база и так загружена другими процессами до отказа
гениальная фраза.
её надо на граните высечь, золотыми буквами.

а гранит поставить как памятник всем идиотам этой планеты.
 

Ak85

Guest
2Fiva:
Мерси, попробуем..

2Фанат:
Зря ржешь. Обстановки ведь незнаешь... А памятник жду
 

Alexandre

PHPПенсионер
можно парсить и обыкновенным поиском подстроки.
главное, что нет вложенных одноименных тег

чем не вариант?
 

Ak85

Guest
Все мерси. Разрешил. Читаю построчно, причем не разрываю основные блоки, потом вручную парсю. Кстати, я ошибся файл весит не 300мб а 2гб, поэтому стандартные парсеры нельзя использовать - как я понял они всю структуру сразу в память кидают...

Тема закрыта
 

Fiva

Держу ZMH
саксовый парсер афаик ничего в память не кидает, я парсил 600мб файло - без проблем.
 

ViJu

Новичок
Есть еще xmlreader (они это называют курсорной моделью), создан специально для такой работы

http://php5.bitflux.org/xmlonspeed/slide_13.php
 

slach

Новичок
ViJu ему для php4 !

aK85 - изучи внимательно http://php.net/manual/ref.xml.php
посмотри примеры

никто ничего в память не кидает
 
Сверху