KR101466182B1 - Method and apparatus for internet search - Google Patents

Method and apparatus for internet search Download PDF

Info

Publication number
KR101466182B1
KR101466182B1 KR1020130011894A KR20130011894A KR101466182B1 KR 101466182 B1 KR101466182 B1 KR 101466182B1 KR 1020130011894 A KR1020130011894 A KR 1020130011894A KR 20130011894 A KR20130011894 A KR 20130011894A KR 101466182 B1 KR101466182 B1 KR 101466182B1
Authority
KR
South Korea
Prior art keywords
ranking
calculation formula
search
module
information
Prior art date
Application number
KR1020130011894A
Other languages
Korean (ko)
Other versions
KR20140099089A (en
Inventor
고삼일
고은정
김동민
김신영
김홍모
남현우
도기원
심재훈
이숙영
임승현
조해공
조해란
한준희
홍윤정
황지수
Original Assignee
케이티하이텔 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 케이티하이텔 주식회사 filed Critical 케이티하이텔 주식회사
Priority to KR1020130011894A priority Critical patent/KR101466182B1/en
Publication of KR20140099089A publication Critical patent/KR20140099089A/en
Application granted granted Critical
Publication of KR101466182B1 publication Critical patent/KR101466182B1/en

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)

Abstract

The present invention relates to an Internet search engine, and more particularly, to a method and a device for performing the same that can conveniently change a ranking calculation formula that calculates a ranking of search results for an inputted search word. A search engine related to an embodiment of the present invention includes a matching module for searching at least one web document related to a search word inputted from a user terminal and calculating at least one ranking element value for each of the at least one web document searched, ; If the value of at least one ranking element calculated for each of the searched web documents is delivered according to the first protocol and the value of at least one ranking element and the first ranking calculation formula of the transmitted at least one web document A scripting engine for generating rank information about the script; And a ranking module for sorting the retrieved at least one web document according to the ranking information when the generated ranking information is transmitted according to the second protocol. Wherein the matching module and the ranking module are implemented through a first programming language and the scripting engine is implemented through a second programming language that does not require type definition and compilation, The ranking information may be generated by referring to the ranking calculation formula.

Description

[0001] METHOD AND APPARATUS FOR INTERNET SEARCH [0002]

The present invention relates to an Internet search engine, and more particularly, to a method and a device for performing the same that can conveniently change a ranking calculation formula that calculates a ranking of search results for an inputted search word.

The Internet has a vast amount of information scattered about the sea of information, and many people are getting various information through the Internet. In the current Internet, web documents created by individuals or organizations are interconnected through hyperlinks, and users are acquiring information through interconnected web documents.

In general, an Internet search engine collects a large number of web documents (web pages or files) existing on the Internet and analyzes, indexes and stores the contents contained therein. In this process, various statistical information such as frequency of words included in each document and connection relation between web documents are also analyzed and stored.

In general, an Internet search engine searches information of pre-indexed web documents with respect to a search query (query) input through a web browser or a search-only application of a terminal that a user can access to the Internet via wired / ) To determine which web pages match the search term. The Internet search engine arranges the unaligned web pages included in the determination result in consideration of various factors, and this process can be referred to as ranking. In other words, ranking is a process for effectively showing a search result intended by a user among many web documents related to a search word. Ranking has been developed to utilize various additional information such as popularity and reliability of a document, creation timing of a document, creator, and source as ranking factors, starting from whether or not a query word is included. A ranking calculation formula that defines how these ranking factors are utilized (for example, how much weight is given to which of the various ranking factors, and which algorithm is combined) is an essential element in the ranking. As a result, how to define the ranking calculation formula directly affects the accuracy of the search engine and the satisfaction of the search engine user.

For this reason, there is a need to frequently change and update the ranking calculation formula in real time in order to provide the search engine user with a more satisfactory search result in response to the demands and trends of the user, Is emerging. However, in general, a search engine requires a specialized knowledge of coding such as C / C ++ in order to describe this ranking calculation formula, and a low level language requiring a compilation process is used for execution. Therefore, in order to provide a search service using a general search engine, a high-level personnel who understands both a low-level programming language for describing a ranking calculation formula, an application programming interface (API) of a search engine, and a ranking factor is required, . In addition, a general search engine requires a compilation process even if the new ranking calculation formula is described as a low-level programming language. Therefore, it is difficult to check the results of the ranking calculation formula immediately because it is difficult to apply in real time.

SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned technical problems, and it is an object of the present invention to provide a method of updating a ranking calculation formula more conveniently and a search engine using the same.

The present invention also provides a method that does not affect a search operation using a ranking calculation formula before updating when updating a ranking calculation formula in real time, and a search engine that can perform the method.

It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, unless further departing from the spirit and scope of the invention as defined by the appended claims. It will be possible.

According to an embodiment of the present invention, there is provided a search engine for searching at least one web document related to a search word input from a user terminal, and for searching at least one ranking element A matching module for calculating a value; If the value of at least one ranking element calculated for each of the searched web documents is delivered according to the first protocol and the value of at least one ranking element and the first ranking calculation formula of the transmitted at least one web document A scripting engine for generating rank information about the script; And a ranking module for sorting the retrieved at least one web document according to the ranking information when the generated ranking information is transmitted according to the second protocol. Wherein the matching module, the ranking module and the scripting engine are implemented through a first programming language and the scripting engine references a first ranking calculation formula described through a second programming language that does not require type definition and compilation To generate the ranking information.

According to an embodiment of the present invention, there is provided an Internet search method comprising: receiving a search word from a user terminal; Searching at least one web document related to the inputted search word in a matching module; Calculating at least one ranking element value for each of the at least one web document retrieved by the matching module; Transmitting a value of at least one ranking element calculated for each web document retrieved to a scripting engine according to a first protocol; Generating ranking information for each of the retrieved at least one web document according to the value of the at least one ranked element and the first ranking calculation formula in the scripting engine; Transmitting the generated ranking information to a ranking module according to a second protocol; Arranging the searched at least one web document according to the ranking information in the ranking module; And outputting the sorted at least one web document as a search result. Wherein the matching module, the ranking module and the scripting engine are implemented through a first programming language and the scripting engine refers to a first ranking calculation formula described through a second programming language that does not require type definition and compilation It is preferable to generate the ranking information.

The ranking calculation formula can be more conveniently updated through the search engine related to at least one embodiment of the present invention.

In particular, according to the present invention, since the ranking calculation formula is described in a programming language that does not require type definition or compilation, the ranking calculation formula can be updated in real time.

Also, according to the present invention, the ranking calculation formula may be updated through the user terminal.

In addition, since the pre-update algorithm is temporarily stored according to a predetermined algorithm, the ranking calculation formula can be updated in real time regardless of the search operation referring to the previous rank calculation formula.

The effects obtained by the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood by those skilled in the art from the following description will be.

1 shows an example of a network configuration in which a search engine according to embodiments of the present invention can be implemented.
FIG. 2A is a block diagram illustrating a process of deriving a search result for a search term entered by a search service user in a search engine according to an exemplary embodiment of the present invention.
FIG. 2B shows an example of a protocol type for symbol exchange between a scripting engine and a ranking module in a search engine according to an exemplary embodiment of the present invention.
FIG. 3 shows an example of various methods for updating the ranking calculation formula in a search engine according to an embodiment of the present invention.
FIG. 4 shows an example of a search engine configuration for stably performing update of a real-time ranking calculation formula in an environment supporting multithreading according to an embodiment of the present invention.
5 is a diagram illustrating a form of a search word input window provided to a user terminal by a search engine for updating a ranking calculation formula according to an embodiment of the present invention.

The following embodiments are a combination of elements and features of the present invention in a predetermined form. Each component or characteristic may be considered optional unless otherwise expressly stated. Each component or feature may be implemented in a form that is not combined with other components or features. In addition, some of the elements and / or features may be combined to form an embodiment of the present invention. The order of the operations described in the embodiments of the present invention may be changed. Some configurations or features of certain embodiments may be included in other embodiments, or may be replaced with corresponding configurations or features of other embodiments.

As described above, ranking is a process for effectively showing a search result intended by a user among many web documents related to a search word, and a key to ranking is a ranking calculation formula that describes how various ranking elements are combined.

However, in general search engine, this ranking calculation formula is required to have expert knowledge in coding such as C / C ++ and is described in low level language requiring compilation process for execution. Therefore, the operation cost of search engine is increased, There is a problem that is difficult to confirm. Of course, even if the ranking calculation formula is described in a low-level language, it is possible to modify the value of the variable such as the weight value, but modifying the logic itself, such as adding a new variable or changing the calculation order, Since it is necessary to change the module itself, it is difficult to satisfy the above-mentioned requirements. For example, if the ranking calculation formula is composed of (popularity * 0.2 + reliability * 0.3 + freshness * 0.5), it is possible to modify the value of a variable such as a weighting value of 0.2 / 0.3, It is not easy to change the logic of the ranking calculation formula itself.

High level Scripting  Description of the ranking calculation formula through language

Therefore, in one embodiment of the present invention, a ranking calculation formula is described in a high-level scripting language in which a type definition and a compilation are not required, and a ranking module calculates a rank of a script It is suggested to use a processing engine. That is, if the related documents are transmitted to the ranking module in an unaligned form together with the related ranking elements through the process of searching the dictionary and the inverse index using a search word in the search engine, the ranking module is described as a high- It queries the script processing engine that references the ranking calculation formula to rank each document. This will be described later in more detail with reference to FIG.

Here, a high-level scripting language refers to a programming language that can directly execute program coding without additional work (for example, compilation) without requiring definition of variables or types such as constants (that is, typeless form). In other words, it can also be referred to as an interpreter language, where an interpreter is a computer program or environment that immediately executes the source code of the programming language. Compared to a compiler that translates source code into machine language.

Examples of such scripting languages include Java Script, Python, and the ruby language. However, this is an exemplary one, and the scripting language referred to in the present invention is not limited to any programming language unless a type line definition and compilation are required as described above. For the sake of convenience, the expression " rank calculation formula "in this specification may be replaced with the expression" RE "

In the present invention, the ranking elements may include text proximity to a search word, popularity and reliability of the document, timing of document creation, author, source, geographical location information, etc., But it is not limited thereto, and any element can be applied as long as it can be referred to in sorting the search result.

Network configuration

An exemplary network configuration in which the present invention may be implemented will now be described with reference to FIG.

1 shows an example of a network configuration in which a search engine according to embodiments of the present invention can be implemented.

The network may include one or more servers and one or more user terminals that are interconnected via the communication network 130. Although FIG. 1 illustrates that two user terminals 110 and 120 and one search engine 140 are connected to each other through a network 130, it is assumed that a user terminal connected through an actual network and a search engine The number may be different.

Here, the user terminals 110 and 120 may include a user entity. Such a user entity may be a device such as a wireless telephone, a personal computer, a personal digital assistant (PDA), a laptop computer, or other type of computing or communication device, and a thread running on these devices. A process, and / or an object executable by these devices.

Search engine 140 may include server entities for collecting, processing, retrieving and / or maintaining web documents in a manner consistent with the present invention. In the embodiments of the present invention, the search engine 140 may search the documents 150 and 151 according to the request of the user terminal and return the search results to the user terminal. For this purpose, the server 140 can browse through the links 150 and 151 existing on the Internet, index the document, and store information related to the document. Of course, along with crawling, web documents may be indexed in a community service or blog service database that is included in the portal that they run, depending on the search engine operator.

As used herein, a "document" should be broadly interpreted as including any machine-readable and machine-storable work product. Examples of such documents include e-mails, websites, files, combinations of files, one or more files embedded in links to other files, newsgroup postings, blogs, text printouts transformed into electronic data, . Generally, in an Internet environment, a document refers to a web page. Web pages often contain textual information and may include other embedded information (meta information, images, hyperlinks, etc.) and / or embedded instructions (such as JavaScript). In the present specification, the term "document" may be replaced with the expression "web document ".

The search engine 140 may be configured such that the functions described above are performed on one entity, and a plurality of entities may perform functions as one search engine by sharing each role.

The communication network 130 may include a telephone network, such as a Local Area Network (LAN), a Public Switched Telephone Network (PSTN), an intranet, the Internet, or a combination of networks.

The user terminals 110 and 120 and the search engine 140 may be connected to the communication network 130 via a wired, wireless, and / or optical connection.

Search procedure

Next, a process of deriving a search result from a search engine according to the present invention will be described with reference to FIG. 2A.

FIG. 2A is a block diagram illustrating a process of deriving a search result for a search term entered by a search service user in a search engine according to an exemplary embodiment of the present invention.

In FIG. 2A, since the search engine matches the keyword matching and ranking process in the search engine, the configuration and explanation for the irrelevant crawling will be omitted for simplicity of description.

Referring to FIG. 2A, a query input by a search service user is transmitted to a search engine 140 through a communication network 130. The matching module 141 firstly sorts the document including the search word among all the indexed documents. For this, the matching module refers to the inverse index data 143 and the dictionary data 142 to find documents related to the search term. Herein, the term 'inverse index' refers to a process of searching for documents including the search term for each search word, in contrast to an index (i.e., indexing) for simply extracting and sorting keywords for each document. That is, the inverse index data may be data obtained by arranging document identifiers (IDs) in word order. The index / inverse indexing technique is so standardized that it will be obvious to those skilled in the art, and a detailed description thereof will be omitted.

Also, the matching module 141 may refer to the proximity calculator to calculate the proximity indicating whether the words included in the web documents found by the search using the dictionary or the inverse index are adjacent to the search word.

Through the above-described process, the matching module 141 can search web documents matching at least one ranking element with respect to a search term, and calculate various ranking element values for each document searched. These web documents can be referred to as "unaligned search results" since they have not been subjected to ranking procedures. Here, the unaligned search result may include identification information corresponding to each document searched, values of the calculated ranking elements, and the like. More specifically, information on each of the documents included in the unaligned search result may be composed of a plurality of fields, and each field has a field name and a field value. Each field is composed of ranking elements (e.g., popularity, document creation date, etc.) derived from the document itself, ranking elements derived from the relationship between the document and the query (e.g., Proximity: text_relevance, etc.).

