PAPER SRT-Rank: Ranking Keyword Query Results in Relational Databases Using the Strongly Related Tree

Size: px
Start display at page:

Download "PAPER SRT-Rank: Ranking Keyword Query Results in Relational Databases Using the Strongly Related Tree"

Transcription

1 2398 PAPER SRT-Rank: Ranking Keyword Query Results in Relational Databases Using the Strongly Related Tree In-Joong KIM, Student Member, Kyu-Young WHANG a), and Hyuk-Yoon KWON, Nonmembers SUMMARY A top-k keyword query in relational databases returns k trees of tuples where the tuples containing the query keywords are connected via primary key-foreign key relationships in the order of relevance to the query. Existing works are classified into two categories: 1) the schema-based approach and 2) the schema-free approach. We focus on the former utilizing database schema information for more effective ranking of the query results. Ranking measures used in existing works can be classified into two categories: 1) the size of the tree (i.e., the syntactic score) and 2) ranking measures, such as TF-IDF, borrowed from the information retrieval field. However, these measures do not take into account semantic relevancy among relations containing the tuples in the query results. In this paper, we propose a new ranking method that ranks the query results by utilizing semantic relevancy among relations containing the tuples at the schema level. First, we propose a structure of semantically strongly related relations, which we call the strongly related tree (SRT). An SRT is a tree that maximally connects relations based on the lossless join property. Next, we propose a new ranking method, SRT-Rank, that ranks the query results by a new scoring function augmenting existing ones with the concept of the SRT. SRT-Rank is the first research effort that applies semantic relevancy among relations to ranking the results of keyword queries. To show the effectiveness of SRT-Rank, we perform experiments on synthetic and real datasets by augmenting the representative existing methods with SRT-Rank. Experimental results show that, compared with existing methods, SRT-Rank improves performance in terms of four quality measures the mean normalized discounted cumulative gain (ndcg), the number of queries whose top-1 result is relevant to the query, the mean reciprocal rank, and the mean average precision by up to 46.9%, 160.0%, 61.7%, and 63.8%, respectively. In addition, we show that the query performance of SRT-Rank is comparable to or better than those of existing methods. key words: keyword query, relational database, semantic relevancy, lossless join, strongly related tree query languages. Figure 1 shows the Entity-Relationship (ER) diagram of the TPC-H database [18]. The ER diagram represents relationships among customers, suppliers, and parts, where parts are ordered by a customer and supplied by a supplier, who belongs to a nation and a region. Figure 2 shows a sample dataset of the TPC-H database. Here, a directed edge between tuples indicates a reference from one tuple to the other via primary key-foreign key relationship. A keyword query to find the information that a customer whose name is Washington orders parts from a supplier Fig. 1 The ER diagram of the TPC-H database. 1. Introduction As the applications for storing text data in relational databases have become prevalent, keyword queries in relational databases have become an important issue [3], [10], [11], [21], [24]. A keyword query returns a tree of tuples where each leaf node of the tree is mapped to a tuple containing the query keywords, and each pair of adjacent tuples in the tree is connected via a primary key-foreign key relationship. Such a tree is called the Joined Tuple Tree (simply, JTT) [11]. Keyword queries in relational databases have an advantage that users can find their desired information easily without any prior knowledge about database schemas or structured Manuscript received February 7, Manuscript revised April 18, The authors are with the Department of Computer Science, KAIST, Korea. a) kywhang@mozart.kaist.ac.kr DOI: /transinf.2014EDP7040 Fig. 2 A sample dataset of the TPC-H database. Copyright c 2014 The Institute of Electronics, Information and Communication Engineers

2 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2399 Fig. 3 The results of a keyword query { Washington, Smith }. whose name is Smith is represented as { Washington, Smith }. Figures 3 (a) and (b) show the results of the query. In this paper, we propose a new method to improve the ranking quality of the top-k keyword query results in relational databases. A top-k keyword query returns k JTTs in the order of relevance to the query. Relevance to a query is calculated using a predefined scoring function. Therefore, how to design the scoring function to reflect the user s intention as close as possible is the key to improving the ranking quality of JTTs. Many research efforts have been made to improve the ranking quality of JTTs [1], [2], [6], [7], [10], [11], [16], [25]. Existing works can be classified into two categories depending on whether the schema information is utilized or not [24]: 1) the schema-based approach [1], [6], [7], [10], [11] and 2) the schema-free approach [2], [16], [25]. The former first creates SQL queries that connect relations, to which the tuples containing the query keywords belong, using natural join operations; then, it retrieves the JTTs by evaluating each SQL query. The latter first translates relational data to graph data by mapping each tuple in a relation to a node and each reference between tuples to an edge in the graph; then, it retrieves the JTTs by finding subtrees or subgraphs that connect the tuples containing the query keywords from the graph data. Since the schema-based approach does not have the overhead of translating relational data to graph data, it has an advantage in handling a large amount of data. On the other hand, the schema-free approach has an advantage of differentiating the importance of the JTTs at the instance level. In this paper, we use the schema-based approach to handle a large amount of data. The scoring methods of existing schema-based approaches can be classified into two categories: 1) the syntactic scoring methods [1], [6] and 2) the IR-combined scoring methods [7], [10], [11]. The intuition of the syntactic scoring methods is that the more joins are needed to connect the tuples containing the query keywords, the less closely associated those tuples are [6]. The syntactic scoring methods use the syntactic score that promotes ranks of the JTTs where tuples containing the query keywords are the most closely adjacent to each other. That is, the representative syntactic score is calculated as the inverse of the JTT size [1], [6]. Here, the JTT size is defined as the number of relations where each relation includes a tuple in the JTT [11]. The intuition of the IR-combined scoring methods is that text attributes in relational databases can contain rich contents that can be useful for scoring JTTs while those text contents are not considered in the syntactic scoring methods [7]. The IR-combined scoring methods use a combination of the syntactic score and the IR score that has been used in information retrieval. The representative example of the IR score is the TF*IDF, where TF represents the term frequency for a given keyword in a tuple, DF represents the document frequency for a given keyword, and IDF represents the inverse of DF [13]. However, none of the existing works considers semantic relevancy among relations containing the tuples in the JTT. In Sect. 3, we observe that semantic relevancy among relations must be considered as an important factor for improving the ranking quality of JTTs. In this paper, we first propose a structure of relations that are semantically strongly related, which we call the strongly related tree (SRT). An SRT is a tree of relations that maximally connects the relations through the lossless join property. Next, we propose an SRT score that reflects the concept of the SRT in the scoring function. The SRT score is the first ranking method that applies semantic relevancy among relations to ranking the results of keyword queries. Semantic relevancy among relations has been proposed to unambiguously interpret selection queries in the universal relational model [12]. However, it has never been used to rank keyword query results effectively. Last, we propose a new ranking method, SRT-Rank, that ranks the JTTs by using a new scoring function augmenting the scoring functions of existing methods with the SRT score. To show the effectiveness of SRT-Rank, we perform experiments on synthetic and real datasets by applying SRT- Rank to the representative existing methods. Experimental results show that SRT-Rank improves the ranking quality in terms of four quality measures the mean normalized discounted cumulative gain (ndcg), the number of queries whose top-1 result is relevant to the query, the mean reciprocal rank, and the mean average precision by up to 46.9%, 160.0%, 61.7%, and 63.8%, respectively, compared with existing methods. We also show that the query performance of SRT-Rank is comparable to or better than those of existing methods. Specifically, we show that SRT-Rank improves the query performance by up to 1.78 times. The rest of this paper is organized as follows. Section 2 formally defines the top-k keyword query in relational databases. Section 3 presents the motivation of this paper. Section 4 explains the semantic unit based on the lossless join property. Section 5 proposes the SRT, which is a structure of relations that are semantically strongly related, and SRT-Rank, which utilizes the concept of the SRT for ranking the JTTs. Section 6 presents the experimental results. Section 7 describes related work. Section 8 summarizes and concludes the paper.

3 Problem Definition We consider a relational database schema R consisting of a set of n relations {R 1, R 2,, R n }. We denote the primary key-foreign key relationship where a foreign key of R i references the primary key of R j as R i R j. A schema graph SGis a directed graph that maps each relation to a node and each primary key-foreign key relationship between relations to a directed edge. We denote the set of functional dependencies that are defined on R as F. A top-k keyword query Q in relational databases is defined as a pair (W, k) where W is a set of keywords {w 1, w 2,, w l } and k is the desired number of results. The results of Q are k JTTs with the highest (or the lowest) scores that are calculated by a scoring function. Without loss of generality, in the rest of the paper, we assume that we obtain JTTs with the highest scores as the results. In this paper, we use AND semantics, i.e., only JTTs that contain all query keywords can be the JTTs. We denote the size of a JTT T as size(t). We call a subset of tuples in a relation in the relational database as a tuple set [7]; the set of tuples containing the keywords of a query Q in a relation R i as the non-free tuple set [7] of R i, denoted by R Q i ; the whole set of tuples in R i as the free tuple set [7], denoted by R {} i.thecandidate Network (simply, CN) [7] of a query Q is a tree connecting free tuple sets and non-free tuple sets for Q through join operators. From now on, to represent a join operator connecting the two relations in a CN, we use the primary key-foreign key relationship between the two relations. We use CNs to generate JTTs as we explain in Sect. 3; we denote a CN generating a JTT T as CN(T) [11]. 3. Motivation In this section, we review existing methods using the schema-based approach for top-k keyword queries in relational databases and discuss their limitations. Existing methods use a relation as a unit to rank JTTs. Specifically, the syntactic scoring method simply uses the number of relations for the JTTs. DISCOVER [6], a representative syntactic scoring method, uses S yntactic-score(t, Q) = 1 size(t) as the scoring function, where T is a JTT, so that the smaller the size(t) is, the more relevant the T is to the query. The IR-combined scoring method also uses the syntactic score as a base score. The IR-combined scoring methods such as EFFICIENT [7], EFFECTIVE [10], and SPARK [11] use IR-combined-score(T, Q) = S yntactic-score(t, Q) * IR-score(T, Q) as the scoring function taking into account not only the syntactic score but also the IR score. However, both methods do not take into account semantic relevancy among relations. As a result, in some cases, none of the existing methods can rank the JTTs effectively. Examples 1 and 2 demonstrate these cases. Example 1 shows the limitation of using the syntactic score; Example 2 that of using the IR score. In these examples, for simplicity, Table 1 The ranking of the results for Q: ({ Washington, Smith }, 2) in existing methods. Scoring method score (rank) T 1 T 2 Syntactic (top-1) 0.2 (top-2) IR-combined (top-1) 0.4 (top-2) we use TF*IDF [13] as the IR score. We also assume that the IR score of T, denoted by IR-score(T, Q), is calculated by t T IR-score(t, Q), where t is a tuple in T. Here, if DF is zero, we regard IDF as zero. We denote TF and IDF for a keyword k by tf k and id f k, respectively. Example 1. Let us suppose that a user gives a top-k keyword query Q: ({ Washington, Smith }, 2) to find the information that a customer whose name is Washington orders parts from a supplier whose name is Smith from the TPC-H database in Fig. 2. Since a tuple c 1 in the Customer relation contains Washington and s 1 in the Supplier relation contains Smith, non-free tuple sets of Q are Customer Q = {c 1 } and S upplier Q = {s 1 }. Free tuple sets are Region {},Nation {}, Customer {}, Supplier {},Orders {},LineItem {}, Partsupp {}, and Part {}. We obtain CNs for Q by joining free tuple sets and non-free tuple sets where each leaf node of a CN is mapped to a non-free tuple set. The CNs so obtained are cn 1 : Customer Q Nation {} Supplier Q and cn 2 : Customer Q Orders {} LineItem {} Partsupp {} Supplier Q. The results for Q are T 1 : c 1 n 1 s 1, which is obtained by evaluating cn 1, and T 2 :c 1 o 1 l 1 ps 1 s 1, which is obtained by evaluating cn 2. As shown in Table 1, S yntactic-score(t 1, Q) = 1/3 = and S yntactic-score(t 2, Q) = 1/5 = 0.2 since size(t 1 ) = 3 and size(t 2 ) = 5. There are two approaches to define a document and calculate DF for a query keyword. The first approach defines a single text attribute value as a document and calculates DF for a query keyword as the number of tuples that have the given keyword in a text attribute of a relation [7], [10]. In this approach, we calculate the IR score of a JTT for a query keyword by summing up the IR scores of each text attribute value in a JTT. The second approach defines a JTT as a document and calculates DF for a query keyword as the number of JTTs with the same schema that contains the given keyword [11]. Here, for a JTT T, the schema of T is a tree where a node in the tree represents a relation containing a tuple in T,andan edge in the tree represents a join between two relations containing two adjacent tuples in T. The second approach is more effective than the first approach. However, calculating DF in the second approach is much more complex than that in the first approach. Thus, explaining the examples using the first approach may dilute the focus of the paper. Hence, for ease of explanation, we have chosen to use the first approach in the examples. However, we have used both approaches in the experiments, i.e., the first approach for EF- FICIENT [7] and the second approach for SPARK [11]. Besides cn 1 and cn 2, there are more CNs for Q: cn 3 : Customer Q, cn 4 : Supplier Q, cn 5 : Customer Q Nation {} Customer Q, cn 6 : Supplier Q Nation {} Supplier Q, cn 7 : Customer Q Nation {} Region {} Nation {} Supplier Q, cn 8 : Customer Q Nation {} Region {} Nation {} Customer Q, and cn 9 : Supplier Q Nation {} Region {} Nation {} Supplier Q. However, these CNs do not generate JTTs and thus are not considered here.

