Your SlideShare is downloading. ×
Introduction to Search Engines
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introduction to Search Engines


Published on

This presentation gives an introduction to the Search Engines. What are they? How do they work? …

This presentation gives an introduction to the Search Engines. What are they? How do they work?
It also has a brief introduction to Solr and Lucene

Published in: Technology

1 Comment
No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. ENTERPRISE SEARCH an introduction
  • 2. Web Search Desktop Search Enterprise Search
  • 3. so what is a Search Engine?
  • 4.
    • a SOFTWARE
    • that builds index on Text
    • answers queries using that index
  • 5. Any search application has two major components SEARCH component INDEXING component - of importance to us developers (read headache) - of importance to the users
  • 6. data INDEX FILES is indexed user sends search query receives search results INDEXING component SEARCH component
  • 7. Let’s start with INDEXING
  • 8. is it easy to search here . . .
  • 9. or here . . .
  • 10.
    • that’s information like garbage
    • no structure
    • comes in all kinds of
    • shapes, sizes, formats
  • 11.
    • And this is what indexing does
    • Makes data accessible in a structured format , easily accessible through search.
  • 12. so what all needs to be Indexed and Searched ?
  • 13. various FILE FORMATS Text Files HTML PDF MS Word PPT
  • 14. coming from various DATA SOURCES Emails CMS File System Database Web Pages
  • 15. data ( documents ) INDEX FILES user sends search query receives search results Analyzer fed to text that should be indexed removing stop words such as "a" or "the" converting all text to lowercase letters for case-insensitive searching Stemming (A stemming algorithm reduces the words "fishing", "fished", "fish", and "fisher" to the root word, "fish". )- Index Writer tokenized text
  • 16. Document 1: Coffee isn't my cup of tea. Document 2: Chocolate, men, coffee - some things are better rich. INDEX coffee - 1,2 cup - 1 tea - 1 chocolate - 1 men - 1 things - 1 better - 1 rich - 1
  • 17. And now the SEARCH Component
  • 18. data INDEX FILES is indexed user receives search results sends search query search terms
  • 19. Search Request Terms Taxonomy Spelling Index Correct Search Terms + Incorrect Search Terms Search Terms + Related Terms from Taxonomy + Concept IDs Search engine (INDEX) Search results with 1) Actual Location of the result 2) Rank 3) Details 4) Facet Categorization Results’ Page
  • 20. introducing LUCENE
  • 21.
    • Full-text search library
    • Open Source
    • Documents in xml format
    • Can operate on its own or via Solr
  • 22.  
  • 23.  
  • 24. Ways of storing fields of any document: Indexed means it is searchable Stored you may chose not to make a field searchable, means the content can be displayed in the search results. Example : “ summary associated with a page ” Tokenized means it is run through an Analyzer , that converts the content into a sequence of tokens
  • 25. introducing SOLR Solr Solr Lucene Index
  • 26.
    • open source
    • handles index/Query to Lucene via HTTP and XML ( also JSON )
    • manages document update , add and delete requests to Lucene
    • straightforward schema and config files
    • comprehensive HTML Admin Interfaces
    • highly configurable
  • 27. Adding Documents to SOLR
  • 28.
    • HTTP POST to /update
    • <add><doc boost=“2”>
    • <field name=“type”>05991</field>
    • <field name=“from”>Apache Solr</field>
    • <field name=“subject”>An intro...</field>
    • <field name=“category”>search</field>
    • <field name=“category”>lucene</field>
    • <field name=“body”>Solr is a full...</field>
    • </doc></add>
  • 29. Schema.xml field indexing and display definition
  • 30.
    • <field name=&quot;subject&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot; multiValued=&quot;true&quot;/>
    • <field name=&quot;genus_species&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot; multiValued=&quot;true&quot;/>
    • <field name=&quot;language&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot; multiValued=&quot;true&quot;/>
    • <field name=&quot;creator&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot; multiValued=&quot;true&quot;/>
    • <field name=&quot;control_num&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot; multiValued=&quot;true&quot;/>
    • <field name=&quot;title_sort&quot; type=&quot;string&quot; indexed=&quot;true&quot; stored=&quot;false&quot;/>
  • 31. Solrconfig.xml file defines cache size, faceted field type, request handler customization
  • 32. Deleting Documents
    • Delete by Id
    • <delete><id>05591</id></delete>
    • Delete by Query (multiple documents)
    • <delete>
    • <query>manufacturer:microsoft</query>
    • </delete>
  • 33. Search Results http://localhost:8983/solr/select?q=video&start=0&rows=2&fl=name,price
  • 34. Default Parameters http://localhost:8983/solr/select?q=video&start=0&rows=2&fl=name,price param default description q The query start 0 Offset into the list of matches rows 10 Number of documents to return fl * Stored fields to return qt standard Query type; maps to query handler df (schema) Default field to search
  • 35. <response><responseHeader><status>0</status> <QTime>1</QTime></responseHeader> <result numFound=&quot;16173&quot; start=&quot;0&quot;> <doc> <str name=&quot;name&quot;>Apple 60 GB iPod with Video</str> <float name=&quot;price&quot;>399.0</float> </doc> <doc> <str name=&quot;name&quot;>ASUS Extreme N7800GTX/2DHTV</str> <float name=&quot;price&quot;>479.95</float> </doc> </result> </response>
  • 36. Solr Core Lucene Admin Interface Standard Request Handler Disjunction Max Request Handler Custom Request Handler Update Handler Caching XML Update Interface Config Analysis HTTP Request Servlet Concurrency Update Servlet XML Response Writer Replication Schema Search Requests hit here New document to be added here
  • 37.