Search Engine у ​​Java?

  1. I am trying to create a search engine just to learn and get more experience in Java.

    My intention is to store about 100 files on a server, a mixture of html, xml, doc, txt, and for each file to have meta data.

    SO when i search for a keyword, it should display a file with its meta description like Google.

    My question is, apart from html, can you add meta data to any other file formats, so that the meta description is shown.

  2. Would you be able to point me towards a Java search engine, that can search within file formats (txt,html) and display the result.

    I am working on my own code for this, but would like to have a look at other peoples code for some help?

10

8 адказы

Lucene is the canonical Java search engine.

Для дадання дакументаў з розных крыніц, паглядзіце на Apache Ціка і для поўнамаштабнай сістэмы з абслугоўваннем/вэб-інтэрфейсы, Solr .

Lucene дазваляе адвольна метададзеныя, якія будуць звязаныя з яго дакументамі. Цік будзе аўтаматычна адбіраць метададзеныя з розных фарматаў.

26
дададзена
<�Р> 1) Маё пытанне, акрамя HTML вы можаце дадаць мета-дадзеныя ў любыя іншыя фарматы файлаў, так што мета апісанне адлюстроўваецца.

Увогуле, вы б выкарыстоўваць базу дадзеных і захоўваць метададзеныя разам з дакументам там. Вы б затым зрабіць пошук па ключавых словах з дапамогай звароту ў базу даных (магчыма, з выкарыстаннем SQL, як і ILIKE).

Гэтыя файлы могуць быць альбо захаваны на цвёрдым дыску з дапамогай ўсяго шляху ў БД або змясціць у базу дадзеных альбо як CLOB або BLOB, у залежнасці ад таго, ці ёсць у вас тэкст або двайковыя дакументы.

<�Р> 2) Вы б быць у стане пазначыць быць накіраваны да пошукавай сістэме Java, якая можа шукаць у фарматах (TXT, HTML) і адлюстроўвае вынік.

Паспрабуйце Apache Lucene .

4
дададзена
  • Google ignores completely meta descriptions nowadays, because it has been either abused, or not filled with significant values
  • Lucene and/or Solr might do what you want, take a look.
  • 100 files is a very small amount, you won't have any problem to manage this amount of data in any way you like, if it's for exercise.
3
дададзена

... Lucene і Solr прыходзяць на розум у якасці кода далёка іншых людзей занепакоены.

3
дададзена

Сапраўды добры Lucene . Ёсць шмат убудова (што дазволіла б, напрыклад, вы чыталі з .doc), падтрымка некалькіх моў і многіх алгарытмаў (напрыклад, адлегласць Левенштейн)

3
дададзена

Look at apache nutch

Apache Nutch is an open source web-search software project.

Nutch будуе на вяршыні Lucene/Solr для індэксацыі, ТВК для сінтаксічнага аналізу дакументаў, і дадае свой уласны вэб-сканар.

3
дададзена

Вы павінны будзеце выкарыстоўваць некалькі бібліятэк. Перш за ўсё, як ужо згадвалася шмат людзей, перш чым вы можаце выкарыстоўваць Lucene зрабіць фактычны пошук. Тым не менш, Lucene апрацоўвае толькі просты тэкст, так што вам трэба, каб атрымаць гэта з файлаў індэкса. Для гэтага можна выкарыстоўваць Apache Ціка .

Для пачатку, вы павінны, верагодна, купіць кнігу Lucene у дзеянні 2-е выданне . Большасць прыкладаў у значыць яшчэ да цяперашняга часу. Калі вы хочаце быць скнара вы таксама можаце проста паглядзець на пастаўленым зыходны код на гэтай старонцы.

3
дададзена

Apache Tika to extract metadata.

<�Р> Apache Цік Апач Цік інструментар з'яўляецца ASFv2 ліцэнзаваць з адкрытым зыходным кодам   Інструмент для здабывання інфармацыі з электронных дакументаў. ціка дазваляе   пошукавыя сістэмы, сістэмы кіравання кантэнтам і іншыя прыкладання,   працаваць з рознымі відамі электронных дакументаў, лёгка выявіць і   здабывання метададзеных і змесціва ўсіх асноўных фарматаў файлаў.
2
дададзена