powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Индексация html документов
33 сообщений из 33, показаны все 2 страниц
Индексация html документов
    #39032290
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите чем можно проиндексировать html документ. Нужно добавить в БД чтобы иметь возможность поиска. Лучше даже не полный текст документа а ключевые слова.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032471
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9Подскажите чем можно проиндексировать html документ. Нужно добавить в БД чтобы иметь возможность поиска. Лучше даже не полный текст документа а ключевые слова.

Нафиг, нафиг БД для таких случаев.
Погуглите lucene и solr.
Это то что вам нужно.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032689
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mad_nazgul, а если нужно привязать к записи в БД? Нужно по тексту документа получить его ID в БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032690
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9Подскажите чем можно проиндексировать html документ. Нужно добавить в БД чтобы иметь возможность поиска. Лучше даже не полный текст документа а ключевые слова.
В принципе Lucene схавает Html. Только входной поток желательно очистить от теговой разметки. Иначе
поиск по font, head может стать более релевантный чем по реальному содержимому.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032714
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При помощи Jsoup можно очистить от HTML разметки. Вопрос в другом. Они разве умеют взаимодействовать с БД? У документа есть какие-то критерии и нужно найти не просто документ по тексту а вместе с этими критериями (например документ искали 10 раз и в его тексте есть ЗАПРОС).
...
Рейтинг: 0 / 0
Индексация html документов
    #39032724
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, не совсем понятно что вы хотите. Можно в документ Lucene добавить поля doc_id, которое будет ключ к записи в БД.
Изменения делать в транзакции для консистентности.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032726
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. из Lucen'а получать список документов, которые удовлетворяют запросу, извлекать из этого списка id, и уже по этим id строить запрос с критериями в БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032727
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Готовое решение есть в Hibernate Search
...
Рейтинг: 0 / 0
Индексация html документов
    #39032741
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdmТ.е. из Lucen'а получать список документов, которые удовлетворяют запросу, извлекать из этого списка id, и уже по этим id строить запрос с критериями в БД.
наоборот. Полнотекстовый поиск в конце.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032746
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123, как интересно Вы организуете поиск по запросу и с ограничением на id? BitSet? Только это не будет NRT.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032752
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdm,
форма поиска такая?
http://www.sql.ru/forum/actualsearch.aspx?bid=38
...
Рейтинг: 0 / 0
Индексация html документов
    #39032754
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123, Я не топистартер) Для такой формы lucene хватит(фильтрация). Как я понял, у z3r9 данные документа меняются, если этот документ оказывается в выдаче(счетчик и какие-то поля нужно обновить).
...
Рейтинг: 0 / 0
Индексация html документов
    #39032758
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdmДля такой формы lucene хватит(фильтрация)
на этом и порешим)).
Кстати, глюк есть в поиске на SQL_RU))
...
Рейтинг: 0 / 0
Индексация html документов
    #39032763
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdm, да, нужен изменяемый элемент типа счетчика.

Petro123, мне тоже интересно возможно ли выполнить полнотекстовый поиск в конце. И как быть если большое число документов и так искать.

Форма поиска такая только нужно со счетчиком. А ну и еще чтобы как в том примере был поиск в нескольких группах (добавление/исключение). Найти в группе (или исключить) groupID: 1, 2, 8.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032770
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, еще раз. Что изменяется в абстрактном документе, если он попадает в выдачу пользователю? Изменяется только счетчик?
...
Рейтинг: 0 / 0
Индексация html документов
    #39032778
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdm, да, только счетчик.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032781
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, мне кажется тут Hibernate Search как раз или документ в индексе lucene + запись в БД
...
Рейтинг: 0 / 0
Индексация html документов
    #39032790
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdm, посмотрел документацию по hibernate search интересная штука. Но как туда добавить сторонний html документ. Как я понял там можно только самому получить документ, вырезать теги и добавить его в БД. А можно ли без добавления в БД текста html документа?