4 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2401 Table 2 The ranking of the results for Q: ({ Gladiator, Russell, Crowe }, 2) in existing methods. Scoring method score (rank) T 1 : m 1 c 1 p 1 T 2 : mi 1 m 1 c 1 p 1 Syntactic (top-1) 0.25 (top-2) IR-combined 1 (top-2) 1.25 (top-1) Fig. 4 The ER diagram and a sample dataset of the IMDB database. The IR-combined scoring method calculates the scores of JTTs as follows. IR-score(T 1, Q) is computed as follows. IR-score(c 1, Q) = tf Washington *idf Washington + tf Smith *idf Smith = 1*1 + 0*0 = 1; IR-score(s 1, Q) = tf Washington *idf Washington + tf Smith *idf Smith = 0*0 + 1*1 = 1. Therefore, IR-score(T 1, Q) = IR-score(c 1, Q) + IR-score(s 1, Q) = = 2. Likewise, IR-score(T 2, Q) = IR-score(c 1, Q) + IR-score(s 1, Q) = = 2. Consequently, as shown in Table 1, IR-combined-score(T 1, Q) = 2 1/3 = 0.667; IR-combined-score(T 2, Q) = 2 1/5 = 0.4. In Example 1, we observe that T 1 is ranked higher than T 2 for both syntactic scoring and IR-combined scoring. However, we note that this result is less likely to be the user s intention. The user who gives the keyword query { Washington, Smith } is likely to prefer T 2 to T 1. T 2 represents the information that a customer whose name is Washington orders parts from a supplier whose name is Smith ; T 1 represents the information that a customer whose name is Washington belongs to the same nation as the one to which a supplier whose name is Smith belongs. Here, we observe that the tuples in T 2 are more strongly related in terms of semantics than those in T 1 are even if size(t 2 ) is larger than size(t 1 ). However, existing methods rank T 1 higher than T 2 since they do not consider semantic relevancy among relations. Example 2. Let us consider the IMDB database [8]; its ER diagram is shown in Fig. 4 (a). This database represents For ease of explanation, we use simplified scoring functions in Example 1. The scoring functions used in existing works are different but produce the same ranking results as in Table 1. Specifically, according to Eq. (2) of EFFICIENT [7], the scores of T 1 and T 2 are , , respectively; according to Eq. (5.2) of EFFEC- TIVE [10], the scores are , , respectively; according to Eq. (1), Eq. (2), Eq. (3) of SPARK [11], the scores are , , respectively. information on movies and actors that appear in the movies. Figure 4 (b) shows a sample dataset of the IMDB database. In this dataset, MovieIn f o consists of representative lines in the movie. Let us suppose that a user gives a top-k keyword query Q: ({ Gladiator, Russell, Crowe }, 2)toretrieve the movie Gladiator starring Russell Crowe. Since a tuple p 1 in the Person relation contains Russell and Crowe and both m 1 in the Movie relation and mi 1 in the MovieIn f o relation contain Gladiator, non-free tuple sets of Q are Person Q = {p 1 },Movie Q = {m 1 },MovieIn f o Q = {mi 1 }. Free tuple sets are Person {},Movie {},MovieIn f o {}, Cast {}, Character {}, and Role {}. The CNs obtained are cn 1 : Movie Q Cast {} Person Q and cn 2 : MovieIn f o Q Movie Q Cast {} Person Q. The results for Q are T 1 : m 1 c 1 p 1 from cn 1 and T 2 :mi 1 m 1 c 1 p 1 from cn 2. As shown in Table 2, S yntactic-score(t 1, Q) = 1/3 = and S yntactic-score(t 2, Q) = 1/4 = 0.25 since size(t 1 ) = 3 and size(t 2 ) = 4. IR-score(T 1,Q) is computed as follows. IR-score(m 1,Q) = tf Gladiator *idf Gladiator + tf Russell *idf Russell + tf Crowe *idf Crowe = 1*1 + 0*0 + 0*0 = 1; IR-score(p 1, Q) = tf Gladiator * idf Gladiator + tf Russell * idf Russell + tf Crowe * id f Crowe = 0*0 + 1*1 + 1*1 = 2. Therefore, IR-score(T 1, Q) = IR-score(m 1, Q) + IR-score(p 1, Q) = = 3. Likewise, IR-score(T 2, Q) = IR-score(mi 1, Q) + IR-score(m 1, Q) + IR-score(p 1, Q) = = 5 since IR-score(mi 1, Q) = tf Gladiator *idf Gladiator + tf Russell *idf Russell + tf Crowe * id f Crowe = 2*1 + 0*0 + 0*0 = 2. Consequently, as shown in Table 2, IR-combined-score(T 1, Q) = 3 1/3 = 1; IR-combined-score(T 2, Q) = 5 1/4 = In Example 2, we observe that T 1 is ranked higher than T 2 for syntactic scoring, but T 2 is ranked higher than T 1 for IR-combined scoring. We note that the result of the IRcombined scoring method is less likely to be the user s intention. The user who gives the keyword query { Gladiator, Russell, Crowe } is likely to prefer T 1 to T 2. T 1 represents the movie Gladiator starring Russell Crowe ; T 2 represents the lines that refer to Gladiator in the movie Gladiator starring Russell Crowe. The IR-combined scoring method ranks T 2 higher than T 1 since it considers only the IR score without considering semantic relevancy among relations. As shown in Examples 1 and 2, there are some cases that existing methods do not rank the JTTs effectively. To rank the JTTs more effectively, we need to take into account semantic relevancy among relations in addition to the existing ranking measures. In Sect. 4, we introduce the concept of the semantic unit that defines the relevancy among relations in terms of the functional dependency. In Sect. 5, we

5 2402 propose a new semantic unit and a new scoring method using the semantic unit. 4. Semantic Unit In this section, we first define a semantic unit based on the lossless join property. Then, we define the semantic relevancy among relations using the semantic unit. The database schema designer decomposes a relation into a set of multiple relations to minimize redundancies through the normalization process [19]. The lossless join property must be preserved during normalization since it guarantees that an original relation can be correctly restored by joining the decomposed relations [19]. Thus, we can consider the lossless join property to represent the set of relations that are semantically related. If the set of relations R i and R j has the lossless join property, it is indicated 1) by functional dependencies or 2) by multivalued dependencies. The former requires ((R i R j ) (R i R j )) F + or ((R i R j ) (R j R i )) F + ; the latter ((R i R j ) (R i R j )) F + or ((R i R j ) (R j R i )) F + [19]. The lossless join property indicated by functional dependencies is a property stronger than the one indicated by multivalued dependencies. That is, if a functional dependency B i A i holds, so does the multivalued dependency B i A i. However, even if a multivalued dependency B i A i holds, a functional dependency B i A i might not hold. To distinguish the lossless join property indicated only by multivalued dependencies from that indicated by both functional dependencies and multivalued dependencies, we denote the former as LJPbyMVDs and the latter as LJPbyFDs. Figures 5 and 6 show the set of relations that has LJPbyMVDs and LJPbyFDs, respectively. In these figures, the dotted single-headed arrow represents a functional dependency; the dotted double-headed arrow a multivalued dependency. Here, we classify the set of attributes into three groups according to their characteristics: 1) {A 1,, A n } is the set of attributes that is determined by other attributes, 2) {B 1,, B m } is the set of attributes that determines other attributes, and 3) {C 1,, C m } is the set of the remaining attributes. Figure 5 shows the set of relations that has LJPbyMVDs. The set of relations R i and R j has LJPbyMVDs since a) ((R i R j ) (R i R j )) F + holds and b) neither ((R i R j ) (R i R j )) F + nor ((R i R j ) (R j R i )) F + holds. Figure 6 shows the set of relations that has LJPbyFDs. Here, ((R i R j ) (R i R j )) F + holds. We claim that LJPbyFDs is a property more desirable than LJPbyMVDs in representing the set of relations that are semantically related. If a set of relations has LJPbyMVDs, the original relation includes attributes that are independent of each other [19]. That is, if α β holds on R, fora given value of α, there exists a Cartesian product of β and R β α. For example, in Fig. 5, for a given value of F + is a closure of F, which is the set of all functional and multivalued dependencies that can be inferred from F [19]. Fig. 5 Fig. 6 A set of relations that has LJPbyMVDs. A set of relations that has LJPbyFDs. {B 1,, B m }, there exists a Cartesian product of {A 1,, A n } and {C 1,, C k }, which means that {A 1,, A n } and {C 1,, C k } are independent of each other. Thus, those attributes must be separated into different relations, and we consider the relations R i and R j as independent relations. Here, as shown in Fig. 5 (c), if a functional dependency B 1 B 2 B m holds, we can further normalize {R i, R j } into the 4th normal form [19], which results in {R i1, R k, R j1 } where R i1 = {A 1,, A n, B 1 }, R k = {B 1,, B m }, and R j1 = {B 1, C 1,, C k }. If a set of relations has LJPbyFDs, we have a relation in the set, a root relation, where the entire set of attributes in the root relation functionally (i.e., uniquely) determines the entire set of attributes of the other relations in the set.

6 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2403 The relation R j in Fig. 6 is the root relation. The entire set of attributes {B 1,, B m, C 1,, C k } of R j functionally determines the entire set of attributes {A 1,, A n, B 1,, B m } of the relation R i. Therefore, we can consider all the attributes in the original relation R ij in Fig. 6 as one relation conceptually. Thus, we have the following definition on the semantic unit. Definition 1. A set of relations R sem is defined as a semantic unit if R sem has LJPbyFDs with respect to the set of functional dependencies F that consists of the functional dependencies among attributes in each relation of R sem and the ones among relations in R sem. We define the semantic relevancy among relations as in Definition 2. Here, we regard that there is an undirected edge between two semantic units if they contain the same relation in common. Definition 2. The semantic relevancy among relations is how semantically strongly related the relations are and is inversely proportional to the minimum number of semantic units where those semantic units collectively contain the relations and are connected. Let us consider a set of relations R set. If all relations in R set are contained in one semantic unit, we can infer that the relations have been decomposed from one original relation since the relations in a semantic unit has the LJPbyFDs (A tuple in one relation uniquely determines tuples in other relations). Thus, we can conclude that semantic relevancy among the relations in R set is strong. On the other hand, if all relations in R set are not contained in one semantic unit, we cannot infer that the relations have been decomposed from one original relation. Thus, we can conclude that semantic relevancy among the relation in R set is not strong. A primary key-foreign key relationship implies a functional dependency between relations as in Lemma 1. For functional dependencies among relations mentioned in Definition 1, we assume that all such dependencies are represented (i.e., implied) by the primary key-foreign key relationships. Lemma 1. If a foreign key Y in a relation R j references a primary key X in R i, the functional dependency R j R i holds. Proof : Let us suppose t 1, t 2 R j where t 1 [Y] = t 2 [Y]; t 3, t 4 R i where t 3 (t 4 ) is referenced by t 1 (t 2 ). 1) Due to the referential integrity constraint, we get t 3 [X] = t 4 [X]. 2) Since t 3 [X] = t 4 [X] and X is the primary key of R i, t 3 [R i ] = t 4 [R i ]. By 1) and 2), a functional dependency Y R i holds. Furthermore, since Y R j, a functional dependency R j R i holds. We discuss how to check whether a set of relations has LJPbyFDs or not by using the primary key-foreign key relationship. In general, we need expensive operations to calculate R i R j and to check the condition ((R i R j ) (R i R j )) F + or ((R i R j ) (R j R i )) F + holds. Since the primary key-foreign key relationship specified in the schema represents the functional dependency between relations, we use it to find sets of relations that have LJPbyFDs. In Lemma 2, we prove that LJPbyFDs inferred from the rooted directed tree connected by the primary keyforeign key relationship is correct. In the tree, a relation maps to a node and a primary key-foreign key relationship between relations maps to a directed edge. Lemma 2. The set of relations {R 1, R 2,, R n } has LJPbyFDs if we can create a rooted directed tree by connecting the relations via the primary key-foreign key relationships. Proof :IfR i has a foreign key referencing the primary key of R j (i.e., there is a primary key-foreign key relationship from R j to R i ), R i R j is a superset of the primary key of R j. Consequently, the condition ((R i R j ) (R j R i )) F + holds. Hence, {R i, R j } has LJPbyFDs. We construct a rooted directed tree DT by connecting relations in {R 1, R 2,, R n }. Let R root be the root node of DT; R rc a child node of R root ; R rcc a child node of R rc. Since there is a primary key-foreign key relationship from R rc to R root, {R root, R rc } has LJPbyFDs. Similarly, since there is a primary keyforeign key relationship from R rcc to R where R = R root R rc, {R, R rcc } has LJPbyFDs. Since both {R, R rcc } and {R root, R rc } have LJPbyFDs, {R root, R rc, R rcc } has LJPbyFDs [19]. Therefore, if we add each descendant node of R root to the set {R root } one by one, the set has LJPbyFDs. Hence, the whole set of relations in DT has LJPbyFDs. For a set of three relations {R i, R j, R k }, let us assume that there is no cycle when we connect the relations via primary key-foreign key relationships. Then, every combination of the relations that can be connected via primary keyforeign key relationships is as follows: (1) R i R j R k, (2) R i R j R k,(3)r i R j R k, and (4) R i R j R k. (1), (2), and (3) are semantic units; (4) is not. Examples 3, 4, and 5 show (1), (2), and (4), respectively. (3) is identical to (2) when R i and R k are exchanged. Example 3. Let us consider the relations S upplier, PartSupp, and Part in the TPC-H database. Figure 7 (a) represents these relations and the relationships among them. Figure 7 (b) shows a relation S PaP that is a join of these relations. Since we can create a rooted directed tree, the set Fig. 7 A semantic unit {Supplier, PartSupp, Part} in the TPC-H database. A rooted directed tree is a tree whose root node has a directed path to each node in the tree [2].

