Efficient and Scalable Sequence-Based XML Filtering

Size: px
Start display at page:

Download "Efficient and Scalable Sequence-Based XML Filtering"

Transcription

1 Efficient an Scalale Sequence-Base XML Filtering Mariam Salloum University of California, Riversie, CA, USA ABSTRACT The uiquitous aoption of XML as the stanar of ata exchange over the we has le to increase interest in uiling efficient an scalale XML pulish-suscrie (pu-su) systems. The central function of an XML-ase pu-su system is to perform XML filtering efficiently, i.e. ientify those XPath expressions that have a match in a streaming XML ocument. In this paper, we propose a new sequence-ase approach, which transforms oth XML ocuments an XPath twig expressions into Noe Encoe Tree Sequences (NETS). In terms of this encoing, we provie a necessary an sufficient conition for an XPath twig to represent a match in a given XML ocument. The propose filtering proceure is ase on a new susequence matching algorithm evise for NETS, which ientifies the set of matche queries free of false positives with a single scan of the XML ocument. Extensive experimental results show that the NETS metho outperforms previous XML filtering approaches.. INTRODUCTION With the increase aoption of XML as the e facto stanar for pulishing an exchanging of information over the we, XML-ase pu-su systems have emerge. In a typical XMLase pu-su system, users (suscriers) express their interests (profiles) using XML query languages (such as XPath []), while pulishers istriute their messages encoe as XML ocuments. Each pulishe message is matche against user queries so that messages are only elivere to intereste users. Several approaches have een propose to solve the XML filtering prolem; the main two categories are (i) FSMase an (ii) Sequence-ase approaches. Several Finite State Automata approaches have een propose. An early work, XFilter [], consiere simple path profiles an propose uiling an FSM for each istinct profile. The FSM states are then traverse, while XML tag events are generate y the parsing of the streaming ocument. YFilter [] [] was a successor of XFilter an propose uiling a NFA representation that comines all user profiles into a single machine. This approach yiels etter results since it exploits the commonality among path expressions. In orer to implement twig filtering, FSM-ase approaches typically reak twig queries into their simple linear paths. This approach however, requires an expensive post-processing phase to join the results. Copyright is hel y the author/owner. Twelfth International Workshop on the We an Dataases (WeDB ), June,, Provience, Rhoe Islan, USA. Vassilis J. Tsotras University of California, Riversie, CA, USA tsotras@cs.ucr.eu In the sequence-ase approaches [][], the XML ocument an profile twigs are transforme into sequences. FiST [] was the first to propose a sequence-ase XML filtering system using Prufer sequence encoing. This approach was shown to e more efficient than automata-ase approaches since whole twig profiles are processe at once. Nevertheless, susequence matching coul create false positives an thus a post-processing phase is require to filter them. XFIS [] is another Prufer-like sequence encoing of XML ocuments an profile twigs, however it oes not account for tag recursion in the XML ata. In this paper, we propose a new sequence-ase approach to solve the XML filtering prolem. The key contriutions of this paper can e summarize as follows: We present a new, simple an effective sequence representation for XML ocuments an query twig patterns, calle NETS (Noe Encoe Tree Sequence). Using NETS, we present a necessary an sufficient conition for a twig profile to match a given XML ocument tree. We present a filtering system for orere twig pattern matching that employs concurrent susequence matching of query profiles. Our filtering approach is unique since it oes not require a post-refinement phase. The approach guarantees that returne matches are free of false positives (an false negatives) with a single scan of the XML ocument. Experimental results show that the propose approach outperforms previous XML filtering approaches. Performance improvements are achieve through holistic processing of twig patterns an on-the-fly etection of false matches. We procee with the escription of the NETS encoing in Section. In Section we provie the etails of our filtering system. Section presents experimental results while conclusions appear in Section.. NODE ENCODED TREE SEQUENCE An XML ocument is moele as a roote orere laele tree where each noe correspons to an element tag, attriute, or value, an eges represent structural relationships etween noes. Several sequence representations for laele trees have een propose an utilize for XML filtering or query matching [][][]. We present a simple yet efficient sequence representation for XML trees calle Noe Encoe Tree Sequence (NETS). For each noe in a given tree, the NETS of the tree contains two symols referre to as start-symol an -symol. For example, given a tree T with a noe laele x, the NETS(T) will contain the start-symol Sx an -symol Ex for noe laele x. The Noe Encoe Tree Sequence of T, NETS(T), is efine recursively as follows. An example of a XML tree T an its corresponing NETS is shown in Figure (a).

2 Definition (Noe Encoe Tree Sequence):. If tree T consists of a single noe laele y r, then the NETS(T) is Sr Er.. Let r e the root of tree T an assume r has m chilren laele from left-to-right as r, r,, r m. Let sequences S, S,, S m e the NETS of the sutrees whose roots are r, r,, r m, respectively. Then the NETS(T) is Sr S S S m Er. c a g XML Tree T (a) k c a g Q: /a/[c]/g Q: /a[/c]///g () (c) NETS(T) = Sa S Sc Ec S E E S S E Sg Eg Sk Ek E Ea NETS(Q ) = Sa S Sc Ec Sg Eg E Ea NETS(Q ) = Sa S Sc Ec E S Sg Eg E Ea Figure : NETS Representation of XML Tree an Query Twigs An XPath query expression can also e moele as a laele tree (referre to as a query twig) where each noe represents an element or value, an eges enote parent-chil ( / ) or ancestor-escant ( // ) relationships (see Figure ()(c)). The NETS of a query twig is generate in accorance to Definition. Note, when generating NETS of a twig query no istinction is mae etween parent-chil an ancestorescant eges in the tree. In Section., we associate aitional attriutes to the NETS sequence noes to encoe /, //, an *. We note that NETS is essentially equivalent to SAX tokens, thus it has several properties. For a given lael, x, the NETS must have an equal numer of start-symols (Sx) an symols (Ex). For every two noes in the tree with laels x an y, the corresponing segments Sx.Ex an Sy Ey in the sequence are either isjoint or neste. The start an symols of the same noe are calle corresponing symols. If a noe is laele y x, the preorer of the corresponing symols Sx an Ex are efine as preorer(sx)=preorer(ex)=preorer(x). Hence, any two start an symols in the NETS are sai to e corresponing symols if they have the same preorer numer. The ojective of the filtering algorithm is to etermine whether a given query twig has a match in a XML tree. For a query to e a match, the query twig must e a sugraph (Definition ) of the XML tree an satisfy the level-consistent property (Definition ), which we formally efine as follows: Definition (Sugraph): Let T=(V,E) e a laele tree, where V is the set of all noes in T an E is the set of all eges in T. For every noe n in V, let lael(n) enote the lael of n an let preorer(n) enote the numer associate with the noe ase on the tree preorer traversal. A laele tree Q=(V,E ) is a sugraph of T if the following two conitions hol: () There is a one-to-one mapping f() from V into V such that for every noe n in V lael(n)=lael(f(n)), an for every ege (n,n ) in E there is a path from f(n ) to f(n ) in T. () For every two noes n an n in Q, if preorer(n ) < preorer(n ) then preorer(f(n )) < preorer(f(n )). While () guarantees that ancestor-escent relationships in Q are 'foun' in T, () guarantees that the relative orer of noes in Q correspons to the one in T. Definition (Level-Consistent): Let Q e a query an sugraph of an XML tree T, an let level(m) enote the level of a noe m in T. A query Q satisfies the level-consistent property iff the following conition hols: For every ege (n,n ) c a g NEST(T): Sa S Sc Ec S E E S S E Sg Eg Sk Ek E Ea NEST(Q ): Sa S Sc Ec Sg Eg E Ea NEST(T): Sa S Sc Ec S E E S S E Sg Eg Sk Ek E Ea NEST(Q ): Sa S Sc Ec E S Sg Eg E Ea Figure : Q is a False Match an Q is a Match in Q, if the ege is of type //, then level(f(n )) level(f(n )). Otherwise, if (n,n ) is of type /, then level(f(n )) level(f(n )) =, where n an n enote noes in Q an f is one-to-one mapping as escrie in Definition. Note, the root is assigne a level of zero, the root s chilren are assigne a level of one, e.t. The filtering algorithm involves susequence matching etween the NETS sequences of the twig profile an the ocument, to etermine if there is a match. The following theorem states the relation etween the query twig an XML tree an their sequence representation. Theorem : Given two roote laele trees T an Q, if Q has a match in T then the NETS(Q) is a susequence of NETS(T). Proof: Since Q has a match in T, Q is a sugraph an consequently there is a one-to-one mapping f from the noes in V into the noes of V such that the lael(n) = lael(f(n)) for every noe n in V an satisfies other properties of Definition. Thus, each start-symol an -symol in NETS(Q) must appear in NETS(T), ut we nee to prove that occurrence of these symols appear in the same orer in oth NETS(Q) an NETS(T). Two cases are consiere for every two noes n an n in Q, whose corresponing start an symols are (Sx,Ex) an (Sy,Ey), respectively. Case : There is a path from n to n in Q. Thus, the segment Sx Ex in NETS(Q) must contain the segment Sy Ey such that the orer of the symols in NETS(Q) is Sx..Sy..Ey..Ex. Since f(n ) an f(n ) have the same symols as that of n an n an there is a path from f(n ) an f(n ) in T, then the orer of the start an laels of f(n ) an f(n ) in NETS(T) is also Sx Sy Ey..Ex. Case : No path exists etween n an n. Since there is no path etween noes n an n, then the segment Sx Ex an Sy Ey in NETS(Q) must e isjoint. Thus, the orer of the symols in NETS(Q) is either Sx Ex Sy Ey or Sy Sy Sx Ex eping on the preorer numer of noes n an n. Since Q is a sugraph of T, the preorer(n ) < preorer(n ) iff preorer(f(n)) < preorer(f(n )), consequently, the symols in NETS(T) must appear in the same orer. Given trees Q an T, if we enumerate all possile susequences of NETS(T) that match NETS(Q), then we are guarantee to report all matches with no false ismissals. However, we note that the result may contain false positives. Consier the XML tree T an query twigs Q an Q shown in Figure. Figure shows the NETS of T, Q an Q. The NETS(Q ) an NETS(Q ) are oth susequences of the NETS(T). However, we note that Q is a false match ecause it is not a sugraph of tree T. As we procee, we shall prove a necessary an sufficient conition for a query to have a match in a given XML ocument. Definition (Tree Susequence): Let T e a NETS laele tree. A susequence S of NETS(T) is calle a tree susequence if the following two conitions hol:

3 . If Sx(Ex) is in S, then the corresponing symol Ex(Sx) is also in S, i.e. if Sx(Ex) is in S then the Ex(Sx) with the same preorer numer is also in S.. S = Sr Er, where Sr an Er are corresponing symols. Reconsier the XML tree an query twigs shown in Figure. The XML tree noes are numere with a preorer traversal of the tree so that each noe has a unique numer (See Figure ). When NETS(Q ) is matche with NETS(T), we note the matche susequence is not a tree susequence an hence Q is not reporte as a match. The matche susequence for Q is a tree susequence an hence Q is reporte as a match. Definition (Level of Start an En Symols): Given two roote laele trees Q an T, let T e a tree an x e a noe in T. The Level(Sx) = Level(Ex) = Level(x), where Sx an Ex are the corresponing start an laels of x. Theorem : Given two roote laele trees Q an T, Q has a match in T iff there is a tree susequence S of NETS(T) such that:. S = NETS(Q). For every ege (n,n ) in Q the following property hols: If (n,n ) is of type /, then the level(sy) - level(sx) =, If (n,n ) is of type //, then the level(sy) - level(sx), where n an n are laele tree noes in Q an Sx an Sy are the corresponing start symols in S. Proof: Necessary Conition - Assume that query Q has a match in XML ocument T. By Theorem, NETS(Q) is a susequence of NETS(T). Let S e a susequence of NETS(T) that correspons to NETS(Q). Since there is a one-to-one mapping f from the noes of Q into the noes of T that satisfies the properties state in the efinition of sugraph, then S satisfies the properties of tree susequence. Also, since query Q has a match in T, then Q satisfies the level-consistent property. It is easy to show that the secon conition of Theorem follows from the level-consistent property. Sufficient Conition - Let Q e a query such that there is a tree susequence S of NETS(T) that satisfies the two conitions of Theorem. To prove that Q has a match in T, we first prove that Q is a sugraph of T, i.e. we efine a - mapping f from the noes of Q into the noes of T, which satisfies the properties state in the sugraph efinition. Let n e a noe of Q with lael x. The mapping f(n) is efine as follows: Since S=NETS(Q), the start an symols of noe n must appear in S. As we progress, we will show that these two symols in S are the start an symols of the same noe in T (i.e. they are not symols of ifferent noes in T). This noe of T will e enote as f(n). Two cases nee to e consiere: Case : There is only noe of Q with lael x. Thus, tree susequence S contains only one Sx an one Ex an they must e the start an symols of the same noe in T, ecause they have the same preorer numer. Case : There is more than one noe in Q with lael x. Without loss of generality, we assume that there are only two noes (n an m) of Q with lael x an preorer(n) < preorer(m). Thus, the symols of n an m in NETS(Q) must appear in the following orer: n n m m or n m m n Since S=NETS(Q), these symols also appear in S. Since S is a tree susequence, then there are only two Sx an two Ex in S an they must appear in the same orer as aove. These symols correspon to the two noes in T enote y T m an T n. We will prove y contraiction that the Sx an Ex of noe n in Q correspon to either the Sx an Ex of T m or the Sx an Ex of T n. Suppose that Sx an Ex of n correspons to the Sx of T n an Ex of T m, respectively as shown elow: Tn Tm Tm Tn or Tn Tm Tn Tm The first case can e exclue ecause the sequence is not a vali NETS, since the Ex procees its corresponing Sx in the NETS. The secon case can also e exclue ecause the property of NETS requires that the segment Sx.Ex an Sx Ex of noes T m an T n must either e isjoint or neste. In this case, the two segments overlap an thus it s not a possile NETS. Thus, Sx an Ex of n in Q correspon to the Sx an Ex of the same noe f(n) in T. It is easy to verify that f(n) satisfies the two properties state in the sugraph efinition. Thus, Q is a sugraph of T. The secon conition of Theorem can e use to verify that Q satisfies the level consistency property; as a result, Q is a match of T.. FILTERING SYSTEM In this section, we first escrie how to encoe wilcars, / an // for the query twig NETS. We procee to escrie the core ata structures utilize an the filtering algorithm.. NETS Query Encoing an Data Structures The NETS representation of query profiles is generate y encoing a start an symol for each noe in the tree as presente in Definition. For each start-symol in the NETS, an aitional attriute referre to as relationship is encoe to specify the relationship etween a noe an its parent noe. For example, if the relation is a parent-chil / then the attriute shall e =, specifying that two noes must e one level apart. If the relation is an ancestor-escant // then the attriute shall e, specifying that two noes must e at least one level apart. Wilcars * are hanle ifferently eping on the occurrence of the * in the query. If the wilcar operator appears as a ranch noe in the twig (See Q in Figure ), then the * is encoe as a regular noe. Otherwise, if it is a nonranch noe (See Q in Figure ), then the next non-wilcar noe is encoe in the NETS, an the occurrence of the wilcar is reflecte y the relationship attriute. The encoe NETS of a query twig is referre to as query sequence. To support value-ase preicates, the query sequence can e augmente to inclue an aitional attriute that specifies the preicate value an operator {=, <, >,, }. Example : Consier the query twigs shown in Figure. Q contains a ranch wilcar noe, thus the * is encoe as a regular noe in the NETS(Q ). Q contains a non-ranch wilcar noe, thus, the * is not encoe as part of NETS(Q ) an the next non-wilcar noe is associate with relation =. a Q: /a/*[]//c/ a Q: /a[//c]/*/*/ * Sa S* S E Sc S E Ec E* Ea * Sa S Sc Ec E S E Ea c c * - = = = - = = Figure : NETS Encoing of Query Twigs The filtering algorithm utilizes several structures for susequence matching, as illustrate y the example in Figure. A runtime gloal stack is maintaine y the filtering algorithm where each entry in the stack is a tuple that contains a startsymol of the XML sequence an its preorer an level. The tuples are pushe to the stack as start-symols are generate. At the start of the filtering algorithm, concurrent susequence