И еще вопрос по поводу nutch. Ему можно задать из БД где искать html документы. Например проиндексировать sql.ru/blogs/ и www.sql.ru/books/. Ну и сделать добавление в БД и в lucene. Это было бы вообще супер.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032794
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9,
1) Получить HTML/PDF/DOC документ который нужно проиндексировать.
Это задача Web crawler.

2)Извлечь из HTML/PDF/DOC документа данные для индексации.
Это делает Jsoup(HTML)/ Apache Tika(остальное)

3)Проиндексировать данные полученные на шаге 2.
Это задача Lucene/Solr/ElasticSearch и другие.

При использовании Hibernate Search Вы сами должны выполнить действие 1 и 2.
Затем полученные данные присваиваете полям объекта, который использует нужные аннотации.
Все остальное берет на себя Hibernate Search(выполняет шаг 3 и позволяет искать по индексу).
...
Рейтинг: 0 / 0
Индексация html документов
    #39032801
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdm, я правильно понимаю что hibernate search добавляет то что нужно для поиска в Lucene а остальное в БД. То есть полный текст html документа не будет хранится в БД а только в Lucene?

Ну и будет замечательно если кто-то сталкивался и подскажет по nutch. Можно ли его заставить работать с hibernate search/Lucene+БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032805
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, не могу точно сказать, но думаю можно, чтобы часть данных были только в индексе lucene, а часть только в БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39032819
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9mad_nazgul, а если нужно привязать к записи в БД? Нужно по тексту документа получить его ID в БД.

Для вашей задачи БД не нужно, от слова совсем.
Solr позволяет создавать "структуру" индекса.
Грубо говоря это и будет ваша табличка.
По такому индексу можно делать запросы.

Если все так хотите "приключений", то некоторых БД есть полнотекстовый поиск.
Но лучше этого не делать.
Хотя... Никто вам не мешает этого делать.
Удачи в "приключении" :-)
...
Рейтинг: 0 / 0
Индексация html документов
    #39033516
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mad_nazgul, solr же использует сервер что для моей задачи не очень удобно, зачем держать несколько серверов. А в чем его преимущества я пока не вижу. Попробую сначала Hibernate Search. Надеюсь там можно будет настроить чтобы текст документа в БД не хранился.
...
Рейтинг: 0 / 0
Индексация html документов
    #39033523
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел сравнение Solr - Elastic. Возможно пригодится автору.
http://solr-vs-elasticsearch.com/
...
Рейтинг: 0 / 0
Индексация html документов
    #39033558
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton, Да оно в общем-то понятно в чем отличие. Мне можно и lucene использовать и solr. С индексацией данных мне не совсем ясно, если использовать nutch. А именно как из БД взять источники которые нужно индексировать и как потом передать эти данные в solr/lucene и БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39033606
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9mayton, Да оно в общем-то понятно в чем отличие. Мне можно и lucene использовать и solr. С индексацией данных мне не совсем ясно, если использовать nutch. А именно как из БД взять источники которые нужно индексировать и как потом передать эти данные в solr/lucene и БД.

В сомом solr есть примеры как работать с БД.
Т.е. индекс строит solr и хранит у себя.
Вообще-то в данной "конфигурации" БД лишнее звено.
Т.е. все равно информацию хранить и выдавать будет solr.

А так посмотрите на "нативные" средства полнотекстового поиска для своей БД.
Почти все крупные БД они имеют.
Но solr/lucene гораздо более удобный инструмент.
...
Рейтинг: 0 / 0
Индексация html документов
    #39033662
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9mayton, Да оно в общем-то понятно в чем отличие. Мне можно и lucene использовать и solr. С индексацией данных мне не совсем ясно, если использовать nutch. А именно как из БД взять источники которые нужно индексировать и как потом передать эти данные в solr/lucene и БД.
Насколько я понимаю тут проблема в том что трудно сделать JOIN между БД и хранилищем Lucene.
Можно изучить язык QueryLang и написать что-то вроде

Код: java
1.
Лев + Толстой ext:pdf doc_id in (1,2,3,4.......)