7 2404 Nation and S upplier Nation as independent relations. Here, Customer corresponds to R i1 in Fig. 5 (c), Nation to R k, and S upplier to R j1. 5. SRT-Rank: Ranking Keyword Query Results Using the Strongly Related Tree Fig. 8 A semantic unit {Customer, Nation, Region} in the TPC-H database. Fig. 9 A set of relations {Customer, Nation, Supplier} in the TPC-H database. of relations has LJPbyFDs by Lemma 2. Therefore, the set {Supplier, PartSupp, Part} is a semantic unit. We note that, for each tuple in PartS upp, we have one integrated tuple in S PaP. That is, each tuple in the relation S PaP represents the information that a Supplier supplies a Part. Example 4. Let us consider the relations Customer, Nation, and Region in the TPC-H database. Figure 8 (a) represents these relations and the relationships among them. Figure 8 (b) shows a relation CNR that is a join of these relations. Since we can create a rooted directed tree, the set of relations has LJPbyFDs by Lemma 2. Therefore, the set {Customer, Nation, Region} is a semantic unit. We note that, for each tuple in Customer, we have one integrated tuple in CNR. That is, each tuple in the relation CNR represents a customer information on the nation and the region to which the customer belongs. Example 5. Let us consider the relations Customer, Nation, and S upplier in the TPC-H database. Figure 9 (a) represents these relations and the relationships among them. Figure 9 (b) shows the relation CNS that is a join of these relations. Since we cannot create a rooted directed tree, {Customer, Nation, S upplier} is not a semantic unit. If we assume that valid relations of CNS are only those that are joins of these three relations, the set has LJPbyMVDs. In CNS, multivalued dependencies {nationkey, n name} {custkey, cname} and {nationkey, nname} {suppkey, sname} hold, which means {custkey, cname} and {suppkey, s name} are independent of each other. Therefore, these attributes must be separated into different relations. Consequently, we consider the relation Customer In this section, we propose the SRT-Rank, a new method for improving the ranking quality of top-k JTTs in relational databases. In Sect. 5.1, we define a new structure that employs the notion of the semantic unit, which we call the strongly related tree (SRT). In Sect. 5.2, we first define the SRT score by which an SRT contributes to the scoring function. Then, we propose the SRT-Rank, that ranks the JTTs based on the SRT score. In Sect. 5.3, we propose an efficient method for finding the SRTs. In Sect. 5.4, we present a top-k keyword query processing algorithm extending existing ones so as to use SRT-Rank. In Sect. 5.5, we compare the SRT with the maximal object, which has been proposed for the universal relation based on the lossless join property. 5.1 Strongly Related Tree (SRT) In this section, we propose a new semantic unit defined on the CN rather than on the schema graph. The reason why we define a semantic unit on the CN is to take into account not only the semantic relevancy among different relations but also the relevancy among the same relations with different roles. If there is a relation that serves multiple roles in the schema graph, the relation can be involved in a CN more than once with different roles. The CN differentiates the same relations with different roles by representing those relations as separate relations while the schema graph does not. Example 6 shows an example of a CN that contains the same relations with different roles. Example 6. Let us consider a top-k keyword query Q: ({ USA, Cruise, England, McKellen }, 2)onthesample dataset of the TPC-H database shown in Fig. 2. A CN for Q is cn 1 : Nation Q Customer Q Orders {} LineItem {} Partsupp {} Supplier Q Nation Q.Here, the Nation relation is involved in the cn 1 twice. The first Nation relation means a set of tuples representing nations that customers belong to; the second Nation a set of tuples representing nations that suppliers belong to. In Definition 3, we define the strongly related tree as a semantic unit. Definition 3. A subtree ST of a CN is defined as a strongly related tree (SRT) if ST satisfies the following conditions: 1) (losslessness) {R i R i ST} has LJPbyFDs. While a node in the CN represents a relation instance, the lossless join property is the property of the relation schema. Thus, we deal with the lossless join property by using the schema corresponding to the CN. For simplicity, we represent the schema corresponding to the CN as the CN if there is no ambiguity.

8 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2405 Table 3 The scores of the results for Q: ({ Washington, Smith }, 2). Scoring method score (SRT-score, other score) (rank) T 1 T 2 Syntactic (0.5, 0.333) (top-2) (1, 0.2) (top-1) IR-combined (0.5, 0.667) (top-2) (1, 0.4) (top-1) Fig. 10 2). SRTs in cn 1 and cn 2 for the query Q: ({ Washington, Smith }, 2) (maximality) (R j )(R j ST AND (R j is adjacent to a node in ST) AND ({R i R i ST} {R j } has LJPbyFDs)) As in Definition 3, an SRT is a subtree of a CN where the set of relations in the subtree has LJPbyFDs. SRT is a maximal subtree in the sense that it cannot include more relations without violating LJPbyFDs. We use an SRT as a unit for ranking JTTs so as to utilize semantic relevancy among relations. While existing works employ the syntactic score based on the number of relations in CN(T)foraJTTT, we employ a semantic score based on the number of SRTs in CN(T). This way, we can make up for the limitation of the syntactic score with semantic relevancy among relations. In other words, if we rank JTTs using the SRT, we can rank higher those JTTs from a CN whose relations have strong semantic relevancy even if the CN has a larger number of relations and produces a lower syntactic score. Example 7. Customer Q Nation {} Supplier Q and cn 2 :Customer Q Orders {} LineItem {} Partsupp {} Supplier Q in Example 1. Figures 10 (a) and (b) show SRTs in the two CNs, respectively. We cannot represent the whole set of relations in cn 1 as one rooted directed tree. Instead, we can represent it as two rooted directed trees as shown in Fig. 10 (a). Hence, cn 1 consists of two SRTs. Meanwhile, we can represent the whole set of relations in cn 2 as one rooted directed tree as shown in Fig. 10 (b). Hence, cn 2 consists of one SRT. Since the number of SRTs in cn 2 is smaller than that in cn 1, the relations in cn 2 have semantic relevancy stronger than that of the relations in cn 1. Thus, using the SRT, we can rank JTTs from cn 2 higher than those from cn 1 even if the number of relations in cn 2 is larger than that in cn Scoring Function based on the SRT We define the SRT score of CN(T) ofajttt as in Eq. (1) so that the smaller the number of SRTs in CN(T) is,the more relevant T is to the query Q. We denote the number of SRTs in a CN cn as NO SRT(cn) and the set of JTTs for Q as JTT set (Q). S RT-score(T, Q) = 1 NO SRT(CN(T)) (1) Table 4 The scores of the results for Q: ({ Gladiator, Russell, Crowe }, 2). Scoring method score (SRT-score, other score) (rank) T 1 T 2 Syntactic (1, 0.333) (top-1) (0.5, 0.25) (top-2) IR-combined (1, 1) (top-1) (0.5, 1.25) (top-2) Now, we present a new ranking method, SRT-Rank, that takes advantage of the SRT-score. SRT-Rank ranks the JTTs in the lexicographic order [17] so as to prioritize the SRT score than the other scores. The lexicographic order allows us to first rank the JTTs based on the SRT score, and then, to rank the JTTs with the same SRT score based on the existing scoring functions. Example 8. Let us consider again the query Q: ({ Washington, Smith }, 2) in Example 1. For JTTs T 1 and T 2,NOSRT(CN(T 1 )) = 2 and NO SRT(CN(T 2 )) = 1. Thus, S RT-score(T 1, Q) = 1/2 and S RT-score(T 2, Q) = 1/1 as in Table 3. Thus, SRT-Rank ranks T 2 higher than T 1 in both cases. This result better fits the user s intention. Example 9. Let us consider again the query Q: ({ Gladiator, Russell, Crowe }, 2) in Example 2. For JTTs T 1 and T 2, NO SRT(CN(T 1 )) = 1 and NO SRT(CN(T 2 )) = 2. Thus, S RT-score(T 1, Q) = 1/1 and S RT-score(T 2, Q) = 1/2 as in Table 4. Thus, SRT-Rank ranks T 1 higher than T 2 in both cases. This result better fits the user s intention. 5.3 Finding the SRTs We now discuss how to calculate NO SRT(cn) foracncn efficiently. First, let us consider a naive method that finds all SRTs in cn and count them. The method finds an SRT in cn as follows. For a subtree ST and a node R a where ST consists of a node in cn and R a is adjacent to ST, the method adds R a to ST if {R i R i ST} {R a } has LJPbyFDs. The method repeats this process until there is no more R a to add. Then, the result ST becomes an SRT. When n is the number of relations in cn, the method needs to check whether {R i R i ST} {R a } has the lossless join property at most n 1 times. The time complexity for checking whether {R i R i ST} {R a } has LJPbyFDs is O(n). Hence, the time complexity of the naive method to find an SRT is O(n) * O(n) = O(n 2 ). We can find all SRTs in cn by repeating this To check whether {R i R i ST} {R a } has LJPbyFDs or not, we need to do this, for each R i ST, the direction of the primary key-foreign key relationship between R i and R a. We need to do this n-1 times at maximum. Thus, the time complexity is O(n).

9 2406 process until every node in cn is included in at least one SRT. Since the number of SRTs in cn is no more than n, we need to repeat the process of finding an SRT at most n times. Therefore, the time complexity of the naive method to find all SRTs is O(n) *O(n 2 ) = O(n 3 ). Now, we propose a new efficient method, called Counting Independent Nodes (simply, CIN), whose time complexity is O(n). The CIN method calculates NO SRT(cn) asthe number of nodes, which we call independent nodes, that do not have incoming edges from any other nodes in cn (see Lemma 3). It first marks the nodes that are pointed by an edge while traversing all edges in cn. When the traversal is complete, it finds out all unmarked nodes, i.e., independent nodes. Therefore, the time complexity of the CIN method is O(e + n), where e is the number of edges in cn. Since e = n 1 in a tree, we obtain O(e + n) = O(n). Lemma 3. The CIN method finds NO SRT(cn) correctly. Proof : Suppose R root is an independent node. We show that a rooted directed tree DT connecting all the nodes that are reachable by directed paths from R root is an SRT. DT is an SRT since it satisfies the following two conditions. 1) {R i R i DT} has LJPbyFDs. 2) For a node R a adjacent to DT, {R i R i DT} {R a } does not have LJPbyFDs. Condition 1) is satisfied by Lemma 2. Condition 2) is satisfied due to the following reasons. If R a is a node adjacent to DT and R = R i DT R i, {R i R i DT} {R a } has LJPbyFDs only if one of the two following conditions is satisfied: (i) (R R a R a ) F + or (ii) (R R a R) F +. R a is not reachable by directed paths from R root since all nodes reachable by directed paths from R root have already been included in DT. Hence, Condition (i) is not satisfied. Besides, there is no directed path from R a to R root since R root does not have incoming edges. Hence, Condition (ii) is not satisfied. Hence, {R i R i DT} {R a } does not have LJPbyFDs. 5.4 Query Processing Algorithm Fig. 11 The skeleton of S parse [7] algorithm. We present a query processing algorithm that extends the existing top-k keyword query processing algorithms to utilize SRT-Rank. In both the syntactic and IR-combined scoring methods, all steps are the same except for the step of computing the scores of JTTs. Since SRT-Rank can be applied to all the methods in the same way, we show how to apply it using a representative existing method, the Sparse algorithm proposed by EFFICIENT [7], which adopts the IRcombined scoring method. Figure 11 shows the skeleton of the Sparse [7] algorithm. The algorithm gets the schema graph, SG, the keyword query, Q, and the number of results to retrieve, k, as the input. It returns the top-k JTTs, JTT topk, as the output. In Step 1, it creates a set of non-free tuple sets NFTS set of Besides the Sparse algorithm, EFFICIENT [7] has proposed the SinglePipelined and the GlobalPipelined algorithms to improve the efficiency. Since these three algorithms use the same scoring function, there is no difference in terms of effectiveness. We use the Sparse algorithm, which is the simplest. Fig. 12 The SparseSRT-Rank algorithm. Q. In Step 2, it creates a set of CNs CN set for Q by using NFTS set and SG. In Step 3, it evaluates each CN in CN set and generates the top-k JTTs by calculating the scores of JTTs, which are generated by each CN. In Step 4, it returns the top-k JTTs. In this paper, we extend Step 3 to use SRT- Rank proposing SparseSRT-Rank in Fig. 12. The other steps

