4.2.1 Search engines: what are they?
The computer application that facilitates finding things on the web is known as a search engine. This is an application that serves a similar function to an index in a book. Figure 9(a) shows the home page of a typical search engine called Google.
There is a single box shown in Figure 9(a) into which keywords (words or terms that identify and distinguish topics from other topics) are typed. The keywords used in Figure 9(a) are ‘rugby’ and ‘wales’.
The use of ‘Rugby’ and ‘Wales’ would produce the same results.
When the button labelled ‘Google Search’ is clicked (or the ‘Return’ key is pressed), the search engine finds and returns a list of references to any websites which match all the keywords. Figure 9(b) shows the results of search for 'Rugby Wales'. In this case there are more results than will fit on a single screen, and only the first screenful of results is shown.
There are a number of references to the game of rugby in Wales, with the first being to the Welsh Rugby Union's home page. Each of the entries in blue (and also those underlined) can be clicked on to see more detailed information.
The web is full of its own special jargon, abbreviations and acronyms. An example is the term surfing, which refers to the process of wandering around the web searching for information. The term ego surfing describes the act of looking for information about oneself.
Yahoo and Lycos are also web search engines. Like Google, they find results based on keywords, although you may find that each gives slightly different results to the same search. Figure 10 shows two displays, one from Google and one from Lycos, using the same keywords: ‘maps in history’.
Different search engines give different results owing to the way in which they classify websites, and the relative importance they give to different features.
As the web changes constantly, repeating a search a few days later may well produce slightly different results. It is instructive to understand the steps involved when a web search engine is used; assume you have run your browser, invoked a search engine and chosen the keywords you are interested in. You will learn how to invoke a search engine in activity 1.
It is instructive to understand the steps involved when a web search engine is used; assume you have run your browser, invoked a search engine and chosen the keywords you are interested in.
The keywords are transmitted over the internet to a special computer known as a web server. This web server contains an index to websites. Each website is associated with a series of keywords which can be found in the site's title, address or contents. The index keywords and the user's requested keywords are compared by the server.
The web server then retrieves references to those websites that contain the right keywords and sends details of each reference back to the user's browser.
The browser then displays the references for the user.
Here data (the keywords) is used to assemble information (the references to websites) but I have introduced some additional ideas here.
Computers can communicate with each other, and two or more computers can cooperate to provide a service to users.
Some remote computer, the web server, contains data that the user, who could be anywhere in the world, wants to access. This web server computer holds the index used to select those websites relevant to a user's search.
Possibly the most important idea is concerned with the sentence in step 2, 'The web server then retrieves references to those websites that contain the right keywords …'. The computer certainly does this, but how? The answer is that a computer program stored inside a computer carries out the actions necessary to do whatever it is that the computer system is designed for (in this case, to search through an index of websites seeking keywords that match the user's request).
A computer program is essentially a step-by-step set of instructions that tell the computer what to do. In other words, it's analogous to a cookery recipe. Computer programs are often referred to as software programs or simply programs. Notice the spelling of the word 'program'.
Translated into English the instructions in a computer program (all written in specially designed language) might read as follows:
extract the keywords from the user's search engine web page;
send the keywords to the web server.
This would happen on the user's computer (often referred to in this context as a client). On the web server, the instructions might be:
extract each keyword from the message sent by the user's browser over the internet;
search the index for all websites that contain all the keywords.
Computer programs can be as small as a few instructions or contain hundreds of thousands of instructions.