![]() |
|
Модераторы: diadiavova |
![]()
|
|
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
У меня вот такой вопрос. Желаю построить сайт, но вместо MySQL использовать в качестве хранения данных XML и с ними работать.
Почему XML? У меня очень много вложенных и повторяющихся данных число которых всегда разное. Если строить в БД, то получается очень много таблиц, да и работать .... много приходиться запросов писать. Оправдано ли это будет? Или всё же придётся использовать БД совместно с XML? Или я вообще не так использую эту технологию. Данные: это описание торгующего заведение, т.е. начиная с названия, адреса, телефона и заканчивая количеством комнат, ассортиментом, обслуживанием... в общем что-то типа спецификации Ваши советы и мысли.. -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Можно найти промежуточный вариант. У нас, например, такая ситуация: есть некая сложная структура, которую неудобно хранить в базе напрямую. Пихаем ее в XML-документ, и сохраняем в базе как BLOB. В базе также остаются сведения о дате, сроках действия, авторе и т.д.
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Gold Dragon |
|
||||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
Lamer George
Слушай я это наверное и есть выход...(!) Т.е. можно делать и резервные копии.. Но у меня ещё есть некоторая информация, которую не выгодно хранить в XML и привязка у меня идёт по id, который в XML. Вот короткий пример структуры
Весь документ и будет состоять их этих блоков. Может тогда сделать базу со следующей структурой
Можно смело доставать данные и работать уже с XML, да и собрать всё во едино очень легко -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
||||
|
|||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 1 Всего: 151 |
Именно так у нас и делается. Если на твоем примере, то ситуация у нас такая: у кабака может быть несколько телефонов, их количество заранее неизвестно (и подобных параметров множество). Чем плодить кучу записей в БД, проще записать это все в документ, а в таблицу вынести ID, сервисную информацию, и еще несколько существенных параметров (например, для удобства группировки).
Это сообщение отредактировал(а) Lamer George - 26.7.2005, 12:37 -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
Ну в принципе можно вынести название, район, улицу. Этого точно много быть не может, но поиск можно будет упростить.
Ещё у кого есть мнения по этому поводу? -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Bikutoru |
|
||||||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 2 Всего: 22 |
Если все данные будут в XML-файлах и их объём будет приличный, то и XPath-запросов тоже будет немало и, думается, они тоже не мгновенно выполняться будут.
Т.е. данные будут вводиться пользователем через админ-интерфейс? Или будут статичны в течении продолжительного периода времени?
В таком случае XML удобнее будет. А вот если будут какие-то прайсы, то их удобнее (читай "привычнее") в базе держать. Хотя распостраняют-то их часто как XML-файлы -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
||||||
|
|||||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
Прайсов не будет. Будет например, - первые блюда разнообразие - 5 баллов ценавая политика - 4 балла -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 2 Всего: 22 |
Ну под прайсами я имел в виду меню. Его, наверное, лучше хранить в базе. Но если будет публиковаться состав блюда, то XML будет предпочтительнее.
А вот отзывы я бы только в базе хранил... -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
в общем получается следующее:
будет две таблицы первая - id - название кабака - адрес - поле TEXT в котором хранятся данные о кабаке в структуре XML - ещё что-то вторая - id - id кабака - отзыв наверное это будет оптимальным вариантом, просто сведения о кабаке просто так не всунуть в таблицы. Интересное получается совмещение технологий -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 2 Всего: 22 |
А бывает что один кабак имеет несколько адресов? Ну то есть, кабаков несколько, но все они входят в какую-то сеть и имеют одно название... -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
Само сабой, но смысл заключается в характеристики именно одного кабака. Например, есть несколько заведений с одним названием, но у одного есть стоянка, у другого три зала, у третьего живая музыка. Так что пусть будет несколько кабаков с одним названием
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Bikutoru |
|
|||
|
Увлекающийся ![]() ![]() Профиль Группа: Участник Сообщений: 522 Регистрация: 24.5.2005 Где: Москва Репутация: 2 Всего: 22 |
Тогда у меня никаких вопросов/предложений нет... -------------------- Человек, словно в зеркале мир — многолик, Он ничтожен — и он же безмерно велик! Омар Хайям |
|||
|
||||
| Andrey1 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 621 Регистрация: 27.2.2004 Где: Moscow Репутация: нет Всего: 5 |
Есть специализированные XML базы данных: Sedna, eXist, dbXML "заточенные" под поисковые запросы на и хранение XML данных.
Есть также реализации языка XQuery: http://www.gnu.org/software/qexo/, ... XML и XQuery дают много широких возможностей. Вопрос, как правильно ими воспользоваться... Андрей -------------------- Созерцание и мудрость - едины. Соцерцание - это основа мудрости, а мудрость - это функция (т.е. умение использовать) созерцания. из сутры помоста шестого патриарха Хуэйнена |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 2 Всего: 71 |
Andrey1
Для меня это поко очень сложно а так я уже почти всё уже сдалал, т.е. всё отлично сохраняется и ищется.. если кому нужно, могу рассказать как это всё работает.. -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Render |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 94 Регистрация: 12.5.2005 Репутация: нет Всего: 3 |
Red Dragon, если не трудно!
|
|||
|
||||
![]()
|
| Правила форума "XML/XSLT" | |
|
|
Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась. Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение. Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел Желаем удачи в Вашем деле! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | XML, XSL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |