Автор Тема: XML и реляционные БД  (Прочитано 5089 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML и реляционные БД
« : 01 Марта 2004, 15:17:47 »
Совсем меня замучал вопрос: как наиболее корректно и выгодно с точки зрения поиска хранить XML в реляционной БД? Все, что я находил в инете - как-то куцевато и некрасиво.
Может, кто знает?
TANSTAAFL

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
XML и реляционные БД
« Ответ #1 : 01 Марта 2004, 15:30:12 »
приведи пример, как будет вестись поиск (а то все очень абстрактно описал)
Чем не устроили те решения, которые ты нашел ?

Почитай еще это
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML и реляционные БД
« Ответ #2 : 01 Марта 2004, 16:14:03 »
Макс
Я это уже читал. Много флейма - мало толку. Собственно, конкретная задача примерно такая же, как на том форуме: необходим инструмент, который бы отображал XML на БД (MySQL) и мог возвращать данные по XPath запросу.

А не устраивают все найденные решения следующим: они подразумевают загрузку всего xml документа в память. Это нереально и не нужно.
TANSTAAFL

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
XML и реляционные БД
« Ответ #3 : 01 Марта 2004, 16:37:58 »
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
XML и реляционные БД
« Ответ #4 : 01 Марта 2004, 16:51:13 »
кстати, на каком языке тебе надо ?
А то я по привычке тебе на ПХП предложил
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML и реляционные БД
« Ответ #5 : 05 Марта 2004, 02:34:02 »
Макс Ну, в т.ч. и на PHP
А вообще, после долгих поисков я сделал вывод: нечего изгаляться и писать XPath2SQL интерфейсы. Реляционная БД один черт не очень подходит для хранения XML данных.
Тот же самый MyXTree - классный зверь, но при выборке очень любит делать join\'ы сам на себя. Конечно, в случае небольших xml-файлов это еще куда ни шло. Но в случае небольших файлов их можно обрабатывать и на клиентской стороне.
Наиболее удобоваримым по скорости/сложности мне кажется такой вариант: хранить данные в таблице по-элементно, при запросе производить базовый парсинг XPath-выражения, выделять все NodeName в нем, потом из таблицы их вытаскивать, собирать в файл, а уж затем на клиентской стороне натравливать через тот же самый XSLT-парсер на этот файл XPath.
TANSTAAFL

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
XML и реляционные БД
« Ответ #6 : 05 Марта 2004, 12:55:53 »
Цитировать
Maniac:
Тот же самый MyXTree - классный зверь, но при выборке очень любит делать join\'ы сам на себя

я очень бегло его просматривал. Там автор объяснял, почему такой путь избрал.
А есть ли смысл вообще использовать в данном случае XML ?
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML и реляционные БД
« Ответ #7 : 05 Марта 2004, 13:54:32 »
Цитировать
Макс:
А есть ли смысл вообще использовать в данном случае XML ?

Смысл есть. Я сейчас пишу веб-сервис для хранения данных. И хотелось бы, чтобы данные могли храниться разными способами. При этом данные могут быть не жестко сткруктурированы (т.е. просто таблица не подходит). Естественно, я использую XML для хранения. И в качестве универсального способа доступа к информации логично использовать XPath/XQuery.
TANSTAAFL

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28