The unaligned search result is transmitted to the filter module 145. The filter module 145 refers to the document information database 147 storing the document itself and / or the summary information of the document, And deletes the documents that are not suitable for output from the unaligned search result transmitted from the matching module 141. [ For example, the filter module 145 may filter documents that do not meet conditions other than the search term itself, such as date or duration. The search result output from the filter module 145 may be referred to as "unaligned refined search result ".

The unaligned refined search results are again passed to a ranking module (Ranker, 146). The ranking module passes the search results delivered from the filter module 145 to the scripting engine 148 for performing the ranking procedure. The scripting engine 148 refers to one or more rank calculation formulas (REs) 149 described in the high-level scripting language, calculates a rank based on the ranking elements for each document, and outputs the rank information to the ranking module 146 Return. Thus, to refer to the ranking calculation formula, the scripting engine involves the ability to execute code written in a high level scripting language. However, in the present invention, the scripting engine itself is implemented in a low-level language similar to other modules. In other words, the scripting engine is implemented in a low-level language, but can be said to perform operations described in a high-level scripting language.

Here, the one or more ranking calculation formula 149 may be stored in advance in a memory for storing it, or may be temporarily provided by a search service user through a query input method. If the scripting engine 148 does not have a RankExpression input in Query form, the scripting engine 148 may refer to a default ranking calculation formula. When a plurality of ranking calculation formulas are stored in advance, a ranking calculation formula that is designated by default is referred to according to the category of the search word or the type of the ranking factor accompanied by the unordered search result according to the search word, Formulas can be referenced.

A method of inputting the ranking calculation formula in a query form or changing it in a different manner will be described later in detail with reference to FIG.

At this time, the scripting engine and the ranking module can exchange search results in symbol form through a predetermined protocol. To this end, it is desirable that the order in which the types of ranking element fields and the lengths of each field and the values of the fields for each of the documents are placed within the symbol is predetermined by the protocol between the ranking module 146 and the scripting engine 148 Do.

Hereinafter, the input / output protocol for the scripting engine 148 of the ranking module 146 will be described.

For example, assume two ranking calculation equations named "re1" and "re2"

Figure 112013009912201-pat00001

Referring to Equation (1), re1 calculates ranking information using two ranking elements, and re2 refers to re1 again.

Applying an actual field name (in this case, the degree of popularity and the degree of proximity of the query) to this equation is expressed by Equation 2 below.

Figure 112013009912201-pat00002

It is assumed that two kinds of ranking elements are used, the field value of the page_rank field is represented by 4 bits, the field value of the text_relevance field is represented by 5 bits, and the arrangement order of the symbols is page_rank -> text_relevance. In this case, when a 27-bit length symbol is passed from the ranking module 146 to the scripting engine 148, the scripting engine includes three documents in the unordered search result, and each bit can be recognized as follows.

- first bit to fourth bit: field value of page_rank field for document 1

- fifth to ninth bit: field value of text_relevance field for document 1

- 10th bit to 13th bit: field value of page_rank field for document 2

- bit 14 to bit 18: field value of text_relevance field for document 2

- 19th bit to 22nd bit: field value of page_rank field for document 3

- 23rd to 27th bits: the field value of the text_relevance field for document 3

As described above, the scripting engine calculates rank information by substituting each of the two field values for each document into re1 designated by default, and transmits rank information to the ranking module again in a symbol form through a similar protocol. Here, the ranking information may be composed of the result value of the RE calculation itself or may be constituted by a direct ranking.

Another example of the protocol will be described with reference to FIG. FIG. 2B shows an example of a protocol type for symbol exchange between a scripting engine and a ranking module in a search engine according to an exemplary embodiment of the present invention.

First, in FIG. 2 (a), an example of a protocol type is shown when a search result that is not aligned to a scripting engine in a ranking module is input. Referring to (a) of FIG. 2, the input protocol may be a form in which values of each document are sequentially input in units of fields, together with information (name, type, etc.) of fields. In the scripting engine, the ranking score calculated by substituting the value input from the ranking module in the form of FIG. 2 (a) into the ranking calculation formula is input to the ranking module through the output protocol as shown in FIG. . ≪ / RTI > At this time, the order in which the ranking scores calculated for each document are arranged may correspond to the order in which the field values in the protocol at the time of input are arranged.

Referring back to FIG. 2A, the ranking module 146, which has returned ranking information from the scripting engine 148, sorts the documents included in the search results not sorted according to the ranking information, And transmits the final search result to the search service user with reference to the base 147. The final search result may be transmitted from the search engine 140 to the user terminal 110, 120 via the network 130.

In the meantime, each module described in FIG. 2A is divided into functions. When an actual search engine server is implemented, one entity constituting a server may perform functions corresponding to two or more modules, The functionality for the module may be implemented by more than one entity.

Hereinafter, a method for updating one or more ranking calculation formulas referred to by the scripting engine will be described with reference to FIG.

FIG. 3 shows an example of various methods for updating the ranking calculation formula in a search engine according to an embodiment of the present invention.

In FIG. 3, the update of the ranking calculation formula is divided into an operator side and a user side. The user side means that a general search service user can update the ranking calculation formula, and the search engine operator can use the user side update method according to need.

3, the search engine 140 may be connected to the configuration API server 310 and the configuration database 320 via the update agent 330. [ The setting API server refers to a server that provides a search engine operator with an API for managing the search engine 140. The setting database 320 refers to a database that stores various setting information related to the search engine 140 can do.

On the operator side, the ranking calculation formula can be updated through two methods. The first method is a method of updating the setting database 320 first. Specifically, an operator can input a new ranking calculation formula RE through a scripting language through the setting API server 310. [ The input RE is transmitted to the setting database 320 in step S301. When the update agent 330 recognizes that the RE information in the setting database 320 has been changed, the updated agent 330 obtains the changed RE from the setting database 320 (S302), the ranking calculation formula 149 stored in the search engine 140 is updated.

Secondly, a method in which an operator inputs an RE inputted through the setting API server 310 into an update command message 340 and directly transmits the RE to the update agent 330 (S303). In this case, the RE stored in the setting database 320 must also be updated. To this end, a new RE may be directly transferred from the setting API server 310 to the setting database 320, The update agent 330 may include information instructing the update agent 330 to update the RE of the configuration database 320. [

Next, a description will be given of a method of updating the ranking calculation formula in the search service user aspect. The user can input a code describing the RE directly in a scripting language recognizable by the scripting engine 148 in a search word input window displayed through a web browser or the like driven by the user terminal 110. [ The input code may be transmitted to the search engine 140 via the network 130 (S304), and the search engine 140 may update the ranking calculation formula 149 with the code. However, when a code is inputted through the search word input window, it is not preferable that the input code is misinterpreted as a search word in the search engine 140. Therefore, when a code describing an RE is input through a search window of a web page, it is preferable that a separate input form is provided to distinguish between a search word and an RE. For example, if only normal text is input, the search engine 140 processes the text and if the input is of the form "RankExpressions: [], Query: []", the code in the first parenthesis is written as RE And recognize the contents in the second parentheses as search words, respectively.

Of course, when the RE and the search word are input together in the RE update method on the user side, the RE may be applied only to the search word that is input together according to the setting, or the RE may be set as the default RE.

Meanwhile, as described above, in the search engine according to the present invention, since the ranking calculation formula RE is referenced through the scripting engine provided separately from the ranking module, it can be updated in real time. However, recent search engines tend to support multi-threading in which search operations for a plurality of search words are simultaneously performed. In this environment, when the ranking calculation formula RE is changed in real time, when a search job (i.e., a thread: Thread) that refers to the previous ranking calculation formula remains, the previous ranking calculation formula Must remain. To this end, according to the present invention, a temporary storage space is provided. When a RE is updated, a pre-update RE is moved to a temporary storage space so that a thread referring to the RE can complete a task. We propose a method to manage it with the proposed RE logic (Deprecated RE Logic). This will be described with reference to FIG.

FIG. 4 shows an example of a search engine configuration for stably performing update of a real-time ranking calculation formula in an environment supporting multithreading according to an embodiment of the present invention.

FIG. 4 conceptually shows the relationship between the search tasks for the search term and the rank reference formula referred to by each task. Specifically, in the search engine 140, each of the arrows 410 to 440 represents a search task (thread) for one search word, the more the arrow is located in the search engine, the lower the task progress is, The closer the work is to the end of the work.

Referring to FIG. 4A, RE1 is firstly referred to as a ranking calculation formula by the scripting engine, but RE2 and RE3 are set as the latest ranking calculation formula 149 according to the update procedure. The RE1 is moved to the temporary storage area 450 according to the deprecated RE logic according to the present embodiment. At this time, the timer information is set in the RE1, and when the set timer expires, it is deleted in the temporary storage area 450 and is no longer referred to in the search engine 140. [ The timer can generally be set considering the time at which one thread is processed.

RE2 and RE3 are set to the latest ranking calculation formula 149, two threads are sequentially processed in the order of 410 -> 420. At this time, the scripting engine may refer to RE2 for the thread 410 and RE3 for the thread 420 according to a predetermined rule.

In this situation, as shown in FIG. 4 (b), RE4 can be updated in real time with the latest ranking calculation formula 149 'by replacing RE2 and RE3. Thus, RE2 and RE3 are moved to the temporary storage area 450 according to the to-be-deleted RE logic as described above. Accordingly, when the threads 410 and 420 are not completed at the time of being updated to RE4, the thread refers to RE2 and RE3 which are moved to the temporary storage area, respectively. RE1 has been deleted according to the expiration of the timer, and timers will also be set for RE2 and RE3, respectively, and will be deleted from the temporary storage area after expiration.

Threads 430 and 440 started after the latest ranking calculation formula 149 'is updated to RE 4 will be ranked and ordered according to RE 4.

In this way, even if a thread referencing a specific RE in the search engine is not completed and the corresponding RE is updated in real time by another RE, the thread can refer to a specific RE moved to the temporary storage area until the completion of the task , It is automatically deleted according to the timer expiration, and resource management can be efficiently performed.

4, a method of deleting an RE moved to a temporary storage area using a timer has been described. However, the present invention is not limited thereto. For example, a reference counter may be used instead of a timer. The reference counter means a method of setting a counter as many times as the number of threads referring to the RE when the RE is moved into the temporary storage area, subtracting the counter each time the thread ends, and deleting the counter when the counter value becomes 0 .

Hereinafter, referring to FIG. 5, various methods for more easily inputting an RE through a search window of a web browser (i.e., a method for updating a RE on the user side) will be described.

5 is a diagram illustrating a form of a search word input window provided to a user terminal by a search engine for updating a ranking calculation formula according to an embodiment of the present invention.

Referring to FIG. 5A, a search window 510 of a search engine web page displayed through a web browser has a search word input field 511 for inputting a search word and an RE input field 512 for RE input separately . In this case, when the search command button 513 is selected after inputting the search word and the RE coding in the respective input fields, the search engine automatically discriminates the RE from the search word such as RankExpressions: [], Query: And can be delivered to the search engine in a form that can be displayed.

The RE technique input to the RE field may be similar to the equation (2), but there may be some differences depending on the scripting language. In this case, however, it may be required to know the field name of the ranking element desired by the user. Therefore, an editing tool may be provided for more convenient RE editing. This will be described with reference to FIGS. 5 (b) and 5 (c).

5B, a search word input field 521, a search command button 522, and a RE editor call button 523 may be provided in a search window of a search engine web page displayed through a web browser . 5 (c), when the RE edit editor call button 523 is selected, the RE edit editor 530 searches the Web page provided by the search engine 521, Can be displayed on the page.

A variety of ranking elements are listed in the RE editor, and each ranking element listed may be provided with a slider for changing the weight. For example, a slider 532 is provided on a track 531 provided on the right side of the latest map item. Here, when the user moves the slider 532 to the left through an appropriate command input (for example, touch-drag or left-click of the mouse, etc.), the weight of the latest degree is lowered. Can be increased. When the user completes the weight adjustment for each ranking element, the RE editor can automatically generate the script according to the adjusted value and deliver it to the search engine.

The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the above description should not be construed in a limiting sense in all respects and should be considered illustrative. The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention. In addition, claims that do not have an explicit citation in the claims can be combined to form an embodiment or included as a new claim by amendment after the application.

Claims (22)

Receiving a search word from a user terminal;
Searching at least one web document related to the inputted search word in a matching module;
Calculating at least one ranking element value for each of the at least one web document retrieved by the matching module;
Transmitting a value of at least one ranking element calculated for each web document retrieved to a scripting engine according to a first protocol;
Generating rank information for each of the retrieved at least one web document using the value of the at least one ranking element transmitted from the scripting engine;
Transmitting the generated ranking information to a ranking module according to a second protocol;
Aligning the searched at least one web document according to the ranking information in the ranking module; And
And outputting the sorted at least one web document as a search result,
Wherein the matching module, the ranking module, and the scripting engine are implemented through a first programming language,
The scripting engine generates the ranking information by referring to a first ranking calculation formula described through a second programming language that does not require type definition and compilation,
Wherein the value of at least one ranking element calculated for each searched web document is passed from the matching module to the scripting engine via the ranking module,
Wherein the first protocol and the second protocol are predefined between the ranking module and the scripting engine.
delete The method according to claim 1,
Wherein the first ranking calculation formula is stored in advance in a first memory.
The method of claim 3,
When the second ranking calculation formula described through the second programming language together with the search word is input from the user terminal, the scripting engine generates the ranking information according to the second ranking calculation formula for the search word, Internet search method.
The method of claim 3,
Wherein the first ranking calculation formula of the first memory is updated in real time with a third ranking calculation formula described through the second programming language; And
Wherein the first ranking calculation formula is moved to a second memory.
6. The method of claim 5,
Setting a timer in the first ranking calculation formula moved to the second memory; And
Wherein the first ranking calculation formula is automatically deleted from the second memory when the set timer expires.
6. The method of claim 5,
Wherein if the at least one search thread referencing the first ranking calculation formula is not completed and the real-time updating step is performed, then the scripting engine updates the at least one search thread in the second memory, And ranking information is generated by referring to the first ranking calculation formula.
6. The method of claim 5,
Wherein the scripting engine generates ranking information with reference to the third ranking calculation formula in the first memory for a search thread started after the real time updating step is performed.
The method according to claim 1,
Wherein the at least one ranking element comprises:
Wherein at least one of the text proximity to the search word, the popularity of the document, the reliability of the document, the creation time of the document, the creator of the document, the source, and the geographical location information.
The method according to claim 1,
Wherein the first programming language includes C and C ++ languages,
Wherein the second programming language includes JavaScript, Python, and Ruby languages.
delete delete delete delete delete delete delete delete delete delete A method for sorting search results of an Internet search engine,
The value of at least one ranking element calculated for at least one web document related to the search word is passed from the ranking module to the scripting engine according to the first protocol;
Generating ranking information for each of the retrieved at least one web document according to the value of the at least one ranked element and the first ranking calculation formula in the scripting engine;
Arranging the at least one web document according to the ranking information in the ranking module when the generated ranking information is transmitted to the ranking module according to a second protocol; And
And outputting the sorted at least one web document as a search result,
Wherein the ranking module and the scripting engine are implemented through a first programming language,
The scripting engine generates the ranking information by referring to the ranking calculation formula described through a second programming language that does not require type definition and compilation,
Wherein the first protocol and the second protocol are predefined between the ranking module and the scripting engine.
delete
KR1020130011894A 2013-02-01 2013-02-01 Method and apparatus for internet search KR101466182B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130011894A KR101466182B1 (en) 2013-02-01 2013-02-01 Method and apparatus for internet search

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130011894A KR101466182B1 (en) 2013-02-01 2013-02-01 Method and apparatus for internet search

Publications (2)

Publication Number Publication Date
KR20140099089A KR20140099089A (en) 2014-08-11
KR101466182B1 true KR101466182B1 (en) 2014-11-27

Family

ID=51745619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130011894A KR101466182B1 (en) 2013-02-01 2013-02-01 Method and apparatus for internet search

Country Status (1)

Country Link
KR (1) KR101466182B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100462292B1 (en) * 2004-02-26 2004-12-17 엔에이치엔(주) A method for providing search results list based on importance information and a system thereof
KR20080085990A (en) * 2007-03-21 2008-09-25 주식회사 케이티프리텔 Method and system of providing recommended words

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100462292B1 (en) * 2004-02-26 2004-12-17 엔에이치엔(주) A method for providing search results list based on importance information and a system thereof
KR20080085990A (en) * 2007-03-21 2008-09-25 주식회사 케이티프리텔 Method and system of providing recommended words

Also Published As

Publication number Publication date
KR20140099089A (en) 2014-08-11

Similar Documents

Publication Publication Date Title
US8473473B2 (en) Object oriented data and metadata based search
US8972372B2 (en) Searching code by specifying its behavior
US8285702B2 (en) Content analysis simulator for improving site findability in information retrieval systems
US7475074B2 (en) Web search system and method thereof
US8131684B2 (en) Adaptive archive data management
US8560519B2 (en) Indexing and searching employing virtual documents
CN108052632B (en) Network information acquisition method and system and enterprise information search system
KR20120089560A (en) Document length as a static relevance feature for ranking search results
US8180751B2 (en) Using an encyclopedia to build user profiles
US20110208715A1 (en) Automatically mining intents of a group of queries
US9262555B2 (en) Machine for recognizing or generating Jabba-type sequences
US20050216845A1 (en) Utilizing cookies by a search engine robot for document retrieval
CN110889023A (en) Distributed multifunctional search engine of elastic search
US20110238653A1 (en) Parsing and indexing dynamic reports
Franzoni et al. Heuristics for semantic path search in wikipedia
EP3079083A1 (en) Providing app store search results
Bhat et al. An ontology-based approach for software architecture recommendations
KR101466182B1 (en) Method and apparatus for internet search
Zhang et al. An improved ontology-based web information extraction
CN107038172A (en) A kind of oil field search engine construction method based on semanteme
Saranya et al. A Study on Competent Crawling Algorithm (CCA) for Web Search to Enhance Efficiency of Information Retrieval
US20150127624A1 (en) Framework for removing non-authored content documents from an authored-content database
JP6777445B2 (en) Citation map generator, citation map generation method and computer program
Chen et al. CDTC: Automatically establishing the trace links between class diagrams in design phase and source code
KR100871470B1 (en) search system for constructing indexed data and method thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171120

Year of fee payment: 4