-
Уважаемые, мастера. Мы меня не раз выручали и спустя долгое время созрел вопрос, который спешу Вам задать.
Расскажите о вариантах хранения и поиска по тексту крупных документах с минимальным форматированием (жирный, курсив, ссылка на др. документ).
Другими словами например есть у нас налоговый кодекс. В каком формате лучше его хранить в БД (а может и не в БД) и каким образом организовывать поиск в тексте по вхождению? Как обрабатывать ссылки в этом тексте?
Спасибо.
-
простите за опечатку "Мы меня ...", конечно же, "Вы"=))
-
> DmitrichJ (03.08.09 23:17)
Мало информации, что бы можно было дать какой-то ответ. Одни вопросы.
Конкретнее.
-
Текстовый документ. Например налоговый кодекс. В программе должен иметь минимальное форматирование. Например жирный текст заголовков и статей. Так же должен иметь ссылки (в любом виде), чтобы при просмотре можно было определить куда данная ссылка ссылается (но это другой вопрос). Мне интересно как лучше хранить множество подобных документов и как организовывать контекстный поиск. Хотя бы простейший "Статья 4. Нормативные правовые акты Правительства Российской Федерации" если бы текст был не форматирован и хранился в БД простейшим текстом, то не было проблем воспользоваться "лайком", но из-за форматирования сложнее. Кто-нибудь сталкивался?
-
> DmitrichJ (03.08.09 23:42) [3]
Мда. Мало что прояснилось.
FullText search - первое что приходит в голову. Это по поиску.
Далее:
1) СУБД?
2) В каком виде документы хранятся-то?
3) Форматирование - это на клиентской части.
Ну, не будем о грустном :) и так, далее:
4) Нужен поиск по Форматам? Оо (Можно, конечно, и такое сделать..)
5) В идеале (ну, не то что бы уж совсем, но :) ) - сделать по подобию htmlhelp
-
видимо неправильно выразился... в общем 1,2- это вопрос. Т.е. спрашиваю как лучше сделать.
3-да.
4. Нужно чтобы клиенту отображалось типа:
Статья 1. ыфпфп
фукпфукфукп
Статья 2. шлепшепш.
пншпншпнш
как лучьше хранить? В rtf или html формате, а может вообще в другом? Это тоже вопрос.
раз мы храним форматирование, то как лучше делать поиск? к примеру если html, то текст храниться Статья 1..... ыфпфп. А клиент будет искать "Статья 1..." к примеру...
4. как?
-
> DmitrichJ (04.08.09 00:38) [5]
> 1,2- это вопрос. Т.е. спрашиваю как лучше сделать.
1) - денег есть? много?
2) можно просто текстом.. можно rtf.. можно xml... всяко можно... :(
3)-
4) -это зависит от того, в каком формате хранить.
5) - (если я правильно понял) - ведет к изучению энтой технологии.
-
При нужде - я бы и на FB все сделал... Эх.. Жаль счас на мсскл основная работа... Такое г...
-
> Жаль счас на мсскл основная работа... Такое г...
и не говори
> 1) - денег есть? много?
в наше-то время? и много?
-
> DmitrichJ (04.08.09 01:34) [8]
> в наше-то время? и много?
Ну.. есть и бесплатное... зависит от предполагаемых объемов.
-
>turbouser © (04.08.09 01:24) [7]
>Эх.. Жаль счас на мсскл основная работа... Такое г...
Это обычное впечатление при переходе с ИБ на МССКЛ. Однако через некоторое время оно сильно меняется :)
-
> При нужде - я бы и на FB все сделал... Эх.. Жаль счас на
> мсскл основная работа... Такое г...
Это IB/FB - г..но ужасное. На MSSQL данная задача решается часовым вдумчивым читанием хелпа и наведением FTS на данное поле (я с абсолютного нуля в FTS за день разобрался).
-
> Это IB/FB - г..но ужасное
зато маленькое и бесплатное :D
-
> зато маленькое и бесплатное :D
Это единственные его достоинства.
Кстати, в природе MSSQL Express Edition есть. Тоже бесплатное.
-
> Ega23 (04.08.2009 13:27:13) [13]
Маленькое что, размер дистрибутива и место на диске, да лучше бы побольше было бы, побогаче.
-
> Кстати, в природе MSSQL Express Edition есть. Тоже бесплатное.
в курсе. но уже не маленькое
> Это единственные его достоинства.
Ну как же, еще в (почти-)ежегодные конференции в Москве с вкусными бутербродами :D
> Маленькое что, размер дистрибутива и место на диске, да лучше бы побольше было бы, побогаче.
место, оно самое. Ну и FB Embedded, для своих задач весьма удобен.
-
> В каком формате лучше его хранить в БД (а может и не в БД)
> и каким образом организовывать поиск в тексте по вхождению?
> Как обрабатывать ссылки в этом тексте?
хранить в виде chm, использовать стандартный поиск. И никакой базы не надо :)
-
Сейчас правда FB Embed в сегменте встраиваемых СУБД сильно подвинут SQLite. И вообще проект firebird скорее мертв чем жив, очень медленно развивается.
-
Ну не знаю, я бы индекс слов по тексту построил и по нему искал.