10 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2407 are the same as those of the Sparse algorithm [7]. Figure 12 shows the SparseSRT-Rank algorithm. In this algorithm, we define a class, CombinedScore, to represent the scoring function that combines the SRT score with the existing scoring functions. The CombinedScore class consists of two elements ordered in the lexicographic order: 1) the SRTScore that represents the SRT score and 2) the EfficientScore that represents the EFFICIENT score. The algorithm gets a set of CNs, CN set, a keyword query, Q, and the number of results to retrieve, k, astheinput. It returns the set of top-k JTTs, JTT topk, as the output. In Step 1, it initializes the priority queue, CN queue, to keep the CNs in the order of the CombinedScore, JTT queue, to keep the JTTs in the order of the CombinedScore. InStep2, for each cn in CN set, it calculates the CombinedScore from the SRTScore and EfficientScore of cn. The latter is the maximum possible EFFICIENT score of JTTs that are generated by cn using the EFFICIENT scoring function. Then, it stores cn and its CombinedScore in CN queue. In Step 2.1.1, it calculates the number of SRTs in cn by using the CIN method that is proposed in Sect Then, it calculates the CombinedScore.SRTScore of cn. In Step 2.1.2, it calculates the CombinedScore.EfficientScore of cn by using the scoring function of EFFICIENT [7]. In Step 2.1.3, it inserts cn and its CombinedScore into CN queue. In Step 3, the algorithm generates JTTs by evaluating each CN in CN queue and calculates the CombinedScore of each JTT. First, it evaluates each cn in CN queue in the order of the CombinedScore and obtains JTTs for cn. Then, it assigns CombinedScore.SRTScore of cn to Combined- Score.SRTScore for the JTT. Next, the algorithm calculates the CombinedScore.EfficientScore of each JTT by using the scoring function of EFFICIENT [7]. Then, it inserts cn and its CombinedScore into CN queue. Finally, the algorithm inserts each JTT and its CombinedScore into JTT queue to maintain JTTs in the order of the CombinedScore. It repeats this process until the CombinedScore of the k-th element in JTT queue is higher than or equal to the CombinedScore of the top element in CN queue. In Step 4, the algorithm returns the top-k JTTs in JTT queue. 5.5 Comparison of the SRT with the Maximal Object The SRT appears to be similar to the maximal object [12] that has been proposed to unambiguously interpret selection queries on the universal relation [5]. The universal relation is defined as the virtual relation that is obtained by conceptually joining all the relations in the database schema. However, joining all the relations incurs unexpected result especially where there is a cycle in the schema. Thus, the notion of the maximal object was proposed to solve this problem; the universal relation can be represented as a set of maximal objects. In a maximal object, a selection query can be interpreted unambiguously. However, we observe some cases that a maximal object still includes a cycle. A representative example is a maximal object for the TPC-H database schema. The max- Fig. 13 A maximal object for the TPC-H database. Fig. 14 SRTs in cn 1. imal object for the TPC-H database schema is the whole set of relations in the database schema, i.e., mo: {Region, Nation, Customer, Orders, LineItem, Partsupp, Supplier, Part}. Figure 13 represents the relationships among relations in mo as a graph, which has a cycle. Here, Naion serves as two different roles: 1) a nation that a customer belongs to and 2) a nation that a supplier belongs to. Therefore, we need to break the cycle to interpret a query correctly. Example 10. Let us consider a top-k keyword query Q: ({ USA, Cruise, England, McKellen }, 2)onthesample dataset of the TPC-H database shown in Fig. 2. A user is likely to find the information that a customer Cruise who belongs to USA orders some parts from a supplier McKellen who belongs to England. A CN for Q is cn 1 : Nation Q Customer Q Orders {} LineItem {} Partsupp {} Supplier Q Nation Q. As shown in Fig. 14, since the set of relations in cn 1 has LJPbyFDs, there is an SRT in cn 1.ByusingtheSRT,wegetaJTTT 1 :n 1 c 2 o 2 l 2 ps 4 s 4 n 2 from the cn 1. In contrast, if we use the maximal object directly to interpret Q, we cannot interpret Q as what the user wants. Specifically, the maximal object mo for the TPC-H database schema includes a cycle as shown in Fig. 13. Because of the cycle, if we interpret Q, an unexpected equality condition on the Nation relation is added, unlike when we do with an SRT in Fig. 14. The unexpected equality condition is that the nation of the customer should be the same as that of the supplier. This condition excludes T 1 from the query results, which is contrary to the user s intention. 6. Performance Evaluation 6.1 Experimental Data and Environment In this section, we show that SRT-Rank improves the ranking quality of the existing methods [6], [7], [11] using syntactic or IR-combined scoring by performing the experiments on synthetic and real datasets. We use TPC-H [18]

11 2408 Table 5 The statistics of the experimental datasets. dataset size # relations # tuples TPC-H 100MB 8 866,602 IMDB 516MB 6 1,673,074 Mondial 9MB 28 17,115 Wikipedia 550MB 6 206,318 as a synthetic dataset and use Internet Movie Database (IMDB) [8], Mondial [15], and Wikipedia [23] as real datasets. We generate the dataset for TPC-H by using the TPC-H DBGen tool [18]. The three real datasets used are the same ones as were used in Coffman et al. [4] where the effectiveness of existing works has been compared and analyzed. Table 5 shows the statistics for each dataset. The TPC-H dataset represents item order information and consists of eight relations. The IMDB dataset represents information on movies and consists of six relations. The Mondial dataset represents geographical information and consists of 28 relations. The size of the Mondial dataset is very small compared with the other datasets, but the schema of the dataset is the most complex. The Wikipedia dataset is created by selecting 5,540 articles from Wikipedia [23]. It consists of six relations. We use the following queries for experiments. For the TPC-H dataset, we use 50 queries by ten graduate students of Computer Science Department at KAIST. To minimize bias with queries, we choose the students who do not participate in this paper. To create the queries, they use the ER diagram of the TPC-H database as a reference and write down search intensions, which specify the information they want to retrieve, and keyword queries to represent the search intensions. This method is the same as Coffman et al. [4] do. An example of the search intensions is Find a supplier whose name is Smith and who belongs to the England nation. The keyword query to represent the search intension is { Smith, England }. In the appendix, we show the search intensions for 50 queries created by the students. For the real datasets, we use the same queries as those used in Coffman et al. [4]. The number of queries for each dataset is 50, and the average number of the query keywords for each dataset is designed to be similar to the search engine log [4]. We use DISCOVER [6] as a representative syntactic scoring method and use EFFICIENT [7] and SPARK [11] as representative IR-combined scoring methods for the comparison. We choose DISCOVER since it is known as the most effective one in the syntactic scoring method [6]. We choose EFFICIENT since it is the first IR-combined method and choose SPARK since it is known as the most effective one in the IR-combined method [11]. We implement all the methods using the Java language. We also extend DIS- COVER, EFFICIENT, and SPARK to use SRT-Rank and call each one as DISCOVER SRT-Rank, EFFICIENT SRT- Rank, and SPARK SRT-Rank, respectively. In addition, we extend DISCOVER, EFFICIENT, and SPARK to use MO-Rank, which is a ranking method using the maximal object as a semantic unit, and call each one as DISCOVER MO-Rank, EFFICIENT MO-Rank, and SPARK MO-Rank, respectively. Hereafter, we call the methods that do not use both SRT-Rank and MO-Rank as base methods, those that apply MO-Rank to the base methods as MO-Rank methods, and those that apply SRT-Rank to the base methods as SRT-Rank methods. To measure the effectiveness of the methods, we define the relevant answers for a keyword query. It is the set of JTTs that satisfy the users search intension for the keyword query [4]. To determine the relevant answers, we use the same approach as the Coffman et al. [4] do. That is, for each keyword query, the relevant answers are the results obtained by evaluating the SQL queries corresponding to the users search intension for the keyword query. We use the following quality measures: 1) The mean normalized discounted cumulated gain at k (MNDCG@k) [9], [22], 2) the number of queries whose top-1 result is relevant to the query (#top1rels) [4], [11], 3) mean reciprocal rank (MRR) [20] and 4) mean average precision (MAP) [13]. The cumulative gain at k (CG@k) is defined as the sum of the relevance score of each result in the topk results [9]. Here, if a result is a relevant answer, we set the relevance score of the result as 1; otherwise, we set it as 0. The discounted cumulative gain at k (DCG@k) isdefined as the sum of the discounted relevance score of each result in the top-k results [9]. We define the discounted relevance score of i-th result as the relevance score divided by log 2 (i + 1). The normalized discounted cumulated gain at k (NDCG@k) for a query is defined as the DCG@k divided by the ideal DCG@k of the top-k results [9]. The ideal DCG@k is defined as the DCG@k of the top-k results where results in the top-k results are sorted in the descending order of their relevance score [9]. MNDCG@k for a set of queries is the average of NDCG@k for all queries in the set. The #top1rels is defined as the number of queries whose first result is relevant. The reciprocal rank (RR) for a query is the inverse of the rank at which the first relevant result is retrieved or 0 if no relevant result is retrieved. The mean reciprocal rank for a set of queries is the average of the reciprocal ranks for all queries in the set. The average precision (AP) for a query is the average of the precision values calculated after each relevant result is retrieved. The mean average precision for a set of queries is the average of the average precisions for all queries in the set. We need to consider how to handle the JTTs whose scores are the same. Existing works break ranks of those JTTs arbitrarily [1], [7], [11] or do not explain any details [6], [10]. Thus, to calculate the DCG@k(RR, AP) more accurately, we use the following probabilistic approach. First, if there are n JTTs whose scores are the same for the l-th ranking, we assign the same 1/n probability to each JTTtobe(l + i) rank where 0 i n 1. Next, we calculate the probabilistic DCG@k(RR, AP) for each possible To set the ideal DCG@k the same for each ranking method, we calculate the ideal DCG@k as DCG@k of the top-k results that contain all correct answers.

12 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2409 ranking of the JTTs by multiplying the AP) with the probability for the possible ranking. Finally, we get the final AP) of the JTTs by summing up the probabilistic AP) for each possible ranking. We have performed all experiments on a machine with Intel Core i GHz CPU and 4GB RAM running Linux Fedora Core 14. We use MySQL Experimental Results Effectiveness Figures 15 (a), (b), (c), and (d) show the experimental results of the base methods, the MO-Rank methods, and the SRT-Rank methods for each dataset where k = 10. The results show similar trends for all quality measures. For the TPC-H and Mondial datasets, whose database schemas have cycles, the SRT-Rank methods outperform the MO-Rank methods. For the Wikipedia and IMDB datasets, whose database schema do not have cycles, the effectiveness of every SRT-Rank method is better than or equal to that of the corresponding MO-Rank method. For the TPC-H and IMDB datasets, the SRT-Rank methods significantly outperform the base methods. Specifically, for the TPC-H dataset, the SRT-Rank methods increase the MNDCG@k by 7.7%, 19.4%, and 7.2%, compared with DISCOVER, EFFICIENT, and SPARK, respectively; the #top1rels by 14.8%, 20.0%, and 13.2%; the MRR by 10.4%, 20.6%, and 9.8%; the MAP by 10.0%, 20.6%, and 9.0%. For the IMDB dataset, the SRT-Rank methods increase the MNDCG@k by 0.1%, 46.9%, and 38.2%, compared with DISCOVER, EF- FICIENT, and SPARK, respectively; the #top1rels by 0%, 160.0%, and 63.8%; MRR by 0.1%, 61.7%, and 46.6%; the MAP by 0%, 63.8%, and 47.2%. For the Mondial and Wikipedia datasets, SRT-Rank methods show results similar to those of the base methods. Nevertheless, we note that the effectiveness of every SRT-Rank method is better than or equal to that of the corresponding base method. Specifically, for the Mondial dataset, the SRT-Rank methods increase the MNDCG@k by 0%, 1.2%, and 2.9%, compared with DISCOVER, EFFICIENT, and SPARK, respectively; the #top1rels by 0%, 0%, and 3.3%; the MRR by 0%, 0.7%, and 3.0%; the MAP by 0%, 0.9%, and 3.5%. For the Wikipedia dataset, the SRT-Rank methods increase the MNDCG@k by 0%, 0%, and 12.1%, compared with DISCOVER, EF- FICIENT, and SPARK, respectively; the #top1rels by 0%, 0%, and 0%; the MRR by 0%, 0%, and 5.5%; the MAP by 0%, 0%, and 9.5%. We explain below why this phenomenon occurs. SRT-Rank improves the ranking quality of the query results since it takes semantic relevancy among relations into account. There are two cases when the SRT-Rank is effective: (1) when the syntactic scoring methods gives higher syntactic scores to JTTs whose CN consists of a large number of SRTs than to JTTs whose CN consists of a small number of SRTs; (2) when the IR-combined scoring methods gives higher IR scores to JTTs whose CN consists of a Fig. 15 Experimental results for each dataset where k = 10. large number of SRTs than to JTTs whose CN consists of a small number of SRTs. The first case occurs when the dataset satisfies the following conditions: (1) there are cycles in the database schema graph. A cycle here is an undirected one where an edge means that the relations on either side of the edge

