Application Of Keyword Search On Data Graphs Computer Science Essay

The Web hunt engines have made keyword based seeking a really popular scheme. Although all the of import systems implemented today have full hunt capablenesss, they still require the users to hold some cognition of intricate structured querying linguistic communications along with an apprehension of the underlying scheme to seek for the needed information. The keyword hunt is carried out by sing the information in the signifier of a graph where the entities represent the nodes and relationships are the borders.

This paper addresses the schemes for keyword hunt in graphs which reside in the memory, every bit good graphs which are well larger than the memory size. The keyword hunt schemes such as BANKS [ 2 ] , BLINKS [ 3 ] , and bidirectional hunt [ 4 ] are based on in-memory graph hunt. In the instance of informations graphs which are stored in the external memory such as the cache memory are implemented utilizing a technique which is known as the multi-granular graph technique [ 1 ] . The consequences of keyword hunt conducted on these two types of informations graphs are compared and found that the incremental enlargement hunt algorithm, which is used to seek the graphs larger than the memory performs better than the in-memory algorithms.

This is because the application of in-memory algorithms to really big graphs would ensue in really significant IO cost.


The execution of keyword hunt on graphs has gained a batch of involvement in the recent times. The relational, XML informations can be interpreted in the signifier of graphs where the entities are modeled as nodes and the relationships as the borders.

Top Writers
Verified expert
4.8 (756)
Sweet V
Verified expert
4.9 (984)
Writer Jennie
Verified expert
4.8 (467)
hire verified writer

The responses obtained by put to deathing the questions of keyword hunt are by and large represented in the signifier of trees which connect the nodes with closely related cardinal words. Each of the reply trees is related with a mark depending on the weights of the nodes and borders, and the top K replies have to be retrieved.

A big sum of research has been done on using keyword hunt to structured and semi-structured informations. These schemes are based on the keyword hunt carried out on graphs that exists in the memory.

The attacks which come under this group include BANKS [ 2 ] which makes usage of the backward spread outing hunt, bidirectional hunt [ 4 ] , and BLINKS [ 3 ] . All these algorithms believe that the graph resides in the memory. Keyword word hunt has drawn attending for the undermentioned grounds as it provides an interface which does non necessitate the user to run complex questions for recovering information. The user besides need non be familiar with the underlying scheme construction.

If the graph contains 1000000s of nodes so it will non be able to suit suitably on big waiters. [ 1 ] proposes the scheme for key-word hunt on graphs whose size is well larger than the memory. It besides presents a technique of stand foring it as a multi-granular graph, which a decreased part of the graph which resides in the memory, along with the other parts of the graph which are present in the practical memory. The supernode graph is obtained by grouping nodes present in the full graph into supernodes, along with superedges which are created between supernodes that encompass connected nodes. Raw information might non be structured as a graph but there exist many associations between them which restore these connexions and enable more efficient and self-generated keyword querying. This paper deals with using keyword hunt to chart which reside in the internal and external memory.


This subdivision briefly sums up the cardinal graph constructs dealt in [ 2 ] and besides two degree graph representations which are defined by [ 5 ] .

Graph Concepts

Nodes: Every node nowadays in the graph has a corresponding set of keywords linked with it. It besides has another related belongings called the node weight ( besides known as prestigiousness ) which affects the reply rank including the node.

Edges: The borders contain weights and way. An border with a higher weight is tantamount to weaker connexion grade. A directed theoretical account is illustrated to forestall replies which are generated by hub nodes and which are non likely to transport any significance. [ 3 ] nowadayss a method of delegating border tonss depending on the in grade and out grade of the nodes. The hunt methods considered are non influenced by the definition of the border tonss.

Questions: A question executed for keyword hunt consists of a set of footings.

Answer Trees: The reply tree is a smallest directed tree so that some node in the tree holds every keyword. The overall mark is computed as a map of the node mark and border mark. The node mark is obtaining by summing the node weights of foliage and node. Quite a few theoretical accounts have been proposed to cipher the border mark by different attacks. [ 2 ] defines the border mark as the opposite of the leaden amount of the borders. Whereas [ 4 ] obtains the border mark by summing the length of the waies. [ 3 ] utilizes the above theoretical account and allows replying of questions, where as the Steiner tree theoretical account is NP hard, and it avoids bring forthing same replies with same root.

