Re[3]: Документно-ориентированнные с-мы
От: Зверёк Харьковский  
Дата: 22.09.03 08:23
Оценка: 3 (1)
Здравствуйте, EugenF, Вы писали:

EF>Здравствуйте, Зверёк Харьковский, Вы писали:


ЗХ>>Занимаюсь похожей системой, идей и литературы перелопачено — тьма

ЗХ>>Можем обсудить подробнее, вот только с чего начать? можно мылом zverok@kengu.ru

EF>Можно и мылом, только наверное основные идеи всё же выкладывать будем сюда, иначе форум начнёт терять смысл.


EF>К чему я пришёл за время прошедшее с момента написания сообщения. Задача условно разбивается на две практически непересекающиеся.

EF>1) Непосредственное хранение документов и поиск по контенту.
EF>2) Описание атрибутов документов и различные поиски по атрибутам — правда это только в случае, если необходимо обеспечить универсальность с-мы (т.е. в моём )

EF>По первому пункту. Необходимо хранить разбивку документа на разделы и дальше на абзацы, для абзаца хранится его текст с сохранением базового форматирования. Это необходимо для обеспечения контекстного поиска. Структура таблицы может быть примерно такой

EF>
EF> CREATE TABLE DocContent (
EF>   ID,
EF>   docID,
EF>   level,
EF>   prevID
EF>   nextID,
EF>   name,
EF>   content 
EF> )
EF>

EF>Т.е. я храню уровень раздела в иерархии и ссылки на следующий и предидущий разделы. Востановить структуру док. по подобной таблице довольно таки просто.

тут, наверное, стану спорить. коль скоро мы храним и оригинал документа и его копию, оптимизированную для поиска (что, ИМХО, правильно), то оптимизировать для поиска нужно конкретно и хитро, а не просто разбить документ на слова. По этому поводу есть горы всяческих теорий, начиная от каких-то простейших словарей (типа "слово"-"в каких документах встречается") заканчивая семантическими сетями и проч.
Едем дальше. По твоему начальному сообщению не вполне понятно следующее — а) должны ли докУменты ка-то организовываться (в разделы, подразделы, и пр.) или просто храниться все скопом? б) должен ли поиск искать по текстам всех документов за раз? (ежли нет, то в предыдущем абзаце я чушь написал).
Дальше. Документы, выходит, имеют подозрительно иерархическую структуру (документ->раздел->абзац). Не стоит ли тут задуматься об XML ?
В общем, задачу хранения контента, ИМХО, не стоит решать в лоб, хранением здоровенных кусков текста в базе


EF>Также необходимо хранить оригинал документа, с которым никаких операций проводить нельзя кроме как скачать его на комп. пользователя. Поначалу я планировал написать для этой цели своё хранилище, потом отказался от этой идеи и собираюсь оригиналы также держать в базе.

EF>Интересно насколько это оправдано ?

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

EF>По второму пункту, по атрибутам, я думаю позднее

ок.
FAQ — це мiй ай-кью!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.