Где подмножество doc_id мы получаем предварительно из SQL БД.

Но я сомневаюсь в успехе этого мероприятия. Возможно Query expr имеет лимоиты.

Можно попробовать унаследоваться от Query и доработать его до поддержки JOINS.

Можно подумать о кластеризации. Если doc_id бьються на группы то можно создать несколько
хранилищ Lucene по поличеству кластерных групп.
...
Рейтинг: 0 / 0
Индексация html документов
    #39033956
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mad_nazgul, то как они (solr/lucene) работают мне понятно. В solr документы передаются через json а с lucene работаешь как с библиотекой.

Логика такая:
1) Добавляем адрес документа в сети в БД и получаем его идентификатор.
2) Добавляем в solr/lucene новый документ.

Вопрос у меня в том что если работать с Nutch то как в него можно впихнуть эту логику. Я видел пример как сделать импорт в БД или в solr из Nutch . Но я не видел возможность гибридной работы.

Ну и остается вопрос как вообще в Nutch передать адреса которые нужно проиндексировать из БД.
...
Рейтинг: 0 / 0
Индексация html документов
    #39034031
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9mad_nazgul, то как они (solr/lucene) работают мне понятно. В solr документы передаются через json а с lucene работаешь как с библиотекой.

Логика такая:
1) Добавляем адрес документа в сети в БД и получаем его идентификатор.
2) Добавляем в solr/lucene новый документ.

Вопрос у меня в том что если работать с Nutch то как в него можно впихнуть эту логику. Я видел пример как сделать импорт в БД или в solr из Nutch . Но я не видел возможность гибридной работы.

Ну и остается вопрос как вообще в Nutch передать адреса которые нужно проиндексировать из БД.

Я же говорю.
Если работаете с solr, то проще работать только в рамках solr.
Всякие "гибридные" схемы выльются в геморрой при реализации.
А решение будет зависит от конкретной задачи.
...
Рейтинг: 0 / 0
Индексация html документов
    #39034068
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, я не могу понять почему Вы так хотите использовать Nucth. С чем это связано?
...
Рейтинг: 0 / 0
Индексация html документов
    #39034115
z3r9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mad_nazgulЕсли работаете с solr, то проще работать только в рамках solr.

mad_nazgul, нужно в результате поиска получить id записи. А также в БД должна быть запись о документе.

rdm, нужно проиндексировать ресурсы которые в БД добавлены. Например в БД добавлен www.sql.ru/forum/ и нужно его проиндексировать. А Nutch хотел бы использовать потому что это готовое решение. Иначе придется что-то свое делать как я и хотел изначально.
...
Рейтинг: 0 / 0
Индексация html документов
    #39034255
rdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9, посмотрите на эти решения, мне кажется они проще nutch
http://www.norconex.com/collectors/
...
Рейтинг: 0 / 0
Индексация html документов
    #39034432
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
z3r9mad_nazgulЕсли работаете с solr, то проще работать только в рамках solr.

mad_nazgul, нужно в результате поиска получить id записи. А также в БД должна быть запись о документе.

rdm, нужно проиндексировать ресурсы которые в БД добавлены. Например в БД добавлен www.sql.ru/forum/ и нужно его проиндексировать. А Nutch хотел бы использовать потому что это готовое решение. Иначе придется что-то свое делать как я и хотел изначально.
Для solr есть примеры в полном дистрибутиве, для работы с БД.
Грубо говоря, вы создаете "табличку" в solr с нужными вам полями и по ним строите индекс.
Кроме того эти поля можно сохранять в "БД"-solr.
Там же можете сохранять id БД.

Схема работы приблизительно такая (считаем, что структур в solr и индексация уже есть):
1) Делаем запрос в solr
2) Получаем список id
3) По списку id делаем запрос в вашу БД

В общем "геморрой".
Проще отказаться от работы с БД :-)
...
Рейтинг: 0 / 0
33 сообщений из 33, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Индексация html документов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]