Two Level Graph Representation

The representation of the graph as a two-level which is proposed by [ 5 ] is defined as:

Supernode: With the aid of a bunch algorithm the graph is divided into many constituents. The ace node represents each of the bunchs which are present in the graph. It holds the subset of the set of vertices. The nodes nowadays in the set are known as the innernodes.

Superedge: The borders linking the supernodes are known as ace borders. They are created by sing where there exists at least an border from the innernode of supernode s1 to another innernode of supernode s2 ; in such a instance a superedge will be present between them.

While building the supernode graph, the bunch values are selected in a peculiar manner which will enable the graph to suitably suit into the chief memory. Each of the supernode is stored on the disc and posses an unchanging figure of innernodes. In [ 5 ] the nodes and the borders do non posses weights. Whereas in the instance of keyword hunt, edges posses weights. The weight of a super border is expressed as “ min { edge-weight } ” which is calculated over borders between the innernodes incorporating two supernodes. By utilizing min aids in obtaining an upper edge on the mark which is a polish of an reply that contains a superedge.

Multigranular Graph Representation

The 2-phase hunt algorithm needs the top degree of the representation to shack in the memory and it gets the lower parts of it into the memory as and when necessary. As the full lower degree is bigger than the size of the memory, parts of it are stored in a buffer of fixed size. With the memories that are available today, a considerable sum of memory can be available for hive awaying, In instance the associated questions have been executed antecedently so the necessary parts of the graph may be present during query executing.

The multi-granular graph construction is proposed to do usage of information residing in the low-level nodes that reside in the cache during query executing. The multi-granular graph is a mixture as it possesses supernodes and inner-nodes during any given clip. The supernode can be present either in an expanded signifier or an unexpanded signifier. In instance the supernode is present in an expanded signifier all the innernodes and contiguity list reside in the cache. On the other manus, when it is in the unexpanded signifier the internodes are non present in the cache. The illustration of a multi-granular graph is demonstrated in Figure 1.

In-memory graph algorithms:

Many algorithms have been proposed for keyword hunt which presume that the graph resides in the memory. [ 2 ] Models tuples of the database as nodes in a graph, which are connected to each other by links produced by the foreign cardinal relationships. Answers to the questions are represented as rooted trees which connect tuples that are tantamount to single keywords in the question. The replies to the questions are ranked in order of propinquity joined with prestigiousness depending on the inlinks, which are likewise to the attacks implemented for Web hunt. It presents a backward spread outing hunt algorithm which provides an analytic account for happening and ranking question consequences.

The first measure is to follow the nodes matching to the hunt conditions. A node is applicable to a hunt status if it possesses the hunt conditions as a part of an attribute value or metadata. For case, all tuples which fit suitably in to a relation would be considered to be applicable to that keyword. A answer to a question is a frozen directed tree and it contains no less than one node from each set. It should besides be noted that that the tree may besides incorporate nodes which are non present in any set of nodes and is as a consequence a Steiner tree. A relevancy mark should be assigned to each of the reply trees, and the reply trees have to be presented in diminishing order of the relevancy mark. The hiting chiefly includes uniting the significance intimations from borders and nodes. Two separate relevant steps are provided by the node weights and border weights. Many transcripts of the Dijkstra ‘s individual beginning algorithm are run by the backward spread outing hunt algorithm.

BLINKS [ 3 ] is a two-level indexing and question processing method for bring forthing the top-k keyword hunt consequences on graphs. For cut downing the index spacing, it divides the information graph into blocks: The two-level index shops the lineation information at the block degree to get down and direct the hunt among different blocks, and more elaborate information for each block to rush up the hunt procedure within the blocks. The attack depends on two cardinal thoughts: The first thought is a cost-balanced scheme for commanding the enlargement across bunchs, with a demonstrable displacement on its worst-case public presentation. The 2nd thought is use indexing to back up frontward springs in the hunt. Indexing allows users to happen out whether a node can carry through a keyword and the shortest distance. By this means we can take the ambiguity and insufficiency of a bit-by-bit forward enlargement procedure.