4 searches are initiate over the query sequences. For nonrecursive XML ocuments, only one susequence search is neee for each query, however, for recursive XML, more than one susequence search over the same query sequence may e initiate. Each susequence search maintains an. The is an integer that enotes the current position in the query sequence. The is a stack where each entry is an orere pair. The first component in the stack is the inex of the matche XML start-symol in the gloal stack. The secon component is the position of the matche startsymol in the query sequence. The orere pairs are pushe an poppe to an from the as start an symols in the XML sequence are matche to the query sequence. The filtering algorithm also utilizes a ynamic hashtale, calle sequenceinex, to facilitate concurrent processing of query twigs. The sequenceinex uses the start an symol assigne to each XML tag as a key into the hashtale. For each key (start or symol) it maintains a list of queries to e matche specifie y their queryis, the query s unique ientification.. Filtering Algorithm At the start of filtering, the first noe of each query sequence is inserte into the sequenceinex. The streaming XML ocument is parse y the SAX parser; the ProcessStartSymol(.) function is calle when an open tag is generate an the ProcessEnSymol is calle when an tag is generate. Note that the SAX methos have een slightly altere to maintain level an preorer information for each XML tag (see Algorithm ). Algorithm : XML SAX Parser Filtering Algorithm int level = - int preorer = - Stack gloalstack; /* at the start of each new ocument, initialize sequenceinex an */ proceure startdocument() foreach query twig q o /* let nextsymol enote the initial symol in the sequence */ sequenceinex[nextsymol].insert (q s queryi) set to /* generate start-symol, preorer an level of XML tag*/ proceure startelement (tag) startsymol = S + tag level + = preorer + = gloalstack.push(startsymol, preorer, level) ProcessStartSymol (startsymol, preorer, level) /* generate -symol, preorer an level of XML tag */ proceure Element (tag) Symol = E + tag preorer = pop gloal stack to get preorer of noe ProcessEnSymol (Symol, preorer, level) level - = The ProcessStartSymol(.) function is escrie y Algorithm a. This function receives a start-symol an its preorer numer an level as input. The filtering algorithm proes the sequenceinex for a list of queries that match the startsymol. For each query in the currentlist, the algorithm verifies that the level-consistent property hols for the current query noe (lines ). The top entry of the is retrieve an the first component, referre to as inexparanc, is use to retrieve the xmlparancnoe from the gloalstack. The ifference etween the current startsymol s level an the xmlparancnoe s level is calculate to etermine whether the query s relationship attriute is satisfie. If the property is satisfie, then the following steps are performe. First, the inex of the matche startsymol (its inex in the gloalstack) an the are inserte into the. Secon, the is incremente y one. Lastly, the next symol in the query sequence is ae to the sequenceinex. Algorithm a: Filtering Algorithm - Start Symol Haning proceure ProcessStartSymol( startsymol, preorer, level ) /* proe sequenceinex for matching queries */ currentlist = sequenceinex [ startsymol ] foreach q in currentlist o /* Let inexparanc enote the first component of the top element in the */ xmlparancnoe = gloalstack. get ( inexparanc ) /* verify level-consistent property hols */ If xmlparancnoe.level level satisfies query s relationship attriute then /* let nextsymol enote the next symol in query sequence */ sequenceinex[ nextsymol ]. insert (q s queryi) /* let inex enote the inex of the parameter startsymol in the gloalstack */ push inex & onto + = / * avance query sequence position */ for Algorithm : Filtering Algorithm En Symol Hanling proceure ProcessEnSymol( Symol, preorer, level) /* proe sequenceinex for matching queries */ currentlist = sequenceinex [ Symol ] foreach q in currentlist o /* Let inexparanc enote the first component of the top element of the */ xmlparancnoe = gloalstack. get(inexparanc) /* verify preorer match s */ if xmlparancnoe. preorer = preorer then /* remove an start symol from sequenceinex */ /* let startsymol enote the symol otaine y replacing E with S in the parameter Symol */ sequenceinex[symol].remove(q s queryi) sequenceinex[startsymol].remove(q s queryi).pop() /* pop the top element off the */ + = /* let nextsymol enote the next symol in query sequence*/ if nextsymol is null then /* of query sequence */ report query as a match else sequenceinex[nextsymol].insert(q s queryi) for /* hanle query acktracking */ currentlist = sequenceinex[startsymol] foreach q in currentlist o /* Let inexparanc enote the first component of the top element of the */ xmlparancnoe = gloalstack. get(inexparanc) if xmlparancnoe.preorer = preorer then /* must acktrack query sequence position */.pop() /*pop top element off the */ elete last inserte queryi in sequenceinex upate for

5 SequenceInex Initial state Sa Q, Q S E Q Q (a) ProcessStartSymol(Sa,, ) () ProcessStartSymol(S,, ) (c) ProcessStartSymol(Sc,, ) Sa Q, Q S Q, Q E Q (,) Q (,) (Sa,,) Sa Q, Q S Q, Q Q, Q E Q (,), (,) Q (,), (,) (S,,) (Sa,,) Sa Q, Q S Q, Q Q, Q E Q, Q Q (,), (,), (,) Q (,), (,), (,) (Sc,,) (S,,) (Sa,,) () ProcessEnSymol(Ec,, ) Sa Q, Q S Q, Q Q, Q Q E Q Q, Q Q (,), (,), (,) (,), (,), (,) Q (Sc,,) (S,,) (Sa,,) (e) ProcessEnSymol(E,, ) Sa Q, Q S Q, Q Q E Q Q (,), (,) (,), (,) Q (S,,) (Sa,,) (f) ProcessStartSymol(S,, ) (g) ProcessStartSymol(Sg,, ) (h) ProcessEnSymol(Eg,, ) (i) ProcessEnSymol(E,, ) (j) ProcessEnSymol(Ea,, ) En of Filtering Algoritm Sa Q, Q S Q, Q Q Q E Q (,), (,) (,), (,) Q (S,,) (Sa,,) Sa Q, Q S Q, Q Q Q E Q Q (,), (,) (,), (,), (,) Q (Sg,,) (S,,) (Sa,,) Sa Q, Q S Q, Q Q Q E Q Q Q (,), (,) Q (,), (,), (,) (Sg,,) (S,,) (Sa,,) Sa Q, Q S Q, Q Q Ea Q E Q Q (,), (,) Q (,), (,) (S,,) (Sa,,) Figure : Filtering Algorithm Example Sa Q, Q S Q Q E Q (,) Q (,) (Sa,,) En of NETS(Q) is reache, thus, Q is reporte as a match Denotes eletion ue to acktacking Denotes eletion ue to a match The ProcessEnSymol(.) function is escrie y Algorithm. For each query in the currentlist, the filtering algorithm first verifies that the current Symol s preorer numer equals that of the xmlparancnoe. If there is a match, then the queryi is elete from the start-symol s an -symol s lists in the sequenceinex. If the of the query sequence is reache, then the query is reporte as a match. Otherwise, the next symol is ae to the sequenceinex. At times, acktracking to a previous query sequence position is require ue to a false match (lines -). The sequenceinex is proe for the start-symol an a list of queryis is retrieve. For each query in currentlist, the top entry of the is retrieve an the first component, referre to as inexparanc, is use to retrieve the xmlparancnoe from the gloalstack. The xmlparancnoe s preorer is compare to the current Symol s preorer. If there is a preorer match, then acktracke is performe y the following steps. First, the top entry is poppe off the. Secon, the last inserte queryi is elete from the sequenceinex, an lastly the is upate to inicate the new position in the query sequence. Below, we illustrate the execution of our filtering algorithm with the XML tree T an twig patterns Q an Q shown in Figure. Example : In Figure (a), the ProcessStartSymol(.) is invoke for Sa an the sequenceinex contains Q an Q for key Sa. The level-consistent property is automatically satisfie since the points to the first symol in the query sequence. Thus, the susequence search for oth Q an Q is avance. First, the next symol in the query sequence ( S for oth Q an Q ) is retrieve an the queryis are inserte into the sequenceinex for that key. Secon, the inex of the startsymol in the gloal stack (the inex is ) an the (the is ) are inserte into the, thus the tuple (,) is pushe to the Q an Q. Lastly, the of Q an Q is incremente y. The algorithm procees to process XML noes (S,,) an (Sc,,) in Figures () an (c). In Figure (), the ProcessEnSymol(.) is invoke for Ec, an the sequenceinex contains Q an Q for key Ec. The top orere pair in the Q an Q is (,). The first component of the pair is use to retrieve the xmlparancnoe in the gloal stack, thus, (Sc,,) is retrieve. The preorer of the current Symol an xmlparancnoe match, thus, the search for oth Q an Q is avance. The queryis, Q an Q, are elete from the list of Sc an Ec in the sequenceinex. The next symol in the sequence of Q an Q is Sg an E, respectively. The queryis are inserte into the sequenceinex for their corresponing keys. For oth Q an Q, the top entry is poppe off the an the is incremente y. In Figure (e), the ProcessEnSymol(.) is invoke with lael E. Q is retrieve an the preorer check is verifie, thus Q s search is avance. First, the top element is poppe off Q s. Secon, Q s is incremente y. Lastly, Q is elete from the sequenceinex list for keys Sc an Ec. Note that acktracking of Q occurs as well. After processing Q, the sequenceinex is proe for the corresponing start-symol S, an Q is retrieve. The preorer check returns a match, thus, inicating that Q shoul e acktracke. Thus, the Q is poppe, queryi Q is elete from the sequenceinex list for key Sg, an the Q s is acktracke to. In Figure (f i) the algorithm procees as escrie y Algorithm. In Figure (j), the last query sequence symol of Q is matche an thus Q is reporte as a match. Q, however, is not reporte as match ecause the of the query sequence is not reache. Please note (S,,), (E,,), (Sk,,) an (Ek,,) are not shown in the Figure since the state of the structures oes not change. Example shows the execution of the asic filtering algorithm for non-recursive XML ocument. If recursion occurs in the XML ocuments, multiple susequence searches may e initiate over each query sequence. The ata structures an the algorithm steps were slightly moifie in the final implementation of the algorithm to process multiple searches

