Re: посоветуйте XML парсер
От: _Winnie Россия C++.freerun
Дата: 14.12.04 23:01
Оценка: -2
Здравствуйте, pivoo, Вы писали:

P>сейчас пользую xercesc DOM Parser,

P>несколько xml общим объемом около 100 Мб
P>парятся около 15 минут, это немного не устраивает,


читаем про xml здесь

P>хотелось бы раз в 10 побыстрей


Смысл использовать xml? Учитывая объемы, human-readability тебе не нужна. Так может, лучше использовать бинарный формат, чем мучать парсеры текста?

Вы построили восхитительный замок, но слегка облажались где-то в районе фундамента
Правильно работающая программа — просто частный случай Undefined Behavior
Re[2]: посоветуйте XML парсер
От: alteorn  
Дата: 17.12.04 07:55
Оценка: 1 (1)
Hello, !
You wrote on Fri, 17 Dec 2004 06:09:57 GMT:

> Здравствуйте, pivoo, Вы писали:


P>> нужен — платформонезависимый — быстрый — не глючный

P>> XML парсер для с++

Xercesc или libXml

P>> сейчас пользую xercesc DOM Parser, несколько xml общим объемом около

P>> 100 Мб парятся около 15 минут, это немного не устраивает, хотелось
P>> бы раз в 10 побыстрей

Разгребать 100 Мб xml в DOM это само по себе плохая идея . Возможно Вам стоит обратить внимание на SAX парсер.

з.ы. У нас на конторе мы применяли Xercesc и libXml. В принципе разница практически незаметна. libXml оказался немного быстрее. Однако у нас были определенные нюансы в поведении обоих

With best regards, Alexander S.Tereshchenko.
Posted via RSDN NNTP Server 1.8
Re[5]: посоветуйте XML парсер
От: _Winnie Россия C++.freerun
Дата: 15.12.04 18:14
Оценка: +1
Здравствуйте, pivoo, Вы писали:

P>Здравствуйте, DangerDen, Вы писали:

DD>>Здравствуйте, pivoo, Вы писали:
P>>>Здравствуйте, _Winnie, Вы писали:
_W>>>>Смысл использовать xml? Учитывая объемы, human-readability тебе не нужна. Так может, лучше использовать бинарный формат, чем мучать парсеры текста?

Извиняюсь за неверное предположение, может пройдут следующие два способа:

1) Используем бинарный формат, редактируем при помощи специального редактора. (пример — реестр Windows)
2) Используем таки текстовый xml, но в production-билде используем файл, конвертированный в бинарник. (пример — любой компилятор, например С++)

Доклад Руслана Абдикеева на КРИ 2003 — при разработке храним в виде удобном для человека, в production релизе — используем наиболее удобный для платформы формат.

Или data flow в твоей системе таков, что это принципиально невозможно? Нужно таки лечить болезнь, а не ее симптомы
Правильно работающая программа — просто частный случай Undefined Behavior
посоветуйте XML парсер
От: pivoo Россия  
Дата: 14.12.04 17:08
Оценка:
нужен
— платформонезависимый
— быстрый
— не глючный
XML парсер для с++

сейчас пользую xercesc DOM Parser,
несколько xml общим объемом около 100 Мб
парятся около 15 минут, это немного не устраивает,
хотелось бы раз в 10 побыстрей
Re: посоветуйте XML парсер
От: Аноним  
Дата: 14.12.04 20:59
Оценка:
Здравствуйте, pivoo, Вы писали:

P>нужен

P>- платформонезависимый
P>- быстрый
P>- не глючный
P>XML парсер для с++

P>сейчас пользую xercesc DOM Parser,

P>несколько xml общим объемом около 100 Мб
P>парятся около 15 минут, это немного не устраивает,
P>хотелось бы раз в 10 побыстрей

DOM-парсеры строят объектную модель (=дерево) по ходу обработки XML — поэтому получается долго.
Есть SAX-парсеры — которые будут дергать твои callback'и. В некоторых задачах SAX-парсеры могут существенно повысить производительность по сравнению с DOM-парсерами — но это только если задача позволяет...

SAX парсер есть в том же Xerces.
Re: посоветуйте XML парсер
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 14.12.04 21:07
Оценка:
Здравствуйте, pivoo, Вы писали:

P>нужен

P>- платформонезависимый
P>- быстрый
P>- не глючный
P>XML парсер для с++

Использую PugXML — A Small, Pugnacious XML Parser (точнее, ту его версию, которая входит в состав Resource ID Organiser Add-In for Visual C++ 5.0/6.0/.NET). Тормозов и глюков не замечал... хотя на таких объемах, как у Вас, гонять его не приходилось.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by The Doors — Riders On The Storm ]
- Искренне ваш, Поросенок Пафнутий
Re[2]: посоветуйте XML парсер
От: Аноним  
Дата: 14.12.04 21:15
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, pivoo, Вы писали:


Очень рекомендую Xerces!
Re[2]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 15.12.04 17:00
Оценка:
Здравствуйте, _Winnie, Вы писали:

_W>Смысл использовать xml? Учитывая объемы, human-readability тебе не нужна. Так может, лучше использовать бинарный формат, чем мучать парсеры текста?


смысл использовать xml как раз и состоит в том что
human-readability мне нужна
Re[3]: посоветуйте XML парсер
От: DangerDen  
Дата: 15.12.04 17:02
Оценка:
Здравствуйте, pivoo, Вы писали:

P>Здравствуйте, _Winnie, Вы писали:


_W>>Смысл использовать xml? Учитывая объемы, human-readability тебе не нужна. Так может, лучше использовать бинарный формат, чем мучать парсеры текста?


P>смысл использовать xml как раз и состоит в том что

P>human-readability мне нужна
бери xerces-c и не мучайся
Re[4]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 15.12.04 17:04
Оценка:
Здравствуйте, DangerDen, Вы писали:

DD>Здравствуйте, pivoo, Вы писали:


P>>Здравствуйте, _Winnie, Вы писали:


_W>>>Смысл использовать xml? Учитывая объемы, human-readability тебе не нужна. Так может, лучше использовать бинарный формат, чем мучать парсеры текста?


P>>смысл использовать xml как раз и состоит в том что

P>>human-readability мне нужна
DD>бери xerces-c и не мучайся
им и пользуюсь .. и мучаюсь
читай пост
Re[6]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 15.12.04 19:05
Оценка:
Здравствуйте, _Winnie, Вы писали:

я согласен что это предложение имеет право на жизнь, но
задача поставлена именно таким образом как я описал,
поэтому и решения необходимо искать в соответсвие с
этой задачей.
Надо найти быстрый парсер xml.
Re: посоветуйте XML парсер
От: butcher Россия http://bu7cher.blogspot.com
Дата: 16.12.04 06:56
Оценка:
Здравствуйте, pivoo, Вы писали:

P>- платформонезависимый

P>- быстрый
P>- не глючный
P>XML парсер для с++
P>хотелось бы раз в 10 побыстрей

Вы так и не уточнили, вам нужен DOM или SAX парсер?
Я где-то видел не так давно результаты тестирования SAX парсеров, самым быстрым был expat, после него — libxml2.

Нет ничего невозможного..
Re[2]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 16.12.04 08:47
Оценка:
Здравствуйте, butcher, Вы писали:
B>Вы так и не уточнили, вам нужен DOM или SAX парсер?
B>Я где-то видел не так давно результаты тестирования SAX парсеров, самым быстрым был expat, после него — libxml2.

спасибо за ссылки,
а насчет DOM или SAX — мне не важно,
я пока с SAX не работал и не представляю чем
он отличается. Главное чтобы быстро.
Re: посоветуйте XML парсер
От: pivoo Россия  
Дата: 16.12.04 09:10
Оценка:
Я смотрю тут многие советуют xercesc,
я его тоже использую, но код его использования
"достался в наследство" и я думаю что не исключена такая
возможность что написано все не идеально ( для быстрого
парсинга больших объемов данных ).

Может кто-то даст ссылки на примеры применения?
Официальная документация, как мне показалось,
не изобилирует ими. Мне сложно с ней разобраться.

Или, если удобнее, киньте в мыло, адрес в профайле.
Re[2]: посоветуйте XML парсер
От: Alny Украина  
Дата: 16.12.04 09:27
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:


SDB>Использую PugXML — A Small, Pugnacious XML Parser (точнее, ту его версию, которая входит в состав Resource ID Organiser Add-In for Visual C++ 5.0/6.0/.NET).

Что то не нащел я в составе этого продукта PugXML
... << RSDN@Home 1.1.4 beta 3 rev. 232>>
Re: посоветуйте XML парсер
От: DOIG-U Россия  
Дата: 16.12.04 09:29
Оценка:
Здравствуйте, pivoo, Вы писали:

P>нужен

P>- платформонезависимый
P>- быстрый
P>- не глючный
P>XML парсер для с++

tinyxml?
Re[3]: посоветуйте XML парсер
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 16.12.04 09:41
Оценка:
Здравствуйте, Alny, Вы писали:

A>Что то не нащел я в составе этого продукта PugXML


Лукавый попутал! Вот отсюда я его брал: Include File Hierarchy Viewer. Сорьки за неверную ссылку...
[ posted via RSDN@Home 1.1.4 beta 3 r241 ]
- Искренне ваш, Поросенок Пафнутий
Re: посоветуйте XML парсер
От: Аноним  
Дата: 17.12.04 06:09
Оценка:
Здравствуйте, pivoo, Вы писали:

P>нужен

