Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 26, 2012 11:18:24

leona
От:
Зарегистрирован: 2011-12-28
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

поиск в XML базе данных

я просто упражнения из tutorial делала, пыталась разобраться с ElementTree:

import xml.etree.ElementTree as etree
>>> tree = etree.parse('path')
>>> root = tree.getroot()
завис не только IDLE, завис Chrome, текстовый редактор, вобщем, все)

через lxml, врочем, все загрузилось.

PS: таковы жертвы кроссплатформенности и независимости от ПО)



Офлайн

#2 Авг. 26, 2012 11:25:47

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

поиск в XML базе данных

cElementTree из стандартной библиотеки должен по скорости примерно как lxml работать

import xml.etree.cElementTree as etree
Не знаю какие у вас данные, но если возможно, при конвертирования в другой формат, для уменьшения использования памяти и для ускорения можно попробовать:
http://effbot.org/zone/element-iterparse.htm
http://lxml.de/parsing.html#iterparse-and-iterwalk

Отредактировано reclosedev (Авг. 26, 2012 11:28:05)

Офлайн

#3 Авг. 26, 2012 22:01:21

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

поиск в XML базе данных

leona
таковы жертвы кроссплатформенности и независимости от ПО)
Позволю себе не согласиться. Можно навскидку назвать несколько кроссплатформенных способов хранения ваших данных. Независимость от ПО?? Это наверное открытость формата либо доступность драйверов для разных языков программирования. Этого тоже навалом, вы только определитесь из каких языков будет организован доступ к данным.
Раз вы пользуетесь python один из простых и притом кросcплатформенных способов - хранить данные в ZODB

Так что это скорее ошибка проектирования системы.



Отредактировано doza_and (Авг. 26, 2012 22:02:12)

Офлайн

#4 Авг. 26, 2012 23:21:35

leona
От:
Зарегистрирован: 2011-12-28
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

поиск в XML базе данных

да я не спорю с мастерами;) это было мое скромное предположение непрофессионала. на то, почему данные в этом формате, ответить вменяемо не могу. может быть, это специфика лингвистическая, маркировать синтаксическую структуру так удобнее. но это предположение. корпус, с которым я работаю, взят вот отсюда http://www.sfs.uni-tuebingen.de/corpora.shtml там же нашла ссылку на графический интерфейс для работы с этой базой (раньше проглядела, не увидела). проблема вот только в том, что мне надо очень большой объем словаря прогнать и проверить, есть ли он в этой базе и с какими характеристиками синтаксическими, с помощью их интерфейса это невозможно. потому пытаюсь разобраться как через пайтон это сделать…его синтаксис более понятен для меня (гуманитария), чем джавовский.



Офлайн

#5 Авг. 27, 2012 00:57:13

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

поиск в XML базе данных

leona, а для чего эта xml-ка? Для какой-то программы?

Офлайн

#6 Авг. 27, 2012 14:45:23

leona
От:
Зарегистрирован: 2011-12-28
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

поиск в XML базе данных

xml-файл представляет собой аннотированный лингвистический корпус. а кто как с ним работает - дело каждого. но под него (и аналогичные корпуса) разработан интерфейс со специальным посиковым языком TiGerSearch. все просто и удобно, но под мою задачу (см. выше) он не подходит, уж очень нерационально пробивать каждое слово вручную для 21 века;) мне нужно целым пакетом обработать.



Офлайн

#7 Авг. 27, 2012 15:27:13

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

поиск в XML базе данных

Интересно, как эта прога работает, грузит что ли все дерево в память? Можешь посмотреть на расход памяти, когда в проге открывается файл?

Ну и по теме - работай так, как подсказали, если время выполнения совсем будет не устраивать - надо файл перегонять в реляционную базу.

Отредактировано odnochlen (Авг. 27, 2012 15:30:00)

Офлайн

#8 Авг. 27, 2012 22:53:56

leona
От:
Зарегистрирован: 2011-12-28
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

поиск в XML базе данных

еще бы знать, куда смотреть) вот тут инфа про этот интерфейс, там есть мануал http://www.ims.uni-stuttgart.de/projekte/TIGER/TIGERSearch/oldindex.shtml
он, по-моему, на джаве написан. сначала загружаешь xml-файл, она там некторое время что-то делает и в результате этот один файл разбивается на кучу маленьких, очевидно, по xml-разметке. т.е. там появляется отдельный файл для словарных форм слов, отдельный файл для словоформ (то, как слова в речи реализованы) итд. а по времени - все очень быстро. формулируешь запрос по форме что-то наподобие синтаксиса awk и тут же результат получаешь с графической картинкой (дерево синтаксической структуры).

да, спасибо, сижу и изучаю tutorial)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version