SEARCH ENGINES - Prepared By Chinmay Patel [09BCE038] - Under guidance of Dr. Sanjay Garg
Flow of presentation
Different search engines
Working of search engines
Advanced search techniques of google
Pie chart of different search engines
eg. Search engine market share in the US .
A web search engine is designed to search for
information on the World wide web and FTP servers.
The search results are generally presented in a list of
results and are often called hits.
The information may consist of web pages, images,
information and other types of files.
Some search engines also have mine data available in
databases or open directories.
Unlike web directories, which are maintained by human
editors, search engines operate algorithmically or are a mixture of algorithmic and human input.
Today there are many search engines.
e.g. Google, Yahoo, Aol, Safari, msn etc.
Today Google at the top in search engine. The reason is
its creativity only.
The very first tool used for searching on the Internet was
Archie. The name stands for "archive" without the "v".
It was created in 1990 by Alan Ematage , Bill Heelan and
J. Peter Deutsch, computer science students at McGrill University in Montreal.
The program downloaded the directory listings of all the
files located on public anonymous FTP (File Transfer protocol) sites, creating a searchable database of file names; however, Archie did not index the contents of these sites since the amount of data was so limited it could be readily searched manually.
Around 2000, Google’s search engine rose to
prominence. The company achieved better results for many searches with an innovation called Page Rank. This iterative algorithm ranks web pages based on the number and Page Rank of other web sites and pages that link there, on the premise that good or desirable pages are linked to more than others.
By 2000, Yahoo! was providing search services based on
Inktomi's search engine. Yahoo! acquired Inktomi in 2002, and Overture(which owned Alltheweb and AltaVista) in 2003. Yahoo! switched to Google's search engine until 2004, when it launched its own search engine based on the combined technologies of its acquisitions.
How web search engine works High-level architecture of a standard Web crawler
A search engine operates, in the following order
1. Web Crawling 2. Indexing 3. Searching
Web search engines work by storing information about many web pages, which they retrieve from the html itself.
These pages are retrieved by a Web Crawler — an automated Web browser which follows every link on the site. The contents of each page are then analyzed to determine how it should be indexed (for example, words are extracted from the titles, headings, or special fields called meta tags ).
Data about web pages are stored in an index database for use in later queries. A query can be a single word. The purpose of an index is to allow information to be found as quickly as possible.
When a user enters a query into a search engine the engine examines its index and provides a listing of best-matching web pages according to its criteria, usually with a short summary containing the document's title and sometimes parts of the text.
The index is built from the information stored with the data and the method by which the information is indexed. Unfortunately, there are currently no known public search engines that allow documents to be searched by date.
Most search engines support the use of the boolean operators AND, OR and NOT to further specify the search query.
The engine looks for the words or phrases exactly as entered.
Some search engines provide an advanced feature called proximity search which allows users to define the distance between keywords.
Natural language queries allow the user to type a question in the same form one would ask it to a human. A site like this would be ask.com.
The usefulness of a search engine depends on the relevance of the result set it gives back.
While there may be millions of web pages that include a particular word or phrase, some pages may be more relevant, popular, or authoritative than others.
Most search engines employ methods to rank the results to provide the "best" results first.
How a search engine decides which pages are the best matches, and what order the results should be shown in, varies widely from one engine to another. The methods also change over time as Internet usage changes and new techniques evolve.
Most of Search engines provide these facilities free then how they make money.
Most Web search engines are commercial ventures supported by advertising revenue and , as a result , some employ the practice of allowing advertisers to pay money to have their listings ranked higher in search results.
Some search engines which do not accept money for their search engine results make money by running search related ads alongside the regular search engine results.
The search engines make money every time someone clicks on one of these ads.
A Web crawleris a computer program that
browses the World Wide Web in a methodical, automated manner or in an orderly fashion. Other terms for Web crawlers are ants, automatic indexers, bots, Web spiders, Web robots, Web scutters.
This process is called Web crawling or spidering. Many
sites, in particular search engines, use spidering as a means of providing up-to-date data.
Web crawlers are mainly used to create a copy of all the
visited pages for later processing by a search engine that will index the downloaded pages to provide fast searches.
Crawlers can also be used for automating maintenance
tasks on a Web site, such as checking links or validating HTML code. Also, crawlers can be used to gather specific types of information from Web pages, such as harvesting e-mail addresses (usually for sending spam).
Spiders take a Web page's content and create key search words that enable online users to find pages they're looking for.
How web crawler works is shown in figure.
Web Crawlers are the heart of search engines.
They continuously keep on crawling the web and find new web page that have been added to the web ,pages that have been removed from the web.
When you query a search engine to find information, it is actually searching through the database which it has created and not actually searching the Web. Therefore result is provided within sort span of time by search engine.
They will begin with a popular site,indexing the words on its page and following every link found within site.
Multiple web crawlers can be used at a time.
Google began as an academic search engine.
It built its initial system to use multiple spiders,usually 3 at a time.
Each spider could keep 300 connections to web pages open at a time.
At its peak performance,its system can crawl over 100 pages per second , generating around 600 kilobytes of data each second.
Google had its own DNS that translates a server’s name (URL) into an address in order to keep delays to a minimum.
When the google spider looked at an HTML pageit looks words within page occuring in the title,subtitles,meta tags etc.
It was built to index every significant word on a page,leaving out the articles a,an, and the.
Differents approaches usually attempt to make the spider operate faster and efficiently.
Some spider will keep track of the words in the title,sub-headings and links,along with 100 most frequently used words on the page and each word in the first 20 lines of text.
Lycos uses this approach to spider the web.
Altavista index every single word on a page,includinga,an,the and other significant words.
Yahoo! is pretty good at crawling sites deeply so long as
they have sufficient link popularity to get all their pages indexed.
One note of caution is that Yahoo! may not want to
deeply index sites with many variables in the URL string, especially since Yahoo! already has a boatload of their own content they would like to promote (including verticals like Yahoo! Shopping)
Yahoo! offers paid inclusion for deeply index database contents.
Some advance techniques for searching
Google provides some special commands that we can use to get more specific results back from searches.
The most well-known of these special commands is the "key phrase" with which we place a key phrase in double quotes, for example ["Indian restaurant"] which will then only show results for that exact phrase, as opposed to typing the same query without the double quotes and getting a result-set that matches both words but not necessarily in the exact same position they were typed.
But lesser-known command is the +inclusion command which forces the indicated word to be included in the search, for example if we want to search for the 60s English rock band ‘The Animals’, we could type [+The Animals] to force the word ‘The’ to be used as well as ‘Animals’.
Another of the basic commands is the OR operator. If we write [+hotels OR resorts] and we'll notice that the results produce just that : web pages for either key phrase: hotels or resorts.
Another is wild card operator (*), for example : [the * animals] will show results for the farm animals, the little animals, and so on.