P>- платформонезависимый
P>- быстрый
P>- не глючный
P>XML парсер для с++

P>сейчас пользую xercesc DOM Parser,

P>несколько xml общим объемом около 100 Мб
P>парятся около 15 минут, это немного не устраивает,
P>хотелось бы раз в 10 побыстрей

нормальный хмл парсер есть в Qt. В .NET тоже вполне удобоваримый
Re[3]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 17.12.04 08:59
Оценка:
Здравствуйте, alteorn, Вы писали:

A>Hello, !

A>You wrote on Fri, 17 Dec 2004 06:09:57 GMT:

>> Здравствуйте, pivoo, Вы писали:


P>>> нужен — платформонезависимый — быстрый — не глючный

P>>> XML парсер для с++

A>Xercesc или libXml


P>>> сейчас пользую xercesc DOM Parser, несколько xml общим объемом около

P>>> 100 Мб парятся около 15 минут, это немного не устраивает, хотелось
P>>> бы раз в 10 побыстрей

A> Разгребать 100 Мб xml в DOM это само по себе плохая идея . Возможно Вам стоит обратить внимание на SAX парсер.


A>з.ы. У нас на конторе мы применяли Xercesc и libXml. В принципе разница практически незаметна. libXml оказался немного быстрее. Однако у нас были определенные нюансы в поведении обоих


A>With best regards, Alexander S.Tereshchenko.


а можно небольшой пример использования SAX в xercesc?
что-то разбираюсь с документацией, но ее много и все путано
(по крайней мере для меня)
Re[4]: посоветуйте XML парсер
От: alteorn  
Дата: 17.12.04 10:42
Оценка:
Hello, pivoo!
You wrote on Fri, 17 Dec 2004 08:59:06 GMT:

P>>>> сейчас пользую xercesc DOM Parser, несколько xml общим объемом

P>>>> около 100 Мб парятся около 15 минут, это немного не устраивает,
P>>>> хотелось бы раз в 10 побыстрей

A>> Разгребать 100 Мб xml в DOM это само по себе плохая идея .

A>> Возможно Вам стоит обратить внимание на SAX парсер.

A>> з.ы. У нас на конторе мы применяли Xercesc и libXml. В принципе

A>> разница практически незаметна. libXml оказался немного быстрее.
A>> Однако у нас были определенные нюансы в поведении обоих

p> а можно небольшой пример использования SAX в xercesc?

p> что-то разбираюсь с документацией, но ее много и все путано (по
p> крайней мере для меня)

Не хотелось бы постить сюда примеры, которые есть в библиотеке. (Я бы написал такие же) Посмотрите, например, в ../samples/SAXPrint или ../samples/SAXCount.

With best regards, Alexander S.Tereshchenko.
Posted via RSDN NNTP Server 1.8
Re[5]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 17.12.04 10:44
Оценка:
Здравствуйте, alteorn, Вы писали:

A> Не хотелось бы постить сюда примеры, которые есть в библиотеке. (Я бы написал такие же) Посмотрите, например, в ../samples/SAXPrint или ../samples/SAXCount.


A>With best regards, Alexander S.Tereshchenko.


Да, спасибо, просто в той версии xercesc что стояла у нас не было примеров, сейчас уже нашел
Re[6]: посоветуйте XML парсер
От: DangerDen  
Дата: 17.12.04 12:06
Оценка:
Здравствуйте, pivoo, Вы писали:

P>Здравствуйте, alteorn, Вы писали:


A>> Не хотелось бы постить сюда примеры, которые есть в библиотеке. (Я бы написал такие же) Посмотрите, например, в ../samples/SAXPrint или ../samples/SAXCount.


A>>With best regards, Alexander S.Tereshchenko.


P>Да, спасибо, просто в той версии xercesc что стояла у нас не было примеров, сейчас уже нашел


Так я ж еще под анонимом говорил про SAXParser в Xerces'e и советовал
Re[7]: посоветуйте XML парсер
От: pivoo Россия  
Дата: 17.12.04 12:10
Оценка:
Здравствуйте, DangerDen, Вы писали:

DD>Здравствуйте, pivoo, Вы писали:


P>>Здравствуйте, alteorn, Вы писали:


A>>> Не хотелось бы постить сюда примеры, которые есть в библиотеке. (Я бы написал такие же) Посмотрите, например, в ../samples/SAXPrint или ../samples/SAXCount.


A>>>With best regards, Alexander S.Tereshchenko.


P>>Да, спасибо, просто в той версии xercesc что стояла у нас не было примеров, сейчас уже нашел


DD>Так я ж еще под анонимом говорил про SAXParser в Xerces'e и советовал

я поэтому и завел новую ветку
Автор: pivoo
Дата: 16.12.04
в потоке

Изначально действительно собирались перейти на
другую библиотеку, но решили просто перейти на SAX
в Xercesc.

Всем спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.