6 for each query sequence. For each query search initiate, a an is maintaine as efore. The entries inserte into the sequenceinex are exte to inclue the search ID, thus, for each key the sequenceinex will contain a list of orere pairs that contains the queryi an searchi. The ProcessStartSymol(.) was slightly moifie to initiate a new search when a recursive start-symol is encountere. The filtering algorithm will first verify that the level-consistent property hols. If the level-consistent property is satisfie, then a new search is initiate an its corresponing an are upate to enote the current position of the search in the query sequence. The other operations of the filtering algorithm are maintaine with the exception that multiple searches must e initiate as recursive elements are encountere.. EXPERIMENTAL RESULTS In our experiments, we compare the performance of our system to that of YFilter[] an FiST[]. We utilize the YFilter Java implementation provie y the authors. We implemente FiST an NETS in Java as well. All experiments were performe on a Qua Core.GHz processor with GB of memory running Linux Re Hat. We use the synthetic Sigmo [] ataset for our experiments. We also generate twig patterns using the XPath generator availale in the YFilter package. The element names were chosen from uniform istriution an the max epth of a twig pattern was fixe at. The numer of ranches in the twig patterns was fixe to, an the proaility of * an // was fixe to percent. wall clock time wall clock time Yfilter [KB] NETS[KB] FiST[KB] K K K K K K K K Numer of Queries (a) Yfilter [K] NETS[K] FiST[K] KB KB KB KB KB Size of XML Document (KB) () Figure : Filtering Time Experimental Results Figure compares the performance of our filtering system with that of YFilter an FiST. In Figure (a), the ocument size was fixe to KB an the numers of twig queries were varie from, to, in steps of K. For K queries, all three methos perform comparaly well, however, as the numer of twig patterns were increase, the filtering time for FiST an YFilter increase ramatically. In Figure (), the numer of queries was fixe to, an the ocument size was varie from KB to KB. For KB case, all three methos yiele comparale results. The performance improvement of NETS was notice as the ocument size was increase to KB. The performance improvement achieve y the NETS approach is ue to two reasons. First, our filtering approach employs holistic filtering of the query sequences, thus a match or a ismissal of a particular query twig can e mae earlier in the filtering process. Secon, our filtering approach filters false matches on-the-fly, thus avoiing an expensive post-processing phase. We conclue that our approach provies an efficient filtering algorithm that is scalale in terms of the numer of user profiles an the size of the XML ocument.. CONCLUSION We presente an XML-ase filtering system that uses a new sequence encoing (NETS) for oth the streaming ocuments an query profiles. Using NETS we provie a necessary an sufficient conition for a query profile to have a match in a given ocument. An important property of our system is that false positives an false ismissals are eliminate on-the-fly with a single scan of the streaming ocument. Experimental evaluation showe that NETS filtering provie performance improvements in comparison to state-of-the-art filtering systems. We plan to explore NETS encoing for the fullflege case that reports the positions of all query matches in a streaming XML ocument. Moreover, we will explore the enefits of this encoing for traitional structural XML query processing.. ACKNOWLEDGMENTS This research was partially supporte y NSF grant. REFERENCES [] Altinel, M., an Franklin M., Efficient Filtering of XML Documents for Selective Dissemination of Information. In VLDB Journal, pages -, Septemer. [] Antonellis, P., an Makris, C., XFIS: An XML Filtering System ase on String Representation an Matching. International Journal on We Engineering an Technology (IJWET). v., n., pages,. [] Berglun, A., Boag, D., Chamerlin, M., Fernanez, M., Kay, M., Roie, J., Dimeon, J., XML Path Language (XPath).. In WC Propose Recommation, [] Diao, Y., Rizvi, S. an Franklin, M.J., Towars an Internet-Scale XML Dissemination Service. In Proc. Of VLDB,. [] Diao, Y., Altinel, M., Franklin, M.J., Zhang, H., an Fischer, P. Path Sharing an Preicate Evaluation for High-Performance XML Filtering. ACM Trans. Dataase Syst., v., n., pages,. [] Kwon, J., Rao, P., Moon, B., Lee, S. Value-ase Preicate Filteirng of XML Documents. Data an Knowlege Engineering, v., n., pages -,. [] Kwon, J., Rao, P., Moon, B., an Lee, S. FiST: Scalale XML Document Filtering y Sequencing Twig Patterns. In VLDB : Proceeings of the st international conference on Very large ata ases, pages. VLDB Enowment,. [] Rao, P., Moon, B., Sequencing XML Data an Query Twigs for Fast Pattern Matching, ACM Transactions on Dataase Systems (TODS), v. n., pages -,. [] University of Washington XML Repository,, [] Wang, H., an Meng, X., On the Sequencing of Tree Structures for XML Inexing. In Proceeings of ICDE,. [] Wang, H., Park, S., Fan, W., An Yu, P., ViST: A ynamic inex metho for querying xml ata y tree structures, In Proceeings of the SIGMOD Conference, pages,.

CMSC 430 Introduction to Compilers. Spring Register Allocation

CMSC 430 Introduction to Compilers. Spring Register Allocation CMSC 430 Introuction to Compilers Spring 2016 Register Allocation Introuction Change coe that uses an unoune set of virtual registers to coe that uses a finite set of actual regs For ytecoe targets, can

More information

Online Appendix to: Generalizing Database Forensics

Online Appendix to: Generalizing Database Forensics Online Appenix to: Generalizing Database Forensics KYRIACOS E. PAVLOU an RICHARD T. SNODGRASS, University of Arizona This appenix presents a step-by-step iscussion of the forensic analysis protocol that

More information

Positions, Iterators, Tree Structures and Tree Traversals. Readings - Chapter 7.3, 7.4 and 8

Positions, Iterators, Tree Structures and Tree Traversals. Readings - Chapter 7.3, 7.4 and 8 Positions, Iterators, Tree Structures an Reaings - Chapter 7.3, 7.4 an 8 1 Positional Lists q q q q A position acts as a marker or token within the broaer positional list. A position p is unaffecte by

More information

Efficient filtering of XML documents with XPath expressions

Efficient filtering of XML documents with XPath expressions The VLDB Journal (22) 11: 354 379 / Digital Oject Identifier (DOI) 1.17/s778-2-77-6 Efficient filtering of XML documents with XPath expressions Chee-Yong Chan, Pascal Feler, Minos Garofalakis, Rajeev Rastogi

More information

Skyline Community Search in Multi-valued Networks

Skyline Community Search in Multi-valued Networks Syline Community Search in Multi-value Networs Rong-Hua Li Beijing Institute of Technology Beijing, China lironghuascut@gmail.com Jeffrey Xu Yu Chinese University of Hong Kong Hong Kong, China yu@se.cuh.eu.h

More information

Efficient Filtering of XML Documents with XPath Expressions

Efficient Filtering of XML Documents with XPath Expressions Efficient Filtering of XML Documents with XPath Expressions Chee-Yong Chan, Pascal Feler, Minos Garofalakis, Rajeev Rastogi Bell Laoratories, Lucent Technologies fcychan,pascal,minos,rastogig@research.ell-las.com

More information

SFilter: A Simple and Scalable Filter for XML Streams

SFilter: A Simple and Scalable Filter for XML Streams SFilter: A Simple and Scalable Filter for XML Streams Abdul Nizar M., G. Suresh Babu, P. Sreenivasa Kumar Indian Institute of Technology Madras Chennai - 600 036 INDIA nizar@cse.iitm.ac.in, sureshbabuau@gmail.com,

More information

Disjoint Multipath Routing in Dual Homing Networks using Colored Trees

Disjoint Multipath Routing in Dual Homing Networks using Colored Trees Disjoint Multipath Routing in Dual Homing Networks using Colore Trees Preetha Thulasiraman, Srinivasan Ramasubramanian, an Marwan Krunz Department of Electrical an Computer Engineering University of Arizona,

More information

An ECA-based Control-rule formalism for the BPEL Process Modularization *

An ECA-based Control-rule formalism for the BPEL Process Modularization * Availale online at www.scienceirect.com Proceia Environmental Sciences 11 (2011) 511 517 An ECA-ase Control-rule formalism for the BPEL Process Moularization * Bang Ouyang, Farong Zhong **, Huan Liu Department

More information

An Introduction of BOM Modeling Framework