13 2410 Fig. 16 An undirected cycle in the TPC-H database schema graph. Fig. 18 The SRTs in CN(T 1 )andcn(t 2 )forq: ({ Gladiator, Russell, Crowe }, 2). Fig. 17 A Cycle in the Mondial database schema. can be joined. (2) Tuples of relations in the cycle contain the keywords of the query Q. Conditions (1) and (2) allow two different paths that connect relations containing tuples in which the query keywords appear. (3) The set of the relations in one path (say, P short ) with the shorter length does not have LJPbyFDs, and the set of the relations in the other path (say, P long ) with the longer length has LJPbyFDs. The TPC- H dataset satisfies these three conditions. Figure 16 shows the TPC-H database schema graph, which has an undirected cycle. If tuples in the relations Customer and Suppliercontain the query keywords, we have two different paths P long and P short that connect Customer and Supplier. The set of the relations in P long has LJPbyFDs; the set of the relations in P short does not have LJPbyFDs. Therefore, as shown in Example 1, the syntactic scoring method ranks JTTs for P short higher than those for P long based on the size (i.e., the number of relations) of the JTT. However, SRT-Rank method ranks JTTs for P long higher than those for P short by counting the number of SRTs instead of the number of relations. This effect not only applies to the syntactic scoring method but also to the IR-combined scoring methods. For the Mondial dataset, the first case does not occur since the dataset does not satisfy Condition (3). Although the Mondial database schema graph has cycles, the SRT-Rank does not affect the ranking quality of the syntactic scoring methods. Figure 17 shows a cycle in the Mondial database schema graph. Let us consider two paths that connect two different relations in the cycle that contain the query keywords. We can find all the possible P short in the cycle: (1) Country City, (2) City Organization, (3) Organization IS Member, and (4) IS Member Country. The set of relations in each of these paths has LJPbyFDs. Therefore, it does not satisfy Condition (3). For the Wikipedia and IMDB dataset, the first case does not occur since there is no cycle in the database schema graph. Therefore, the SRT-Rank does not affect the ranking quality of the syntactic scoring methods. The second case occurs when a JTT T 2 has much more query keywords than a JTT T 1 and, at the same time, the set of the relations in CN(T 2 ) does not have LJPbyFDs while that in CN(T 1 ) has LJPbyFDs. Example 2 in Sect. 3 shows the case for the IMDB dataset. For JTTs T 1 and T 2 in Example 2, Figures 18 (a) and (b) show the SRTs in CN(T 1 ) and CN(T 2 ), respectively. Since MovieIn f o in T 2 contains query keywords, T 2 has definitely much more query keywords than T 1. However, T 1 consists of one SRT while T 2 consists of two SRTs. As a result, the IR-combined scoring methods rank T 2 higher than T 1 while the SRT-Rank methods rank T 1 higher than T 2, which is closer to the user s intention. The second case occurs for the TPC-H, Mondial, and Wikipedia datasets as well. Overall, the SRT-Rank methods prove to be more effective than the IRcombined scoring methods. Figures 19 shows the MNDCG@k of each method as k is varied from 1 to 100. Experimental results show that the trends among the methods are similar to one another. We present the experimental results of the MNDCG@k for the TPC-H dataset only since the trends are similar for the other measures and datasets. There may be cases where the search intention of the user does not map to the CN consisting of the smallest number of SRTs. In such a case, SRT-Rank ranks the JTTs whose CN consists of the smallest number of SRTs higher than those whose CN maps to the search intention of the user, and consequently, SRT-Rank degrades the ranking quality. One query for the TPC-H dataset corresponds to this case. The query is { Smith, Miller } and the search intension of the query is Find a nation that both a customer whose name is Miller and a supplier whose name is Smith belong to. For the query, the CN that maps to the search intension consists of two SRTs. However, there is a JTT meaning that a customer whose name is Miller orders some parts from a supplier whose name is Smith (which, in fact, could also be a valid user intention). The CN of this JTT consists of only one SRT. Therefore, SRT- Ranks ranks the JTT whose CN does not map to the search intension higher than that whose CN maps to the search intension. However, joining two different SRTs in a CN generates a Cartesian product among tuples having the same join attribute values since any relation in one SRT cannot functionally determine all the relations in the other SRT. Since the relevancy among relations becomes weaker as the number of Cartesian products in the join path of the relations increases, it is rational to consider that the user wants query results including as small a number of Cartesian products The real names are and since they are synthetic data in the TPC-H dataset.

14 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2411 Fig. 20 The result generation time for each dataset. of the corresponding base method. Specifically, the SRT- Rank methods are times more efficient than the base methods for the TPC-H dataset; times for the Mondial dataset; times for the Wikipedia dataset; times for the IMDB dataset. In addition, experimental results show that the query performance of a MO-Rank method is comparable to or better than that of the corresponding base method. Specifically, the MO- Rank methods are times more efficient than the base methods for the TPC-H dataset; times for the Mondial dataset; times for the Wikipedia dataset; times for the IMDB dataset. This improvement in efficiency comes from the fact that SRT-Rank (MO-Rank) methods can prune the search space more efficiently by using the SRT score (the MO score that maps to the SRT score). Fig. 19 The MRR and MAP for the TPC-H dataset as k is varied. as possible, i.e., consisting of the smallest number of SRTs. Thus, in most of cases in our experiments, we observe that the search intention of the user maps to the CN consisting of the smallest number of SRTs Efficiency To compare the efficiency between the SRT-Rank methods, MO-Rank methods, and base methods, we measure the running time of each method. We divide the overall running time into 1) the preprocessing time, which creates non-free tuple sets and CNs and 2) the result generation time, which evaluates the CNs and generates the results. The preprocessing time is the same for among the SRT-Rank methods, MO-Rank methods, and base methods. Therefore, we show only the result generation time. Figure 20 shows the result generation time of the SRT- Rank methods, MO-Rank methods, and base methods for the TPC-H, Mondial, Wikipedia, and IMDB datasets when k is 10. Experimental results show that the query performance of a SRT-Rank method is comparable to or better than that 7. Related Work Existing works on top-k keyword query processing in relational databases can be classified into two categories: 1) the schema-based approach and 2) the schema-free approach [24]. The schema-based approach such as DBXplorer [1] and DISCOVER [6] uses the syntactic score as a scoring function. DISCOVER [6] improves the effectiveness of DBXplorer by solving the problem that DBXplorer cannot create JTTs containing different tuples in the same relation. EFFICIENT [7], EFFECTIVE [10], and SPARK [11] use the IR-combined score as a scoring function. EFFICIENT [7] treats each tuple in a JTT as a document and calculates the IR score of the JTT by summing all the IR scores of tuples in the JTT. EFFECTIVE [10] improves the effectiveness of EFFICIENT by normalizing the IR score according to its distribution over tuples. SPARK [11] improves the effectiveness of EFFICIENT by treating a JTT as a document and by calculating the IR score of the JTT. There have been a lot of research efforts based on the schema-free approach. The schema-free approach calculates the scores of the JTTs at the instance level by modeling the tuples and their relationships as a graph. Thus, it retrieves subtrees or subgraphs that are the most relevant to

15 2412 a keyword query considering the weights of the nodes and edges. BANKS [2] is the first research work based on the schema-free approach. CI-Rank [25] observes the problem of BANKS that considers only the root node and the leaf nodes (i.e., nodes containing the query keywords). It shows that intermediate nodes can also affect the effectiveness of the JTTs and propose a new ranking method that takes those into account. Community [16] identifies the problem that a tree cannot express all relationships among the tuples that contain the query keywords. To solve this problem, it proposes a new method that finds subgraphs connecting tuples that contain the query keywords. These methods take the relationships among tuples into account based on the schemafree approach. However, they are different from our approach in the sense that the schema-free approach needs to model the relational data as a graph at the instance level. We can consider application of the concept of SRT to the schema-free approach. We leave it as a further study. AutoJoin [14] uses the concept of the maximal object for efficient keyword query processing in relational databases. Using the maximal object, it efficiently creates SQL queries corresponding to the given keyword query. AutoJoin also breaks the cycles of the maximal object as the SRT does. However, the SRT has the following distinguishing properties from AutoJoin. 1) The purpose of SRT is different from that of AutoJoin: SRT is proposed to improve the effectiveness of ranking methods while AutoJoin is proposed to improve the efficiency of query processing. 2) The SRT defines the semantic structure on the CN, which can be mapped to a query graph, while AutoJoin defines the maximal object on the database schema graph. The query graph can distinguish the relations having the same name with different roles while the database schema graph cannot. Therefore, an SRT can distinguish the relations having the same name with different roles while a maximal object cannot. In Example 10, the first (i.e., left) Nation serves as a nation to which a customer belongs; the second (i.e., right) Nation as a nation to which a supplier belongs. Thus, we need to distinguish the two Nation as different relations in cn Conclusions We have proposed the SRT to improve the ranking quality of the top-k keyword query results in relational databases. An SRT is a tree that maximally connects the strongly related relations in the CN. Next, we have proposed the SRT score that reflects the concept of the SRT as a scoring function. The SRT score is the first ranking method that applies semantic relevancy among relations to ranking the results of keyword queries. Finally, we have proposed SRT- Rank, which ranks the JTTs by using new scoring functions that combine those of existing works with the SRT score. Through experiments, we have shown that SRT-Rank improves the ranking quality. To show the effectiveness of SRT-Rank, we have performed experiments on one synthetic and three real datasets. Experimental results show that SRT-Rank significantly improves the ranking quality. Specifically, for a synthetic dataset, SRT-Rank improves the MNDCG@k by up to 19.4%, #top1rels by up to 20.0%, the MRR by up to 20.6%, and the MAP by up to 20.6%; for real datasets, SRT-Rank improves the MNDCG@k by up to 46.9%, #top1rels by up to 160.0%, the MRR by up to 61.7%, and the MAP by up to 63.8%. We have also shown that the query performance of SRT-Rank is comparable to or better than those of existing methods. SRT-Rank is the first research work that utilizes the concept of the lossless join property so as to rank the topk keyword query results effectively. SRT-Rank is applicable to arbitrary existing scoring functions since the SRT score is a ranking factor independent of the existing ones. For a future work, based on the rigorous comparison between top-k keyword query processing in relational databases and selection query processing in universal relations, we plan to formally and theoretically analyze the relationship between the maximal object and the SRT. Acknowledgements We would like to thank the authors of SPARK [11], Yi Luo, Xuemin Lin, Wei Wang, and Xiaofang Zhou, for allowing us to use their SPARK and EFFICIENT source codes. This work was supported by the National Research Foundation of Korea (NRF) grant funded by Korean Government (MSIP) (No. 2012R1A2A1A ). References [1] S. Agrawal, S. Chaudhuri, and G. Das, DBXplorer: a system for keyword-based search over relational databases, Proc. IEEE Int l Conf. on Data Engineering (ICDE), pp.5 16, April [2] G. Bhalotia, A. Hulgeri, C. Nakhe, S. Chakrabarti, and S. Sudarshan, Keyword searching and browsing in databases using BANKS, Proc. IEEE Int l Conf. on Data Engineering (ICDE), pp , April [3] Y. Chen, W. Wang, Z. Liu, and X. Lin, Keyword search on structured and semi-structured data, Proc. Int l Conf. on Management of Data, ACM SIGMOD, pp , June [4] J. Coffman and A.C. Weaver, A framework for evaluating database keyword search strategies, Proc. ACM Int l Conf. on Information and Knowledge Management (CIKM), pp , Oct [5] R. Fagin, A. Mendelzon, and J.D. Ullman, A simplified universal relation assumption and its properties, ACM Trans. Database Systems (TODS), vol.7, no.3, pp , Sept [6] V. Hristidis and Y. Papakonstantinou, DISCOVER: Keyword search in relational databases, Proc. Int l Conf. on Very Large Data Bases (VLDB), pp , Aug [7] V. Hristidis, L. Gravano, and Y. Papakonstantinou, Efficient ir-style keyword search over relational databases, Proc. Int l Conf. on Very Large Data Bases (VLDB), pp , Sept [8] accessed Feb [9] K. Jarvelin and J. Kekalainen, Cumulated gain-based evaluation of IR techniques, ACM Trans. Information Systems (TOIS), vol.20, no.4, pp , Oct [10] F. Liu, C. Yu, W. Meng, and A. Chowdhury, Effective keyword search in relational databases, Proc. Int l Conf. on Management of Data, ACM SIGMOD, pp , June [11] Y. Luo, X. Lin, W. Wang, and X. Zhou, SPARK: Top-k keyword