[ 4 ] Deals with the job of strongly pull outing a little figure of the “ best ” reply trees from the informations graph. Bidirectional hunt, is a method which improves the backward spread outing hunt algorithm proposed in [ 2 ] by leting frontward hunt from possible roots towards the foliages. The first attack was to make iterators merely for keywords which are non “ often happening ” and to boot research the forward waies to “ frequent ” keywords ( Figure 2 ) . This scheme combines all the lone beginning shortest way iterators from the backward hunt algorithm. It uses the distributing activation to prioritise the hunt.

This attack pursues the forward edges get downing from the nodes explored by the entrance iterators.

Keyword hunt on graphs larger than memory:

[ 1 ] Puts frontward a method of representation, called the multi-granular graph technique, which merges the decreased version of the graph which ever resides in the chief memory, along with staying parts of the complete graph which are present in the cache. The supernode graph is produced by grouping all the nodes in full graph to organize supernodes and the superedges are formed in between them which possess nodes which are connected. The multi-granular graph method proposed here gives information sing the full the graph which at present exists in the memory. It besides suggests two different ways of researching the multi-granular graphs by widening the already bing algorithms.

The first method utilizes the iterative enlargement algorithm which is an algorithm which has many phases and this is appropriate for multi-granular graphs. Each repeat of the algorithm can be divided up into two phases- the explore stage, spread out stage. The replies which are produced might hold supernodes.

Now an algorithm for graph nowadays in the memory ( in-memory ) , is executed on the bing status of the multi-granular graph. The keyword-search algorithm is implemented repeatedly to a point where the top-k consequences are obtained.

The 2nd method makes usage of an incremental process, which as the old method expands the supernodes, but instead than get downing the hunt once more from the beginning, it modifies the in-memory informations constructions to reproduce the altered province of the multi-granular graph. Hence the hunt which was performed antecedently does non necessitate to be done once more if it does non excel the expanded node. Even though it should be accomplishable to make incremental editions of other keyword-search algorithms like the bidirectional hunt [ 4 ] or the hunt method implemented in BLINKS [ 3 ] .

Experimental rating and comparing

Experiments have been performed and the consequences are compared with the assorted bing keyword hunt algorithms. The entire clip taken to put to death a question is compared by spliting it into the CPU-time and the IO clip. The entire question executing clip is the clip taken to recover the top-k consequences.

Figure 3 illustrates the executing clip taken for reacting to questions by the different keyword-search algorithms. For every question that is executed, the diagram demonstrates three perpendicular bars which stand for the iterative method, incremental method and VM-search. VM-search is the attack of put to deathing the in-memory algorithms in the practical memory. The clip taken to bring forth 10 question replies is computed for all the three instances. As the public presentation was observed to be highly hapless when the figure of loops increased, a heuristic was introduced to halt when 30 loops have been completed. Even after the introducing this status, the iterative method performs rather ill in footings of clip taken. It can besides be noticed that the incremental attack well performs better than both the iterative and VM-search attacks. Besides, the VM-search method has notably higher figures for the IO clip than compared to the incremental attack for most of the question consequences, but in general it has lower value for CPU clip.

Decision and Future work

This paper focuses on many algorithms for using keyword hunt to chart. The replies to keyword questions are normally expressed in the signifier of trees. It is besides discussed that the graph with many nodes will non suit even on big waiters. Keyword hunt in graphs residing outside the chief memory is addressed by doing usage of a multi-granular representation of informations. In decision, we can state that the incremental enlargement hunt algorithm significantly outperforms the alternate in-memory algorithms because utilizing in-memory algorithms on really big graphs would bring forth a really significant IO cost. The future work chiefly involves developing a bidirectional hunt algorithm that can be applied to multi-granular graphs. Besides, to develop better constellating techniques which are more efficient than the bing methods. Another option for hive awaying big graphs in the external memory is to portion it across the chief memory of many nodes in an environment which is parallel.

Cite this page

Application Of Keyword Search On Data Graphs Computer Science Essay. (2020, Jun 01). Retrieved from

Are You on a Short Deadline? Let a Professional Expert Help You
Let’s chat?  We're online 24/7