An Introduction of BOM Modeling Framework An Introuction of BOM Moeling Framework Qiang He, Ming-xin Zhang, an Jian-xing Gong Astract Component ase moeling has een a research hotpot in the area of Moeling an Simulation for a long time. In orer

More information

The Reconstruction of Graphs. Dhananjay P. Mehendale Sir Parashurambhau College, Tilak Road, Pune , India. Abstract

The Reconstruction of Graphs. Dhananjay P. Mehendale Sir Parashurambhau College, Tilak Road, Pune , India. Abstract The Reconstruction of Graphs Dhananay P. Mehenale Sir Parashurambhau College, Tila Roa, Pune-4030, Inia. Abstract In this paper we iscuss reconstruction problems for graphs. We evelop some new ieas lie

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpenCourseWare http://ocw.mit.eu 6.854J / 18.415J Avance Algorithms Fall 2008 For inormation about citing these materials or our Terms o Use, visit: http://ocw.mit.eu/terms. 18.415/6.854 Avance Algorithms

More information

Generalized Edge Coloring for Channel Assignment in Wireless Networks

Generalized Edge Coloring for Channel Assignment in Wireless Networks TR-IIS-05-021 Generalize Ege Coloring for Channel Assignment in Wireless Networks Chun-Chen Hsu, Pangfeng Liu, Da-Wei Wang, Jan-Jan Wu December 2005 Technical Report No. TR-IIS-05-021 http://www.iis.sinica.eu.tw/lib/techreport/tr2005/tr05.html

More information

PathStack : A Holistic Path Join Algorithm for Path Query with Not-predicates on XML Data

PathStack : A Holistic Path Join Algorithm for Path Query with Not-predicates on XML Data PathStack : A Holistic Path Join Algorithm for Path Query with Not-predicates on XML Data Enhua Jiao, Tok Wang Ling, Chee-Yong Chan School of Computing, National University of Singapore {jiaoenhu,lingtw,chancy}@comp.nus.edu.sg

More information

Efficient Filtering of XML Documents with XPath Expressions

Efficient Filtering of XML Documents with XPath Expressions Efficient Filtering of XML Documents with XPath Expressions Chee-Yong Chan, Pascal Feler, Minos Garofalakis, Rajeev Rastogi Bell Laoratories, Lucent Technologies cychan,pascal,minos,rastogi @research.ell-las.com

More information

Generalized Edge Coloring for Channel Assignment in Wireless Networks

Generalized Edge Coloring for Channel Assignment in Wireless Networks Generalize Ege Coloring for Channel Assignment in Wireless Networks Chun-Chen Hsu Institute of Information Science Acaemia Sinica Taipei, Taiwan Da-wei Wang Jan-Jan Wu Institute of Information Science

More information

XML Filtering Technologies

XML Filtering Technologies XML Filtering Technologies Introduction Data exchange between applications: use XML Messages processed by an XML Message Broker Examples Publish/subscribe systems [Altinel 00] XML message routing [Snoeren

More information

Scalable Filtering and Matching of XML Documents in Publish/Subscribe Systems for Mobile Environment

Scalable Filtering and Matching of XML Documents in Publish/Subscribe Systems for Mobile Environment Scalable Filtering and Matching of XML Documents in Publish/Subscribe Systems for Mobile Environment Yi Yi Myint, Hninn Aye Thant Abstract The number of applications using XML data representation is growing

More information

Spanheight, A Natural Extension of Bandwidth and Treedepth

Spanheight, A Natural Extension of Bandwidth and Treedepth Master s Thesis Spanheight, A Natural Extension of Banwith an Treeepth Author: N. van Roen Supervisor: Prof. r. Hans. L. Bolaener A thesis sumitte in fulfilment of the requirements for the egree of Master

More information

Adjacency Matrix Based Full-Text Indexing Models

Adjacency Matrix Based Full-Text Indexing Models 1000-9825/2002/13(10)1933-10 2002 Journal of Software Vol.13, No.10 Ajacency Matrix Base Full-Text Inexing Moels ZHOU Shui-geng 1, HU Yun-fa 2, GUAN Ji-hong 3 1 (Department of Computer Science an Engineering,

More information

Uninformed search methods

Uninformed search methods CS 1571 Introuction to AI Lecture 4 Uninforme search methos Milos Hauskrecht milos@cs.pitt.eu 539 Sennott Square Announcements Homework assignment 1 is out Due on Thursay, September 11, 014 before the

More information

d 3 d 4 d d d d d d d d d d d 1 d d d d d d

d 3 d 4 d d d d d d d d d d d 1 d d d d d d Proceeings of the IASTED International Conference Software Engineering an Applications (SEA') October 6-, 1, Scottsale, Arizona, USA AN OBJECT-ORIENTED APPROACH FOR MANAGING A NETWORK OF DATABASES Shu-Ching

More information

Random Clustering for Multiple Sampling Units to Speed Up Run-time Sample Generation

Random Clustering for Multiple Sampling Units to Speed Up Run-time Sample Generation DEIM Forum 2018 I4-4 Abstract Ranom Clustering for Multiple Sampling Units to Spee Up Run-time Sample Generation uzuru OKAJIMA an Koichi MARUAMA NEC Solution Innovators, Lt. 1-18-7 Shinkiba, Koto-ku, Tokyo,

More information

Divide-and-Conquer Algorithms

Divide-and-Conquer Algorithms Supplment to A Practical Guie to Data Structures an Algorithms Using Java Divie-an-Conquer Algorithms Sally A Golman an Kenneth J Golman Hanout Divie-an-conquer algorithms use the following three phases:

More information

BIJECTIONS FOR PLANAR MAPS WITH BOUNDARIES

BIJECTIONS FOR PLANAR MAPS WITH BOUNDARIES BIJECTIONS FOR PLANAR MAPS WITH BOUNDARIES OLIVIER BERNARDI AND ÉRIC FUSY Abstract. We present bijections for planar maps with bounaries. In particular, we obtain bijections for triangulations an quarangulations

More information

Frequent Pattern Mining. Frequent Item Set Mining. Overview. Frequent Item Set Mining: Motivation. Frequent Pattern Mining comprises

Frequent Pattern Mining. Frequent Item Set Mining. Overview. Frequent Item Set Mining: Motivation. Frequent Pattern Mining comprises verview Frequent Pattern Mining comprises Frequent Pattern Mining hristian Borgelt School of omputer Science University of Konstanz Universitätsstraße, Konstanz, Germany christian.borgelt@uni-konstanz.e

More information

Non-homogeneous Generalization in Privacy Preserving Data Publishing

Non-homogeneous Generalization in Privacy Preserving Data Publishing Non-homogeneous Generalization in Privacy Preserving Data Publishing W. K. Wong, Nios Mamoulis an Davi W. Cheung Department of Computer Science, The University of Hong Kong Pofulam Roa, Hong Kong {wwong2,nios,cheung}@cs.hu.h

More information

TwigINLAB: A Decomposition-Matching-Merging Approach To Improving XML Query Processing

TwigINLAB: A Decomposition-Matching-Merging Approach To Improving XML Query Processing American Journal of Applied Sciences 5 (9): 99-25, 28 ISSN 546-9239 28 Science Publications TwigINLAB: A Decomposition-Matching-Merging Approach To Improving XML Query Processing Su-Cheng Haw and Chien-Sing

More information

Coupling the User Interfaces of a Multiuser Program

Coupling the User Interfaces of a Multiuser Program Coupling the User Interfaces of a Multiuser Program PRASUN DEWAN University of North Carolina at Chapel Hill RAJIV CHOUDHARY Intel Corporation We have evelope a new moel for coupling the user-interfaces

More information

CS 106 Winter 2016 Craig S. Kaplan. Module 01 Processing Recap. Topics

CS 106 Winter 2016 Craig S. Kaplan. Module 01 Processing Recap. Topics CS 106 Winter 2016 Craig S. Kaplan Moule 01 Processing Recap Topics The basic parts of speech in a Processing program Scope Review of syntax for classes an objects Reaings Your CS 105 notes Learning Processing,

More information

Variable Independence and Resolution Paths for Quantified Boolean Formulas

Variable Independence and Resolution Paths for Quantified Boolean Formulas Variable Inepenence an Resolution Paths for Quantifie Boolean Formulas Allen Van Geler http://www.cse.ucsc.eu/ avg University of California, Santa Cruz Abstract. Variable inepenence in quantifie boolean

More information

Compiler Optimisation

Compiler Optimisation Compiler Optimisation Michael O Boyle mob@inf.e.ac.uk Room 1.06 January, 2014 1 Two recommene books for the course Recommene texts Engineering a Compiler Engineering a Compiler by K. D. Cooper an L. Torczon.

More information

Overlap Interval Partition Join

Overlap Interval Partition Join Overlap Interval Partition Join Anton Dignös Department of Computer Science University of Zürich, Switzerlan aignoes@ifi.uzh.ch Michael H. Böhlen Department of Computer Science University of Zürich, Switzerlan

More information

Computer Organization

Computer Organization Computer Organization Douglas Comer Computer Science Department Purue University 250 N. University Street West Lafayette, IN 47907-2066 http://www.cs.purue.eu/people/comer Copyright 2006. All rights reserve.

More information

On the Energy Efficiency of Content Delivery Architectures

On the Energy Efficiency of Content Delivery Architectures On the Energy Efficiency of Delivery Architectures Kyle Guan, Gary Atkinson, an Daniel C. Kilper Bell Las, Acatel-Lucent, 79 Holmel Roa, Holmel, NJ 07733 Ece Gulsen MIT, 77 Mass. Ave., Camrige, MA 039

More information

Answering XML Twig Queries with Automata

Answering XML Twig Queries with Automata Answering XML Twig Queries with Automata Bing Sun, Bo Zhou, Nan Tang, Guoren Wang, Ge Yu, and Fulin Jia Northeastern University, Shenyang, China {sunb,wanggr,yuge,dbgroup}@mail.neu.edu.cn Abstract. XML

More information

Learning convex bodies is hard

Learning convex bodies is hard Learning convex boies is har Navin Goyal Microsoft Research Inia navingo@microsoftcom Luis Raemacher Georgia Tech lraemac@ccgatecheu Abstract We show that learning a convex boy in R, given ranom samples

More information

An Algorithm for Building an Enterprise Network Topology Using Widespread Data Sources

An Algorithm for Building an Enterprise Network Topology Using Widespread Data Sources An Algorithm for Builing an Enterprise Network Topology Using Wiesprea Data Sources Anton Anreev, Iurii Bogoiavlenskii Petrozavosk State University Petrozavosk, Russia {anreev, ybgv}@cs.petrsu.ru Abstract

More information

Recitation Caches and Blocking. 4 March 2019

Recitation Caches and Blocking. 4 March 2019 15-213 Recitation Caches an Blocking 4 March 2019 Agena Reminers Revisiting Cache Lab Caching Review Blocking to reuce cache misses Cache alignment Reminers Due Dates Cache Lab (Thursay 3/7) Miterm Exam

More information

A Classification of 3R Orthogonal Manipulators by the Topology of their Workspace

A Classification of 3R Orthogonal Manipulators by the Topology of their Workspace A Classification of R Orthogonal Manipulators by the Topology of their Workspace Maher aili, Philippe Wenger an Damien Chablat Institut e Recherche en Communications et Cybernétique e Nantes, UMR C.N.R.S.

More information

A Convex Clustering-based Regularizer for Image Segmentation

A Convex Clustering-based Regularizer for Image Segmentation Vision, Moeling, an Visualization (2015) D. Bommes, T. Ritschel an T. Schultz (Es.) A Convex Clustering-base Regularizer for Image Segmentation Benjamin Hell (TU Braunschweig), Marcus Magnor (TU Braunschweig)

More information

Indexing the Edges A simple and yet efficient approach to high-dimensional indexing

Indexing the Edges A simple and yet efficient approach to high-dimensional indexing Inexing the Eges A simple an yet efficient approach to high-imensional inexing Beng Chin Ooi Kian-Lee Tan Cui Yu Stephane Bressan Department of Computer Science National University of Singapore 3 Science

More information

On the Role of Multiply Sectioned Bayesian Networks to Cooperative Multiagent Systems

On the Role of Multiply Sectioned Bayesian Networks to Cooperative Multiagent Systems On the Role of Multiply Sectione Bayesian Networks to Cooperative Multiagent Systems Y. Xiang University of Guelph, Canaa, yxiang@cis.uoguelph.ca V. Lesser University of Massachusetts at Amherst, USA,

More information

Lab work #8. Congestion control

Lab work #8. Congestion control TEORÍA DE REDES DE TELECOMUNICACIONES Grao en Ingeniería Telemática Grao en Ingeniería en Sistemas e Telecomunicación Curso 2015-2016 Lab work #8. Congestion control (1 session) Author: Pablo Pavón Mariño

More information

Additional Divide and Conquer Algorithms. Skipping from chapter 4: Quicksort Binary Search Binary Tree Traversal Matrix Multiplication

Additional Divide and Conquer Algorithms. Skipping from chapter 4: Quicksort Binary Search Binary Tree Traversal Matrix Multiplication Aitional Divie an Conquer Algorithms Skipping from chapter 4: Quicksort Binary Search Binary Tree Traversal Matrix Multiplication Divie an Conquer Closest Pair Let s revisit the closest pair problem. Last

More information

6.823 Computer System Architecture. Problem Set #3 Spring 2002

6.823 Computer System Architecture. Problem Set #3 Spring 2002 6.823 Computer System Architecture Problem Set #3 Spring 2002 Stuents are strongly encourage to collaborate in groups of up to three people. A group shoul han in only one copy of the solution to the problem

More information

High-Performance Holistic XML Twig Filtering Using GPUs. Ildar Absalyamov, Roger Moussalli, Walid Najjar and Vassilis Tsotras

High-Performance Holistic XML Twig Filtering Using GPUs. Ildar Absalyamov, Roger Moussalli, Walid Najjar and Vassilis Tsotras High-Performance Holistic XML Twig Filtering Using GPUs Ildar Absalyamov, Roger Moussalli, Walid Najjar and Vassilis Tsotras Outline! Motivation! XML filtering in the literature! Software approaches! Hardware

More information

A Keyword-Based Filtering Technique of Document-Centric XML using NFA Representation

A Keyword-Based Filtering Technique of Document-Centric XML using NFA Representation A Keyword-Based Filtering Technique of Document-Centric XML using NFA Representation Changwoo Byun, Kyounghan Lee, and Seog Park Abstract XML is becoming a de facto standard for online data exchange. Existing

More information

Aggregate Query Processing of Streaming XML Data

Aggregate Query Processing of Streaming XML Data ggregate Query Processing of Streaming XML Data Yaw-Huei Chen and Ming-Chi Ho Department of Computer Science and Information Engineering National Chiayi University {ychen, s0920206@mail.ncyu.edu.tw bstract

More information

Distributed Line Graphs: A Universal Technique for Designing DHTs Based on Arbitrary Regular Graphs

Distributed Line Graphs: A Universal Technique for Designing DHTs Based on Arbitrary Regular Graphs IEEE TRANSACTIONS ON KNOWLEDE AND DATA ENINEERIN, MANUSCRIPT ID Distribute Line raphs: A Universal Technique for Designing DHTs Base on Arbitrary Regular raphs Yiming Zhang an Ling Liu, Senior Member,

More information

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques Politehnica University of Timisoara Mobile Computing, Sensors Network an Embee Systems Laboratory ing Techniques What is testing? ing is the process of emonstrating that errors are not present. The purpose

More information

CS269I: Incentives in Computer Science Lecture #8: Incentives in BGP Routing

CS269I: Incentives in Computer Science Lecture #8: Incentives in BGP Routing CS269I: Incentives in Computer Science Lecture #8: Incentives in BGP Routing Tim Roughgaren October 19, 2016 1 Routing in the Internet Last lecture we talke about elay-base (or selfish ) routing, which

More information

The diamonds Package

The diamonds Package The iamons Package April 23, 2002 Version 1.0-3 Date 2002/04/22 Title Analysis an sampling gris from iamon partitions Author Denis White Maintainer Denis White

More information

Optimal Oblivious Path Selection on the Mesh

Optimal Oblivious Path Selection on the Mesh Optimal Oblivious Path Selection on the Mesh Costas Busch Malik Magon-Ismail Jing Xi Department of Computer Science Rensselaer Polytechnic Institute Troy, NY 280, USA {buschc,magon,xij2}@cs.rpi.eu Abstract

More information

Cluster Center Initialization Method for K-means Algorithm Over Data Sets with Two Clusters

Cluster Center Initialization Method for K-means Algorithm Over Data Sets with Two Clusters Available online at www.scienceirect.com Proceia Engineering 4 (011 ) 34 38 011 International Conference on Avances in Engineering Cluster Center Initialization Metho for K-means Algorithm Over Data Sets

More information

Politecnico di Torino. Porto Institutional Repository

Politecnico di Torino. Porto Institutional Repository Politecnico i Torino Porto Institutional Repositor [Article] Scalale Algorithms for NFA Multi-Striing an NFA-Base Deep Packet Inspection on GPUs Original Citation: M. Avalle; F. Risso; R. Sisto (6). Scalale

More information

MORA: a Movement-Based Routing Algorithm for Vehicle Ad Hoc Networks

MORA: a Movement-Based Routing Algorithm for Vehicle Ad Hoc Networks : a Movement-Base Routing Algorithm for Vehicle A Hoc Networks Fabrizio Granelli, Senior Member, Giulia Boato, Member, an Dzmitry Kliazovich, Stuent Member Abstract Recent interest in car-to-car communications

More information

Particle Swarm Optimization Based on Smoothing Approach for Solving a Class of Bi-Level Multiobjective Programming Problem

Particle Swarm Optimization Based on Smoothing Approach for Solving a Class of Bi-Level Multiobjective Programming Problem BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 17, No 3 Sofia 017 Print ISSN: 1311-970; Online ISSN: 1314-4081 DOI: 10.1515/cait-017-0030 Particle Swarm Optimization Base

More information

Data & Knowledge Engineering

Data & Knowledge Engineering Data & Knowledge Engineering 67 (28) 51 73 Contents lists available at ScienceDirect Data & Knowledge Engineering journal homepage: www.elsevier.com/locate/datak Value-based predicate filtering of XML

More information

Proving Vizing s Theorem with Rodin

Proving Vizing s Theorem with Rodin Proving Vizing s Theorem with Roin Joachim Breitner March 25, 2011 Proofs for Vizing s Theorem t to be unwiely unless presente in form a constructive algorithm with a proof of its correctness an termination.

More information

Avoiding Unnecessary Ordering Operations in XPath

Avoiding Unnecessary Ordering Operations in XPath voiding Unnecessary Ordering Operations in XPath Jan Hidders Philippe Michiels University of ntwerp Dept. of Mathematics and Computer Science Middelheimlaan 1, BE-2020 ntwerpen, Belgium {jan.hidders, philippe.michiels}@ua.ac.e

More information

Accelerating XML Structural Matching Using Suffix Bitmaps

Accelerating XML Structural Matching Using Suffix Bitmaps Accelerating XML Structural Matching Using Suffix Bitmaps Feng Shao, Gang Chen, and Jinxiang Dong Dept. of Computer Science, Zhejiang University, Hangzhou, P.R. China microf_shao@msn.com, cg@zju.edu.cn,

More information

An Efficient XML Index Structure with Bottom-Up Query Processing

An Efficient XML Index Structure with Bottom-Up Query Processing An Efficient XML Index Structure with Bottom-Up Query Processing Dong Min Seo, Jae Soo Yoo, and Ki Hyung Cho Department of Computer and Communication Engineering, Chungbuk National University, 48 Gaesin-dong,

More information

Mining Sequential Patterns with Periodic Wildcard Gaps

Mining Sequential Patterns with Periodic Wildcard Gaps Mining Sequential Patterns with Perioic Wilcar Gaps Youxi Wu, Lingling Wang, Jiaong Ren, Wei Ding, Xinong Wu Abstract Mining frequent patterns with perioic wilcar gaps is a critical ata mining problem

More information

1 Disjoint-set data structure.

1 Disjoint-set data structure. CS 124 Setion #4 Union-Fin, Greey Algorithms 2/20/17 1 Disjoint-set ata struture. 1.1 Operations Disjoint-set ata struture enale us to effiiently perform operations suh as plaing elements into sets, querying

More information

TREE SPECIES CLASSIFICATION USING RADIOMETRY, TEXTURE AND SHAPE BASED FEATURES

TREE SPECIES CLASSIFICATION USING RADIOMETRY, TEXTURE AND SHAPE BASED FEATURES TREE SPECIES CLASSIFICATIO USIG RADIOMETRY, TEXTURE AD SHAPE BASED FEATURES Maria S. Kulikova 1, Meena Mani 1, Anuj Srivastava 2, Xavier Descomes 1, Josiane Zeruia 1 1 Ariana Research Group, IRIA/I3S 06902

More information

Evaluating XPath Queries

Evaluating XPath Queries Chapter 8 Evaluating XPath Queries Peter Wood (BBK) XML Data Management 201 / 353 Introduction When XML documents are small and can fit in memory, evaluating XPath expressions can be done efficiently But

More information

Politecnico di Torino. Porto Institutional Repository

Politecnico di Torino. Porto Institutional Repository Politecnico i Torino Porto Institutional Repository [Proceeing] Automatic March tests generation for multi-port SRAMs Original Citation: Benso A., Bosio A., i Carlo S., i Natale G., Prinetto P. (26). Automatic

More information

Kinematic Analysis of a Family of 3R Manipulators

Kinematic Analysis of a Family of 3R Manipulators Kinematic Analysis of a Family of R Manipulators Maher Baili, Philippe Wenger an Damien Chablat Institut e Recherche en Communications et Cybernétique e Nantes, UMR C.N.R.S. 6597 1, rue e la Noë, BP 92101,

More information

Research Article Inviscid Uniform Shear Flow past a Smooth Concave Body

Research Article Inviscid Uniform Shear Flow past a Smooth Concave Body International Engineering Mathematics Volume 04, Article ID 46593, 7 pages http://x.oi.org/0.55/04/46593 Research Article Invisci Uniform Shear Flow past a Smooth Concave Boy Abullah Mura Department of

More information

Comparison of Methods for Increasing the Performance of a DUA Computation

Comparison of Methods for Increasing the Performance of a DUA Computation Comparison of Methos for Increasing the Performance of a DUA Computation Michael Behrisch, Daniel Krajzewicz, Peter Wagner an Yun-Pang Wang Institute of Transportation Systems, German Aerospace Center,

More information

Throughput Characterization of Node-based Scheduling in Multihop Wireless Networks: A Novel Application of the Gallai-Edmonds Structure Theorem

Throughput Characterization of Node-based Scheduling in Multihop Wireless Networks: A Novel Application of the Gallai-Edmonds Structure Theorem Throughput Characterization of Noe-base Scheuling in Multihop Wireless Networks: A Novel Application of the Gallai-Emons Structure Theorem Bo Ji an Yu Sang Dept. of Computer an Information Sciences Temple

More information

Published by: PIONEER RESEARCH & DEVELOPMENT GROUP ( ) 1

Published by: PIONEER RESEARCH & DEVELOPMENT GROUP (  ) 1 A Conventional Query Processing using Wireless XML Broadcasting Subhashini.G 1, Kavitha.M 2 1 M.E II Year, Department of Computer Science and Engineering, Sriram Engineering College, Perumalpattu 602 024

More information

Pairwise alignment using shortest path algorithms, Gunnar Klau, November 29, 2005, 11:

Pairwise alignment using shortest path algorithms, Gunnar Klau, November 29, 2005, 11: airwise alignment using shortest path algorithms, Gunnar Klau, November 9,, : 3 3 airwise alignment using shortest path algorithms e will iscuss: it graph Dijkstra s algorithm algorithm (GDU) 3. References

More information

Using Vector and Raster-Based Techniques in Categorical Map Generalization

Using Vector and Raster-Based Techniques in Categorical Map Generalization Thir ICA Workshop on Progress in Automate Map Generalization, Ottawa, 12-14 August 1999 1 Using Vector an Raster-Base Techniques in Categorical Map Generalization Beat Peter an Robert Weibel Department

More information

Solution Representation for Job Shop Scheduling Problems in Ant Colony Optimisation

Solution Representation for Job Shop Scheduling Problems in Ant Colony Optimisation Solution Representation for Job Shop Scheuling Problems in Ant Colony Optimisation James Montgomery, Carole Faya 2, an Sana Petrovic 2 Faculty of Information & Communication Technologies, Swinburne University

More information

Authenticated indexing for outsourced spatial databases

Authenticated indexing for outsourced spatial databases The VLDB Journal (2009) 8:63 648 DOI 0.007/s00778-008-03-2 REGULAR PAPER Authenticate inexing for outsource spatial atabases Yin Yang Stavros Papaopoulos Dimitris Papaias George Kollios Receive: February

More information

filtering LETTER An Improved Neighbor Selection Algorithm in Collaborative Taek-Hun KIM a), Student Member and Sung-Bong YANG b), Nonmember

filtering LETTER An Improved Neighbor Selection Algorithm in Collaborative Taek-Hun KIM a), Student Member and Sung-Bong YANG b), Nonmember 107 IEICE TRANS INF & SYST, VOLE88 D, NO5 MAY 005 LETTER An Improve Neighbor Selection Algorithm in Collaborative Filtering Taek-Hun KIM a), Stuent Member an Sung-Bong YANG b), Nonmember SUMMARY Nowaays,

More information

Improving Spatial Reuse of IEEE Based Ad Hoc Networks

Improving Spatial Reuse of IEEE Based Ad Hoc Networks mproving Spatial Reuse of EEE 82.11 Base A Hoc Networks Fengji Ye, Su Yi an Biplab Sikar ECSE Department, Rensselaer Polytechnic nstitute Troy, NY 1218 Abstract n this paper, we evaluate an suggest methos

More information

IJSER 1 INTRODUCTION. Sathiya G. In this paper, proposed a novel, energy and latency. efficient wireless XML streaming scheme supporting twig

IJSER 1 INTRODUCTION. Sathiya G. In this paper, proposed a novel, energy and latency. efficient wireless XML streaming scheme supporting twig International Journal of Scientific & Engineering Research, Volume 5, Issue 4, April-2014 127 WIRELESS XML STREAMING USING LINEAGE ENCODING Sathiya G Abstract - With the rapid development of wireless network

More information

Accelerating XML Query Matching through Custom Stack Generation on FPGAs

Accelerating XML Query Matching through Custom Stack Generation on FPGAs Accelerating XML Query Matching through Custom Stack Generation on FPGAs Roger Moussalli, Mariam Salloum, Walid Najjar, and Vassilis Tsotras Department of Computer Science and Engineering University of

More information

Fast Fractal Image Compression using PSO Based Optimization Techniques

Fast Fractal Image Compression using PSO Based Optimization Techniques Fast Fractal Compression using PSO Base Optimization Techniques A.Krishnamoorthy Visiting faculty Department Of ECE University College of Engineering panruti rishpci89@gmail.com S.Buvaneswari Visiting

More information

PERFECT ONE-ERROR-CORRECTING CODES ON ITERATED COMPLETE GRAPHS: ENCODING AND DECODING FOR THE SF LABELING

PERFECT ONE-ERROR-CORRECTING CODES ON ITERATED COMPLETE GRAPHS: ENCODING AND DECODING FOR THE SF LABELING PERFECT ONE-ERROR-CORRECTING CODES ON ITERATED COMPLETE GRAPHS: ENCODING AND DECODING FOR THE SF LABELING PAMELA RUSSELL ADVISOR: PAUL CULL OREGON STATE UNIVERSITY ABSTRACT. Birchall an Teor prove that

More information

UC Santa Cruz UC Santa Cruz Previously Published Works

UC Santa Cruz UC Santa Cruz Previously Published Works UC Santa Cruz UC Santa Cruz Previously Publishe Works Title Towars Loop-Free Forwaring of Anonymous Internet Datagrams that Enforce Provenance Permalink https://escholarship.org/uc/item/5376h1mm Author

More information

Interior Permanent Magnet Synchronous Motor (IPMSM) Adaptive Genetic Parameter Estimation

Interior Permanent Magnet Synchronous Motor (IPMSM) Adaptive Genetic Parameter Estimation Interior Permanent Magnet Synchronous Motor (IPMSM) Aaptive Genetic Parameter Estimation Java Rezaie, Mehi Gholami, Reza Firouzi, Tohi Alizaeh, Karim Salashoor Abstract - Interior permanent magnet synchronous

More information

APPLYING GENETIC ALGORITHM IN QUERY IMPROVEMENT PROBLEM. Abdelmgeid A. Aly

APPLYING GENETIC ALGORITHM IN QUERY IMPROVEMENT PROBLEM. Abdelmgeid A. Aly International Journal "Information Technologies an Knowlege" Vol. / 2007 309 [Project MINERVAEUROPE] Project MINERVAEUROPE: Ministerial Network for Valorising Activities in igitalisation -

More information

Massively Parallel XML Twig Filtering Using Dynamic Programming on FPGAs

Massively Parallel XML Twig Filtering Using Dynamic Programming on FPGAs Massively Parallel XML Twig Filtering Using Dynamic Programming on FPGAs Roger Moussalli, Mariam Salloum, Walid Najjar, Vassilis J. Tsotras University of California Riverside, California 92521, USA (rmous,msalloum,najjar,tsotras)@cs.ucr.edu

More information

NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES WITH THE USE OF THE IPAN99 ALGORITHM 1. INTRODUCTION 2.

NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES WITH THE USE OF THE IPAN99 ALGORITHM 1. INTRODUCTION 2. JOURNAL OF MEDICAL INFORMATICS & TECHNOLOGIES Vol. 13/009, ISSN 164-6037 Krzysztof WRÓBEL, Rafał DOROZ * fingerprint, reference point, IPAN99 NEW METHOD FOR FINDING A REFERENCE POINT IN FINGERPRINT IMAGES

More information

CONSTRUCTION AND ANALYSIS OF INVERSIONS IN S 2 AND H 2. Arunima Ray. Final Paper, MATH 399. Spring 2008 ABSTRACT

CONSTRUCTION AND ANALYSIS OF INVERSIONS IN S 2 AND H 2. Arunima Ray. Final Paper, MATH 399. Spring 2008 ABSTRACT CONSTUCTION AN ANALYSIS OF INVESIONS IN S AN H Arunima ay Final Paper, MATH 399 Spring 008 ASTACT The construction use to otain inversions in two-imensional Eucliean space was moifie an applie to otain

More information

PART 2. Organization Of An Operating System

PART 2. Organization Of An Operating System PART 2 Organization Of An Operating System CS 503 - PART 2 1 2010 Services An OS Supplies Support for concurrent execution Facilities for process synchronization Inter-process communication mechanisms

More information

CS350 - Exam 4 (100 Points)

CS350 - Exam 4 (100 Points) Fall 0 Name CS0 - Exam (00 Points).(0 points) Re-Black Trees For the Re-Black tree below, inicate where insert() woul initially occur before rebalancing/recoloring. Sketch the tree at ALL intermeiate steps

More information

Robust Camera Calibration for an Autonomous Underwater Vehicle

Robust Camera Calibration for an Autonomous Underwater Vehicle obust Camera Calibration for an Autonomous Unerwater Vehicle Matthew Bryant, Davi Wettergreen *, Samer Aballah, Alexaner Zelinsky obotic Systems Laboratory Department of Engineering, FEIT Department of

More information

arxiv: v2 [math.co] 5 Jun 2018

arxiv: v2 [math.co] 5 Jun 2018 Some useful lemmas on the ege Szege inex arxiv:1805.06578v [math.co] 5 Jun 018 Shengjie He 1 1. Department of Mathematics, Beijing Jiaotong University, Beijing, 100044, China Abstract The ege Szege inex

More information

Image Segmentation using K-means clustering and Thresholding

Image Segmentation using K-means clustering and Thresholding Image Segmentation using Kmeans clustering an Thresholing Preeti Panwar 1, Girhar Gopal 2, Rakesh Kumar 3 1M.Tech Stuent, Department of Computer Science & Applications, Kurukshetra University, Kurukshetra,

More information

Queueing Model and Optimization of Packet Dropping in Real-Time Wireless Sensor Networks

Queueing Model and Optimization of Packet Dropping in Real-Time Wireless Sensor Networks Queueing Moel an Optimization of Packet Dropping in Real-Time Wireless Sensor Networks Marc Aoun, Antonios Argyriou, Philips Research, Einhoven, 66AE, The Netherlans Department of Computer an Communication

More information

Loop Scheduling and Partitions for Hiding Memory Latencies

Loop Scheduling and Partitions for Hiding Memory Latencies Loop Scheuling an Partitions for Hiing Memory Latencies Fei Chen Ewin Hsing-Mean Sha Dept. of Computer Science an Engineering University of Notre Dame Notre Dame, IN 46556 Email: fchen,esha @cse.n.eu Tel:

More information

A General Technique for Non-blocking Trees

A General Technique for Non-blocking Trees A General Technique for Non-blocking Trees Trevor rown an Faith Ellen University of Toronto, Canaa Eric Ruppert York University, Canaa Abstract We escribe a general technique for obtaining provably correct,

More information

Shift-map Image Registration

Shift-map Image Registration Shift-map Image Registration Svärm, Linus; Stranmark, Petter Unpublishe: 2010-01-01 Link to publication Citation for publishe version (APA): Svärm, L., & Stranmark, P. (2010). Shift-map Image Registration.

More information

Tracking and Regulation Control of a Mobile Robot System With Kinematic Disturbances: A Variable Structure-Like Approach

Tracking and Regulation Control of a Mobile Robot System With Kinematic Disturbances: A Variable Structure-Like Approach W. E. Dixon e-mail: wixon@ces.clemson.eu D. M. Dawson e-mail: awson@ces.clemson.eu E. Zergeroglu e-mail: ezerger@ces.clemson.eu Department of Electrical & Computer Engineering, Clemson University, Clemson,

More information

Scalable Processing of Read-Only Transactions in Broadcast Push

Scalable Processing of Read-Only Transactions in Broadcast Push Scalale Processing of Read-Only Transactions in Broadcast Push Evaggelia Pitoura Department of Computer Science University of Ioannina, Greece pitoura@cs.uoi.gr Panos K. Chrysanthis Department of Computer

More information