16 KIM et al.: SRT-RANK: RANKING KEYWORD QUERY RESULTS IN RELATIONAL DATABASES USING THE STRONGLY RELATED TREE 2413 query in relational databases, Proc. Int l Conf. on Management of Data, ACM SIGMOD, pp , June [12] D. Maier and J.D. Ullman, Maximal objects and the semantics of universal relation databases, ACM Trans. Database Systems (TODS), vol.8, no.1, pp.1 14, March [13] C.D. Manning, P. Raghavan, and H. Schutze, Introduction to information retrieval, 1st ed., Cambridge University Press, [14] T. Mason, L. Wang, and R. Lawrence, Autojoin: Providing freedom from specifying joins, Proc. Int l Conf. on Enterprise Information Systems (ICEIS), vol.5, pp.31 38, May [15] accessed Feb [16] L. Qin, J.X. Yu, L. Chang, and Y. Tao, Querying communities in relational databases, Proc. IEEE Int l Conf. on Data Engineering (ICDE), pp , April [17] S. Raymond and D. O Shea, Programming for mathematicians, Springer-Verlag, [18] accessed Feb [19] J.D. Ullman, Principles of database and knowledge-base systems, vol.1, Computer Science Press, [20] E.M. Voorhees, TREC-8 question answering track report, Proc. Text Retrieval Conference (TREC), pp.77 82, Nov [21] G. Weikum, DB&IR: Both sides now, Proc. Int l Conf. on Management of Data, ACM SIGMOD, pp.25 30, June [22] M. Weimer, A. Karatzoglou, Q.V. Le, and A. Smola, CofiRank maximum margin matrix factorization for collaborative ranking, Advances in Neural Information Processing Systems 20, NIPS 2007, pp , Dec [23] accessed Feb [24] J.X. Yu, L. Qin, and L. Chang, Keyword search in relational databases: a survey, IEEE Data Engineering Bulletin, vol.33, no.1, pp.67 78, March [25] X. Yu and H. Shi, CI-Rank: Ranking keyword search results based on collective importance, Proc. IEEE Int l Conf. on Data Engineering (ICDE), pp.78 89, April Appendix: 50 search intensions for the TPC-H datasets Q1: Find a supplier whose name is and who supplies the navy drab cornsilk smoke violet part. Q2: Find a supplier whose name is and who supplies the powder firebrick white peach goldenrod part. Q3: Find a supplier whose name is and who supplies the moccasin tan chartreuse cornsilk drab part. Q4: Find a supplier whose name is and who supplies the seashell maroon lace burnished lavender part. Q5: Find a supplier whose name is and who supplies the orchid bisque antique ivory lavender part. Q6: Find a customer whose name is and who orders some parts from a supplier whose name is Q7: Find a customer whose name is and who orders some parts from a supplier whose name is Q8: Find a nation whose name is INDIA and that is in the ASIA region. Q9: Find a nation whose name is RUSSIA and that is in the EUROPE region. Q10: Find a supplier whose name is and who belongs to the EUROPE region. Q11: Find a customer whose name is and who belongs to the CANADA nation in the AMERICA region. Q12: Find the lemon floral azure frosted lime part ordered by customers who belong to the ASIA region. Q13: Find a customer whose name is and who orders the grey green purple sienna peru part and belongs to the ALGERIA nation in the AFRICA region. Q14: Find a supplier who supplies both the antique goldenrod floral forest slate and hot medium spring orange violet parts. Q15: Find a customer whose name is and who orders the powder wheat midnight mint salmon part and belongs to the IRAN nation. Q16: Find a supplier whose name is and who belongs to the RUSSIA nation. Q17: Find the coral lavender seashell rosy burlywood part supplied by suppliers who belong to the ALGERIA nation. Q18: Find the coral grey snow violet hot part supplied by suppliers who belong to the BRAZIL nation. Q19: Find the rosy saddle dark peach drab part supplied by suppliers who belong to the MOROCCO nation. Q20: Find a supplier whose name is and who supplies the sandy wheat coral spring burnished part and belongs to the GERMANY nation. Q21: Find a customer whose name is and who belongs to the IRAN nation. Q22: Find a customer whose name is and who belongs to the ALGERIA nation. Q23: Find a customer whose name is and who belongs to the BRAZIL nation. Q24: Find a customer whose name is and who belongs to the INDONESIA nation. Q25: Find a supplier whose name is and who supplies parts to customers who belong to the KENYA nation. Q26: Find a supplier whose name is and who supplies parts to customers who belong to the GERMANY nation. Q27: Find a customer whose name is and who belongs to the RUSSIA nation and orders some parts from a supplier whose name is Q28: Find a customer whose name is and who belongs to the CANADA nation and orders some parts from a supplier whose name is and belongs to the SAUDI ARABIA

17 2414 nation. Q29: Find a customer whose name is and who belongs to the JAPAN nation and orders some parts from a supplier whose name is and belongs to the BRAZIL nation. Q30: Find a customer whose name is and who belongs to the CHINA nation and orders some parts from a supplier whose name is and belongs to the ALGERIA nation. Q31: Find a customer whose name is and who belongs to the INDIA nation and orders some parts from a supplier who belongs to the INDONESIA nation. Q32: Find a customer whose name is and who belongs to the ARGENTINA nation and orders some parts from a supplier who belongs to the CHINA nation. Q33: Find the almond hot lemon honeydew blush part that is ordered by customers who belong to the IRAQ nation. Q34: Find the moccasin drab olive metallic papaya part that is ordered by customers who belong to the UNITED KINGDOM nation. Q35: Find the red peach seashell honeydew burlywood part that is ordered by customers who belong to the FRANCE nation. Q36: Find a customer whose name is and who orders the blanched khaki azure misty orang part and belongs to the INDIA nation. Q37: Find a customer whose name is and who orders the tan blush blue almond navy part and belongs to the EGYPT nation. Q38: Find a customer whose name is and who orders some parts from a supplier whose name is and belongs to the JAPAN nation. Q39: Find a customer whose name is and who orders some parts from a supplier whose name is and belongs to the RUSSIA nation. Q40: Find a customer whose name is and who orders the cyan white honeydew blue hot part from a supplier whose name is Q41: Find a customer whose name is and who orders the cornflower tomato linen powder cyan part from a supplier whose name is Q42: Find a customer whose name is and who orders the yellow deep bisque mint orchid part. Q43: Find a customer whose name is and who orders the rose light peach grey lemon part. Q44: Find a customer whose name is and who orders the navajo moccasin orange papaya seashell part. Q45: Find a nation that both a customer whose name is and a supplier whose name is belong to. Q46: Find the CANADA nation that both a customer whose name is and a customer whose name is belong to. Q47: Find a nation that both a customer whose name is and a customer whose name is belong to. Q48: Find a part that both a supplier whose name is and a supplier whose name is supply. Q49: Find a part that both a supplier whose name is and a supplier whose name is supply. Q50: Find a part that both a supplier whose name is and a supplier whose name is supply. In-Joong Kim received the B.S. in computer engineering from Hongik University in 2004 and the M.S. in computer science from Korea Advanced Institute of Science and Technology (KAIST) in Currently, he is a Ph.D. candidate in the department of computer science at KAIST. His research interests include information retrieval, search engines, and big data analytics. Kyu-Young Whang earned his Ph.D. from Stanford University in From 1983 to 1991, he was a Research Staff Member at IBM T.J. Watson Research Center. In 1990, he joined KAIST, where he currently is a Distinguished Professor at Department of Computer Science. His research interests encompass database systems/storage systems, search engines, objectoriented databases, geographic information systems, and data mining. He was the general chair of VLDB2006. He served as an Editor-in-Chief of the VLDB Journal from 2003 to He is a Fellow of ACM and IEEE. He is currently the chair of IEEE TCDE. Hyuk-Yoon Kwon received the B.S. in computer science and statistics from University of Seoul (UOS) in 2005, the M.S. in computer science from Korea Advanced Institute of Science and Technology (KAIST) in 2007, and the Ph.D. in computer science from KAIST in He is currently a postdoctoral fellow of computer science at KAIST. His research interests include GIS, information retrieval, and big data analytics.

SPARK: Top-k Keyword Query in Relational Database

SPARK: Top-k Keyword Query in Relational Database SPARK: Top-k Keyword Query in Relational Database Wei Wang University of New South Wales Australia 20/03/2007 1 Outline Demo & Introduction Ranking Query Evaluation Conclusions 20/03/2007 2 Demo 20/03/2007

More information

RASIM: a rank-aware separate index method for answering top-k spatial keyword queries

RASIM: a rank-aware separate index method for answering top-k spatial keyword queries World Wide Web (2013) 16:111 139 DOI 10.1007/s11280-012-0159-3 RASIM: a rank-aware separate index method for answering top-k spatial keyword queries Hyuk-Yoon Kwon Kyu-Young Whang Il-Yeol Song Haixun Wang

More information

TAR: Constructing Target-Aware Results for Keyword Search on Knowledge Graphs

TAR: Constructing Target-Aware Results for Keyword Search on Knowledge Graphs TAR: Constructing Target-Aware Results for Keyword Search on Knowledge Graphs Abstract Existing work for processing keyword searches on graph data focuses on efficiency of result generation. However, being

More information

Effective Top-k Keyword Search in Relational Databases Considering Query Semantics

Effective Top-k Keyword Search in Relational Databases Considering Query Semantics Effective Top-k Keyword Search in Relational Databases Considering Query Semantics Yanwei Xu 1,2, Yoshiharu Ishikawa 1, and Jihong Guan 2 1 Graduate School of Information Science, Nagoya University, Japan

More information

G-Index Model: A generic model of index schemes for top-k spatial-keyword queries

G-Index Model: A generic model of index schemes for top-k spatial-keyword queries World Wide Web (2015) 18:969 995 DOI 10.1007/s11280-014-0294-0 G-Index Model: A generic model of index schemes for top-k spatial-keyword queries Hyuk-Yoon Kwon Haixun Wang Kyu-Young Whang Received: 26

More information

Chapter 10. Normalization. Chapter Outline. Chapter Outline(contd.)

Chapter 10. Normalization. Chapter Outline. Chapter Outline(contd.) Chapter 10 Normalization Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant Information in Tuples and Update Anomalies 1.3 Null

More information

UNIT 3 DATABASE DESIGN

UNIT 3 DATABASE DESIGN UNIT 3 DATABASE DESIGN Objective To study design guidelines for relational databases. To know about Functional dependencies. To have an understanding on First, Second, Third Normal forms To study about

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

Elmasri/Navathe, Fundamentals of Database Systems, Fourth Edition Chapter 10-2

Elmasri/Navathe, Fundamentals of Database Systems, Fourth Edition Chapter 10-2 Elmasri/Navathe, Fundamentals of Database Systems, Fourth Edition Chapter 10-2 Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant

More information

AutoJoin: Providing Freedom from Specifying Joins

AutoJoin: Providing Freedom from Specifying Joins AutoJoin: Providing Freedom from Specifying Joins Terrence Mason Iowa Database and Emerging Applications Laboratory, Computer Science University of Iowa Email: terrence-mason, lixin-wang, ramon-lawrence@uiowa.uiowa.edu

More information

ADVANCED DATABASES ; Spring 2015 Prof. Sang-goo Lee (11:00pm: Mon & Wed: Room ) Advanced DB Copyright by S.-g.

ADVANCED DATABASES ; Spring 2015 Prof. Sang-goo Lee (11:00pm: Mon & Wed: Room ) Advanced DB Copyright by S.-g. 4541.564; Spring 2015 Prof. Sang-goo Lee (11:00pm: Mon & Wed: Room 301-203) ADVANCED DATABASES Copyright by S.-g. Lee Review - 1 General Info. Text Book Database System Concepts, 6 th Ed., Silberschatz,

More information

Relational Database Design (II)

Relational Database Design (II) Relational Database Design (II) 1 Roadmap of This Lecture Algorithms for Functional Dependencies (cont d) Decomposition Using Multi-valued Dependencies More Normal Form Database-Design Process Modeling

More information

Informal Design Guidelines for Relational Databases

Informal Design Guidelines for Relational Databases Outline Informal Design Guidelines for Relational Databases Semantics of the Relation Attributes Redundant Information in Tuples and Update Anomalies Null Values in Tuples Spurious Tuples Functional Dependencies

More information

Extending Keyword Search to Metadata in Relational Database

Extending Keyword Search to Metadata in Relational Database DEWS2008 C6-1 Extending Keyword Search to Metadata in Relational Database Jiajun GU Hiroyuki KITAGAWA Graduate School of Systems and Information Engineering Center for Computational Sciences University

More information

Relational Database design. Slides By: Shree Jaswal

Relational Database design. Slides By: Shree Jaswal Relational Database design Slides By: Shree Jaswal Topics: Design guidelines for relational schema, Functional Dependencies, Definition of Normal Forms- 1NF, 2NF, 3NF, BCNF, Converting Relational Schema

More information

DATA MODELS FOR SEMISTRUCTURED DATA

DATA MODELS FOR SEMISTRUCTURED DATA Chapter 2 DATA MODELS FOR SEMISTRUCTURED DATA Traditionally, real world semantics are captured in a data model, and mapped to the database schema. The real world semantics are modeled as constraints and

More information

Database Design Theory and Normalization. CS 377: Database Systems

