Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Libraries > Zend Framework


Автор: sprinterv 29.8.2008, 21:54
Есть БД MySql, в ней есть таблица "Оборудование" с такими полями:

      - название оборудования
      - описание оборудования

Нужно создать полнотекстовый поиск по этим полям с использованием Zend_Lucene.

Вопрос: Zend_Lucene производит поиск по  полям БД MySql, есть ли возможность проиндексировать БД?

В документации я не нашел способа поиска по БД.

С уважением, Роман 

Автор: HackMan 30.8.2008, 02:03
The Apache Lucene - это библиотека для высокоскоростного полнотекстового поиска, которая написана на яве и перенесена на другие языки. Для языка PHP - это как раз Zend_Lucene. Одна из основных особенностей этой библиотеки - это высокая скорость индексации. В общем, ближе к делу -> http://framework.zend.com/manual/ru/zend.search.lucene.index-creation.html  smile 

Автор: sprinterv 30.8.2008, 10:21
Цитата(HackMan @ 30.8.2008,  02:03)
The Apache Lucene - это библиотека для высокоскоростного полнотекстового поиска, которая написана на яве и перенесена на другие языки. Для языка PHP - это как раз Zend_Lucene. Одна из основных особенностей этой библиотеки - это высокая скорость индексации. В общем, ближе к делу -> http://framework.zend.com/manual/ru/zend.search.lucene.index-creation.html  smile

Да, но я не понимаю, как индексировать саму БД.  
Все, что я вижу, так это индексация файлов по url

Автор: Daevaorn 30.8.2008, 11:15
По ссылке в начале приведены примеры создания базы индекса и документов в нем. Вот так и индексируйте свои данные.

Автор: sprinterv 30.8.2008, 11:42
Цитата(Daevaorn @ 30.8.2008,  11:15)
По ссылке в начале приведены примеры создания базы индекса и документов в нем. Вот так и индексируйте свои данные.

Не могли бы Вы привести простой пример?
С уважением, Роман

Автор: sprinterv 30.8.2008, 14:21
Хорошо, есть таблица Оборудование. 
Каким образом построить индекс по ней и осуществлять поиск, если данные находятся в БД?

Автор: Daevaorn 30.8.2008, 14:59
- Вы должны создать индексную базу для оборудования
- пройтись по всем записям в таблице оборудования
- для каждой записи создать структурированный документ и занести его в индексную базу

А вообще советую вам поизучать теорию индексирования и принципы построения индексных движков.

Автор: sprinterv 30.8.2008, 15:10
Спасибо всем! Тема закрыта. Спасибо Daevaorn

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)