Database Design Theory and Normalization. CS 377: Database Systems Database Design Theory and Normalization CS 377: Database Systems Recap: What Has Been Covered Lectures 1-2: Database Overview & Concepts Lecture 4: Representational Model (Relational Model) & Mapping

More information

Chapter 10. Chapter Outline. Chapter Outline. Functional Dependencies and Normalization for Relational Databases

Chapter 10. Chapter Outline. Chapter Outline. Functional Dependencies and Normalization for Relational Databases Chapter 10 Functional Dependencies and Normalization for Relational Databases Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant

More information

S4: Top-k Spreadsheet-Style Search for Query Discovery

S4: Top-k Spreadsheet-Style Search for Query Discovery S4: Top-k Spreadsheet-Style Search for Query Discovery Fotis Psallidas 1 Bolin Ding 2 Kaushik Chakrabarti 2 Surajit Chaudhuri 2 1 Columbia University, New York, NY 2 Microsoft Research, Redmond, WA fotis@cs.columbia.edu,

More information

Leveraging Transitive Relations for Crowdsourced Joins*

Leveraging Transitive Relations for Crowdsourced Joins* Leveraging Transitive Relations for Crowdsourced Joins* Jiannan Wang #, Guoliang Li #, Tim Kraska, Michael J. Franklin, Jianhua Feng # # Department of Computer Science, Tsinghua University, Brown University,

More information

Basic Tokenizing, Indexing, and Implementation of Vector-Space Retrieval

Basic Tokenizing, Indexing, and Implementation of Vector-Space Retrieval Basic Tokenizing, Indexing, and Implementation of Vector-Space Retrieval 1 Naïve Implementation Convert all documents in collection D to tf-idf weighted vectors, d j, for keyword vocabulary V. Convert

More information

Estimating the Quality of Databases

Estimating the Quality of Databases Estimating the Quality of Databases Ami Motro Igor Rakov George Mason University May 1998 1 Outline: 1. Introduction 2. Simple quality estimation 3. Refined quality estimation 4. Computing the quality

More information

Midterm 2: CS186, Spring 2015

Midterm 2: CS186, Spring 2015 Midterm 2: CS186, Spring 2015 Prof. J. Hellerstein You should receive a double-sided answer sheet and an 8-page exam. Mark your name and login on both sides of the answer sheet, and in the blanks above.

More information

Chapter 14. Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies

Chapter 14. Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies Chapter 14 Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies Copyright 2012 Ramez Elmasri and Shamkant B. Navathe Chapter Outline 1 Informal Design Guidelines

More information

Database Management Systems Paper Solution

Database Management Systems Paper Solution Database Management Systems Paper Solution Following questions have been asked in GATE CS exam. 1. Given the relations employee (name, salary, deptno) and department (deptno, deptname, address) Which of

More information

Implementation of Skyline Sweeping Algorithm

Implementation of Skyline Sweeping Algorithm Implementation of Skyline Sweeping Algorithm BETHINEEDI VEERENDRA M.TECH (CSE) K.I.T.S. DIVILI Mail id:veeru506@gmail.com B.VENKATESWARA REDDY Assistant Professor K.I.T.S. DIVILI Mail id: bvr001@gmail.com

More information

Distributed minimum spanning tree problem

Distributed minimum spanning tree problem Distributed minimum spanning tree problem Juho-Kustaa Kangas 24th November 2012 Abstract Given a connected weighted undirected graph, the minimum spanning tree problem asks for a spanning subtree with

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

2.2 Syntax Definition

2.2 Syntax Definition 42 CHAPTER 2. A SIMPLE SYNTAX-DIRECTED TRANSLATOR sequence of "three-address" instructions; a more complete example appears in Fig. 2.2. This form of intermediate code takes its name from instructions

More information

Structural consistency: enabling XML keyword search to eliminate spurious results consistently

Structural consistency: enabling XML keyword search to eliminate spurious results consistently The VLDB Journal (2010) 19:503 529 DOI 10.1007/s00778-009-0177-7 REGULAR PAPER Structural consistency: enabling XML keyword search to eliminate spurious results consistently Ki-Hoon Lee Kyu-Young Whang

More information

Functional Dependencies and. Databases. 1 Informal Design Guidelines for Relational Databases. 4 General Normal Form Definitions (For Multiple Keys)

Functional Dependencies and. Databases. 1 Informal Design Guidelines for Relational Databases. 4 General Normal Form Definitions (For Multiple Keys) 1 / 13 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant d Information in Tuples and Update Anomalies 1.3 Null Values in Tuples 1.4 Spurious Tuples

More information

COL351: Analysis and Design of Algorithms (CSE, IITD, Semester-I ) Name: Entry number:

COL351: Analysis and Design of Algorithms (CSE, IITD, Semester-I ) Name: Entry number: Name: Entry number: There are 6 questions for a total of 75 points. 1. Consider functions f(n) = 10n2 n + 3 n and g(n) = n3 n. Answer the following: (a) ( 1 / 2 point) State true or false: f(n) is O(g(n)).

More information

A Graph Method for Keyword-based Selection of the top-k Databases

A Graph Method for Keyword-based Selection of the top-k Databases This is the Pre-Published Version A Graph Method for Keyword-based Selection of the top-k Databases Quang Hieu Vu 1, Beng Chin Ooi 1, Dimitris Papadias 2, Anthony K. H. Tung 1 hieuvq@nus.edu.sg, ooibc@comp.nus.edu.sg,

More information

Chapter 6: Relational Database Design

Chapter 6: Relational Database Design Chapter 6: Relational Database Design Chapter 6: Relational Database Design Features of Good Relational Design Atomic Domains and First Normal Form Decomposition Using Functional Dependencies Second Normal

More information

Database Systems. Basics of the Relational Data Model

Database Systems. Basics of the Relational Data Model Database Systems Relational Design Theory Jens Otten University of Oslo Jens Otten (UiO) Database Systems Relational Design Theory INF3100 Spring 18 1 / 30 Basics of the Relational Data Model title year

More information

Draw A Relational Schema And Diagram The Functional Dependencies In The Relation >>>CLICK HERE<<<

Draw A Relational Schema And Diagram The Functional Dependencies In The Relation >>>CLICK HERE<<< Draw A Relational Schema And Diagram The Functional Dependencies In The Relation I need to draw relational schema and dependency diagram showing transitive and partial Functional dependency and normalization

More information

Binary Decision Diagrams

Binary Decision Diagrams Logic and roof Hilary 2016 James Worrell Binary Decision Diagrams A propositional formula is determined up to logical equivalence by its truth table. If the formula has n variables then its truth table

More information

FastQRE: Fast Query Reverse Engineering

FastQRE: Fast Query Reverse Engineering FastQRE: Fast Query Reverse Engineering Dmitri V. Kalashnikov AT&T Labs Research dvk@research.att.com Laks V.S. Lakshmanan University of British Columbia laks@cs.ubc.ca Divesh Srivastava AT&T Labs Research

More information

Graphs. Part I: Basic algorithms. Laura Toma Algorithms (csci2200), Bowdoin College

Graphs. Part I: Basic algorithms. Laura Toma Algorithms (csci2200), Bowdoin College Laura Toma Algorithms (csci2200), Bowdoin College Undirected graphs Concepts: connectivity, connected components paths (undirected) cycles Basic problems, given undirected graph G: is G connected how many

More information

The Structure of Bull-Free Perfect Graphs

The Structure of Bull-Free Perfect Graphs The Structure of Bull-Free Perfect Graphs Maria Chudnovsky and Irena Penev Columbia University, New York, NY 10027 USA May 18, 2012 Abstract The bull is a graph consisting of a triangle and two vertex-disjoint

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe CHAPTER 14 Basics of Functional Dependencies and Normalization for Relational Databases Slide 14-2 Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1 Semantics of the Relation Attributes

More information

XML RETRIEVAL. Introduction to Information Retrieval CS 150 Donald J. Patterson

XML RETRIEVAL. Introduction to Information Retrieval CS 150 Donald J. Patterson Introduction to Information Retrieval CS 150 Donald J. Patterson Content adapted from Manning, Raghavan, and Schütze http://www.informationretrieval.org OVERVIEW Introduction Basic XML Concepts Challenges

More information

Workflow Modeling for Virtual Processes: an Order-Preserving Process-View Approach

Workflow Modeling for Virtual Processes: an Order-Preserving Process-View Approach In: Information Systems Workflow Modeling for Virtual Processes: an Order-Preserving Process-View Approach Duen-Ren Liu Minxin Shen Institute of Information Management, National Chiao Tung University 1001

More information

Homework 6. Question Points Score Query Optimization 20 Functional Dependencies 20 Decompositions 30 Normal Forms 30 Total: 100

Homework 6. Question Points Score Query Optimization 20 Functional Dependencies 20 Decompositions 30 Normal Forms 30 Total: 100 Carnegie Mellon University Department of Computer Science 15-415/615- Database Applications C. Faloutsos & A. Pavlo, Spring 2015 Prepared by Vinay & Jiayu DUE DATE: Tuesday, 3/24/2015, 1:30pm Homework

More information

CSCI 403: Databases 13 - Functional Dependencies and Normalization

CSCI 403: Databases 13 - Functional Dependencies and Normalization CSCI 403: Databases 13 - Functional Dependencies and Normalization Introduction The point of this lecture material is to discuss some objective measures of the goodness of a database schema. The method

More information

Chapter 8: Relational Database Design

Chapter 8: Relational Database Design Chapter 8: Relational Database Design Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 8: Relational Database Design Features of Good Relational Design Atomic Domains

More information

Incremental Keyword Search in Relational Databases

Incremental Keyword Search in Relational Databases Dipartimento di Informatica e Automazione Via della Vasca Navale, 79 00146 Roma, Italy Incremental Keyword Search in Relational Databases Roberto De Virgilio, Antonio Maccioni, Riccardo Torlone RT-DIA-204-2013

More information

This lecture. Databases -Normalization I. Repeating Data. Redundancy. This lecture introduces normal forms, decomposition and normalization.

This lecture. Databases -Normalization I. Repeating Data. Redundancy. This lecture introduces normal forms, decomposition and normalization. This lecture Databases -Normalization I This lecture introduces normal forms, decomposition and normalization (GF Royle 2006-8, N Spadaccini 2008) Databases - Normalization I 1 / 23 (GF Royle 2006-8, N

More information

LECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS

LECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS Department of Computer Science University of Babylon LECTURE NOTES OF ALGORITHMS: DESIGN TECHNIQUES AND ANALYSIS By Faculty of Science for Women( SCIW), University of Babylon, Iraq Samaher@uobabylon.edu.iq

More information

Computing Full Disjunctions

Computing Full Disjunctions Computing Full Disjunctions (Extended Abstract) Yaron Kanza School of Computer Science and Engineering The Hebrew University of Jerusalem yarok@cs.huji.ac.il Yehoshua Sagiv School of Computer Science and

More information

Properties of red-black trees

Properties of red-black trees Red-Black Trees Introduction We have seen that a binary search tree is a useful tool. I.e., if its height is h, then we can implement any basic operation on it in O(h) units of time. The problem: given

More information

Databases -Normalization I. (GF Royle, N Spadaccini ) Databases - Normalization I 1 / 24

Databases -Normalization I. (GF Royle, N Spadaccini ) Databases - Normalization I 1 / 24 Databases -Normalization I (GF Royle, N Spadaccini 2006-2010) Databases - Normalization I 1 / 24 This lecture This lecture introduces normal forms, decomposition and normalization. We will explore problems

More information

CS411 Database Systems. 05: Relational Schema Design Ch , except and

CS411 Database Systems. 05: Relational Schema Design Ch , except and CS411 Database Systems 05: Relational Schema Design Ch. 3.1-3.5, except 3.4.2-3.4.3 and 3.5.3. 1 How does this fit in? ER Diagrams: Data Definition Translation to Relational Schema: Data Definition Relational

More information

Lecture 3: Graphs and flows

Lecture 3: Graphs and flows Chapter 3 Lecture 3: Graphs and flows Graphs: a useful combinatorial structure. Definitions: graph, directed and undirected graph, edge as ordered pair, path, cycle, connected graph, strongly connected

More information

Information Sciences

Information Sciences Information Sciences 179 (2009) 3286 3308 Contents lists available at ScienceDirect Information Sciences journal homepage: www.elsevier.com/locate/ins The partitioned-layer index: Answering monotone top-k

More information

STRUCTURED ENTITY QUERYING OVER UNSTRUCTURED TEXT JIAHUI JIANG THESIS

STRUCTURED ENTITY QUERYING OVER UNSTRUCTURED TEXT JIAHUI JIANG THESIS c 2015 Jiahui Jiang STRUCTURED ENTITY QUERYING OVER UNSTRUCTURED TEXT BY JIAHUI JIANG THESIS Submitted in partial fulfillment of the requirements for the degree of Master of Science in Computer Science

More information

DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS. QUESTION 1: What is database?

DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS. QUESTION 1: What is database? DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS Complete book short Answer Question.. QUESTION 1: What is database? A database is a logically coherent collection of data with some inherent meaning, representing

More information

Performance Measures for Multi-Graded Relevance

Performance Measures for Multi-Graded Relevance Performance Measures for Multi-Graded Relevance Christian Scheel, Andreas Lommatzsch, and Sahin Albayrak Technische Universität Berlin, DAI-Labor, Germany {christian.scheel,andreas.lommatzsch,sahin.albayrak}@dai-labor.de

More information

Keyword search in relational databases. By SO Tsz Yan Amanda & HON Ka Lam Ethan

Keyword search in relational databases. By SO Tsz Yan Amanda & HON Ka Lam Ethan Keyword search in relational databases By SO Tsz Yan Amanda & HON Ka Lam Ethan 1 Introduction Ubiquitous relational databases Need to know SQL and database structure Hard to define an object 2 Query representation

More information

A Graph-based Database Partitioning Method for Parallel OLAP Query Processing

A Graph-based Database Partitioning Method for Parallel OLAP Query Processing A Graph-based Database Partitioning Method for Parallel OLAP Query Processing Yoon-Min Nam, Min-Soo Kim*, Donghyoung Han DGIST, Republic of Korea {ronymin, mskim, icedrak}@dgist.ac.kr Abstract As the amount

More information

Byzantine Consensus in Directed Graphs

Byzantine Consensus in Directed Graphs Byzantine Consensus in Directed Graphs Lewis Tseng 1,3, and Nitin Vaidya 2,3 1 Department of Computer Science, 2 Department of Electrical and Computer Engineering, and 3 Coordinated Science Laboratory

More information

Algorithms, Games, and Networks February 21, Lecture 12

Algorithms, Games, and Networks February 21, Lecture 12 Algorithms, Games, and Networks February, 03 Lecturer: Ariel Procaccia Lecture Scribe: Sercan Yıldız Overview In this lecture, we introduce the axiomatic approach to social choice theory. In particular,

More information

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

Database Systems Relational Model. A.R. Hurson 323 CS Building

Database Systems Relational Model. A.R. Hurson 323 CS Building Relational Model A.R. Hurson 323 CS Building Relational data model Database is represented by a set of tables (relations), in which a row (tuple) represents an entity (object, record) and a column corresponds

More information

8) A top-to-bottom relationship among the items in a database is established by a

8) A top-to-bottom relationship among the items in a database is established by a MULTIPLE CHOICE QUESTIONS IN DBMS (unit-1 to unit-4) 1) ER model is used in phase a) conceptual database b) schema refinement c) physical refinement d) applications and security 2) The ER model is relevant

More information

We shall represent a relation as a table with columns and rows. Each column of the table has a name, or attribute. Each row is called a tuple.

We shall represent a relation as a table with columns and rows. Each column of the table has a name, or attribute. Each row is called a tuple. Logical Database design Earlier we saw how to convert an unorganized text description of information requirements into a conceptual design, by the use of ER diagrams. The advantage of ER diagrams is that

More information

Measuring and Evaluating Dissimilarity in Data and Pattern Spaces

Measuring and Evaluating Dissimilarity in Data and Pattern Spaces Measuring and Evaluating Dissimilarity in Data and Pattern Spaces Irene Ntoutsi, Yannis Theodoridis Database Group, Information Systems Laboratory Department of Informatics, University of Piraeus, Greece

More information

Diversification of Query Interpretations and Search Results

Diversification of Query Interpretations and Search Results Diversification of Query Interpretations and Search Results Advanced Methods of IR Elena Demidova Materials used in the slides: Charles L.A. Clarke, Maheedhar Kolla, Gordon V. Cormack, Olga Vechtomova,

More information

KEYWORD search is a well known method for extracting

KEYWORD search is a well known method for extracting IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 26, NO. 7, JULY 2014 1657 Efficient Duplication Free and Minimal Keyword Search in Graphs Mehdi Kargar, Student Member, IEEE, Aijun An, Member,

More information

Thwarting Traceback Attack on Freenet

Thwarting Traceback Attack on Freenet Thwarting Traceback Attack on Freenet Guanyu Tian, Zhenhai Duan Florida State University {tian, duan}@cs.fsu.edu Todd Baumeister, Yingfei Dong University of Hawaii {baumeist, yingfei}@hawaii.edu Abstract

More information

Home Page. Title Page. Page 1 of 14. Go Back. Full Screen. Close. Quit

Home Page. Title Page. Page 1 of 14. Go Back. Full Screen. Close. Quit Page 1 of 14 Retrieving Information from the Web Database and Information Retrieval (IR) Systems both manage data! The data of an IR system is a collection of documents (or pages) User tasks: Browsing

More information

Unit 3 : Relational Database Design

Unit 3 : Relational Database Design Unit 3 : Relational Database Design Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Content Relational Model: Basic concepts, Attributes and Domains, CODD's Rules, Relational

More information

Trees Rooted Trees Spanning trees and Shortest Paths. 12. Graphs and Trees 2. Aaron Tan November 2017

Trees Rooted Trees Spanning trees and Shortest Paths. 12. Graphs and Trees 2. Aaron Tan November 2017 12. Graphs and Trees 2 Aaron Tan 6 10 November 2017 1 10.5 Trees 2 Definition Definition Definition: Tree A graph is said to be circuit-free if, and only if, it has no circuits. A graph is called a tree

More information

Structure of Abstract Syntax trees for Colored Nets in PNML

Structure of Abstract Syntax trees for Colored Nets in PNML Structure of Abstract Syntax trees for Colored Nets in PNML F. Kordon & L. Petrucci Fabrice.Kordon@lip6.fr Laure.Petrucci@lipn.univ-paris13.fr version 0.2 (draft) June 26, 2004 Abstract Formalising the

More information

SPARK2: Top-k Keyword Query in Relational Databases

SPARK2: Top-k Keyword Query in Relational Databases TKDE SPECIAL IUE: KEYWORD SEARCH ON STRUCTURED DATA, 20 SPARK2: Top-k Keyword Query in Relational Databases Yi Luo, Wei Wang, Member, IEEE, Xuemin Lin, Xiaofang Zhou, Senior Member, IEEE Jianmin Wang,

More information

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY KARL L. STRATOS Abstract. The conventional method of describing a graph as a pair (V, E), where V and E repectively denote the sets of vertices and edges,

More information

A Reduction of Conway s Thrackle Conjecture

A Reduction of Conway s Thrackle Conjecture A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854

More information

Normalization. Murali Mani. What and Why Normalization? To remove potential redundancy in design

Normalization. Murali Mani. What and Why Normalization? To remove potential redundancy in design 1 Normalization What and Why Normalization? To remove potential redundancy in design Redundancy causes several anomalies: insert, delete and update Normalization uses concept of dependencies Functional

More information

Structural Consistency: Enabling XML Keyword Search to Eliminate Spurious Results Consistently

Structural Consistency: Enabling XML Keyword Search to Eliminate Spurious Results Consistently Last Modified: 22 Sept. 29 Structural Consistency: Enabling XML Keyword Search to Eliminate Spurious Results Consistently Ki-Hoon Lee, Kyu-Young Whang, Wook-Shin Han, and Min-Soo Kim Department of Computer

More information

Structural optimization of a full-text n-gram index using relational normalization

Structural optimization of a full-text n-gram index using relational normalization The VLDB Journal (28) 17:1485 157 DOI 1.17/s778-7-82-x REGULAR PAPER Structural optimization of a full-text n-gram index using relational normalization Min-Soo Kim Kyu-Young Whang Jae-Gil Lee Min-Jae Lee

More information

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11

Undirected Graphs. V = { 1, 2, 3, 4, 5, 6, 7, 8 } E = { 1-2, 1-3, 2-3, 2-4, 2-5, 3-5, 3-7, 3-8, 4-5, 5-6 } n = 8 m = 11 Chapter 3 - Graphs Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. V = {

More information

Database Systems External Sorting and Query Optimization. A.R. Hurson 323 CS Building

Database Systems External Sorting and Query Optimization. A.R. Hurson 323 CS Building External Sorting and Query Optimization A.R. Hurson 323 CS Building External sorting When data to be sorted cannot fit into available main memory, external sorting algorithm must be applied. Naturally,

More information

Chapter 14 Outline. Normalization for Relational Databases: Outline. Chapter 14: Basics of Functional Dependencies and

Chapter 14 Outline. Normalization for Relational Databases: Outline. Chapter 14: Basics of Functional Dependencies and Ramez Elmasri, Shamkant B. Navathe(2016) Fundamentals of Database Systems (7th Edition), pearson, isbn 10: 0-13-397077-9;isbn-13:978-0-13-397077-7. Chapter 14: Basics of Functional Dependencies and Normalization

More information

The query processor turns user queries and data modification commands into a query plan - a sequence of operations (or algorithm) on the database

The query processor turns user queries and data modification commands into a query plan - a sequence of operations (or algorithm) on the database query processing Query Processing The query processor turns user queries and data modification commands into a query plan - a sequence of operations (or algorithm) on the database from high level queries

More information

DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1

DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1 Discussiones Mathematicae Graph Theory 32 (2012) 643 657 doi:10.7151/dmgt.1633 DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1 Soufiane Khelifi Laboratory LMP2M, Bloc of laboratories

More information

Mining Frequently Changing Substructures from Historical Unordered XML Documents

Mining Frequently Changing Substructures from Historical Unordered XML Documents 1 Mining Frequently Changing Substructures from Historical Unordered XML Documents Q Zhao S S. Bhowmick M Mohania Y Kambayashi Abstract Recently, there is an increasing research efforts in XML data mining.

More information

Figure : Example Precedence Graph

Figure : Example Precedence Graph CS787: Advanced Algorithms Topic: Scheduling with Precedence Constraints Presenter(s): James Jolly, Pratima Kolan 17.5.1 Motivation 17.5.1.1 Objective Consider the problem of scheduling a collection of

More information

Relational Design: Characteristics of Well-designed DB

Relational Design: Characteristics of Well-designed DB 1. Minimal duplication Relational Design: Characteristics of Well-designed DB Consider table newfaculty (Result of F aculty T each Course) Id Lname Off Bldg Phone Salary Numb Dept Lvl MaxSz 20000 Cotts

More information

Keyword Proximity Search on XML Graphs

Keyword Proximity Search on XML Graphs Keyword Proximity Search on XML Graphs Vagelis Hristidis Yannis Papakonstantinou Andrey Balmin Computer Science and Engineering Dept. University of California, San Diego {vagelis,yannis,abalmin}@cs.ucsd.edu

More information

On k-dimensional Balanced Binary Trees*

On k-dimensional Balanced Binary Trees* journal of computer and system sciences 52, 328348 (1996) article no. 0025 On k-dimensional Balanced Binary Trees* Vijay K. Vaishnavi Department of Computer Information Systems, Georgia State University,

More information

Mining Generalised Emerging Patterns

Mining Generalised Emerging Patterns Mining Generalised Emerging Patterns Xiaoyuan Qian, James Bailey, Christopher Leckie Department of Computer Science and Software Engineering University of Melbourne, Australia {jbailey, caleckie}@csse.unimelb.edu.au

More information

These are all examples of relatively simple databases. All of the information is textual or referential.

These are all examples of relatively simple databases. All of the information is textual or referential. 1.1. Introduction Databases are pervasive in modern society. So many of our actions and attributes are logged and stored in organised information repositories, or Databases. 1.1.01. Databases Where do

More information

Incompatibility Dimensions and Integration of Atomic Commit Protocols

Incompatibility Dimensions and Integration of Atomic Commit Protocols The International Arab Journal of Information Technology, Vol. 5, No. 4, October 2008 381 Incompatibility Dimensions and Integration of Atomic Commit Protocols Yousef Al-Houmaily Department of Computer

More information

Data Structure. IBPS SO (IT- Officer) Exam 2017

Data Structure. IBPS SO (IT- Officer) Exam 2017 Data Structure IBPS SO (IT- Officer) Exam 2017 Data Structure: In computer science, a data structure is a way of storing and organizing data in a computer s memory so that it can be used efficiently. Data

More information

Rigidity, connectivity and graph decompositions

Rigidity, connectivity and graph decompositions First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework

More information

Theme Identification in RDF Graphs

Theme Identification in RDF Graphs Theme Identification in RDF Graphs Hanane Ouksili PRiSM, Univ. Versailles St Quentin, UMR CNRS 8144, Versailles France hanane.ouksili@prism.uvsq.fr Abstract. An increasing number of RDF datasets is published

More information

Relational model continued. Understanding how to use the relational model. Summary of board example: with Copies as weak entity

Relational model continued. Understanding how to use the relational model. Summary of board example: with Copies as weak entity COS 597A: Principles of Database and Information Systems Relational model continued Understanding how to use the relational model 1 with as weak entity folded into folded into branches: (br_, librarian,

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM EXERCISES Prepared by Natashia Boland 1 and Irina Dumitrescu 2 1 Applications and Modelling 1.1

More information

The strategy for achieving a good design is to decompose a badly designed relation appropriately.

The strategy for achieving a good design is to decompose a badly designed relation appropriately. The strategy for achieving a good design is to decompose a badly designed relation appropriately. Functional Dependencies The single most important concept in relational schema design theory is that of

More information