This application claims the priority benefit of Taiwan application serial no. 98134933, filed on Oct. 15, 2009. The entirety of the above-mentioned patent application is hereby incorporated by reference herein and made a part of specification.
1. Field of the Invention
The invention is related to a data query method, a data query system and a computer readable and writable recording medium, and particular to a method and a system for converting an extensible-markup-language query into a improved structured-query-language query to rapidly query data, and a computer readable and writable recording medium for storing the same.
2. Description of Related Art
Among the various markup languages, the extensible markup language (XML) with the features of powerful function, accurate description, easy being written and expanded has been widely applied in the Internet and the data management. Most of the web page applications are connected to the database and use the XML to translate the data in the database into web pages or to convert the data on the web pages and then to store them into the database. However, the databases for managing the text data are usually the relational database which does not have any hierarchical relationship. The XML query command often cannot be used for querying data from the relational database. Thus, the conversion interface for converting the XML query commands into the accessing commands for accessing the data in the relational database is developed.
As shown in
The invention provides a data query method, a data query system and a computer readable and writable recording medium of the relational database, which are capable of converting the extensible-markup-language query into an improved structured-query-language query.
The invention provides a data query method, a data query system and a computer readable and writable recording medium of the relational database, which are capable of reducing the number of the join operations of the relational tables in the data query procedure.
The invention provides a data query method, a data query system and a computer readable and writable recording medium of the relational database, which are capable of increasing the data query rate.
The invention provides a data query method of a relational database, adapted for a query system to query the relational database through at least a constant mapping tree, wherein the relational database has a plurality of relational tables, and the relational tables includes at least a constant table recording a plurality of unique data, and each of the at least constant mapping tree corresponds to one of the at least constant tables respectively, and each of the at least constant mapping trees has a plurality of tree nodes, and each of the tree nodes has a node number, and each of the node numbers corresponds to one of the unique data respectively. The data query method comprising: receiving an extensible-markup-language query and converting the extensible-markup-language query into an improved structured-query-language query according to the at least constant mapping tree. Then, a data query implemented on the relational database by using the improved structured-query-language query.
The invention provides a data query system of a relational database, wherein the relational database has a plurality of relational tables, and the relational tables includes at least a constant table recording a plurality of unique data. The data query system comprises a query receiving module, at least a constant mapping tree, a query generator and a query module. The query receiving module is used to receive an extensible-markup-language query. Each of the at least constant mapping tree corresponds to one of the at least constant tables respectively, and each of the at least constant mapping trees has a plurality of tree nodes, and each of the tree nodes has a node number, and each of the node numbers corresponds to one of the unique data respectively. The query generator is used to convert the extensible-markup-language query into an improved structured-query-language query according to the at least constant mapping tree. The query module is used to implement a data query on the relational database by using the improved structured-query-language query.
The invention provides a computer readable and writable recording medium for storing a data query program, at least a constant mapping tree and a relational database, wherein the relational database has a plurality of relational tables, and the relational tables includes at least a constant table recording a plurality of unique data, and each of the at least constant mapping tree corresponds to one of the at least constant tables respectively, and each of the at least constant mapping trees has a plurality of tree nodes, and each of the tree nodes has a node number, and each of the node numbers corresponds to one of the unique data respectively. The data query program comprises: a first programming code for receiving an extensible-markup-language query; a second programming code for converting the extensible-markup-language query into an improved structured-query-language query according to the at least constant mapping tree; and a third programming code for implementing a data query on the relational database by using the improved structured-query-language query.
Furthermore, in the data query method, the data query system and the computer readable and writable recording medium of the present invention, the extensible-markup-language query converted into the improved structured-query-language query further comprises converting the extensible-markup-language query into an original structured-query-language query, wherein the original structured-query-language query has a plurality of predicates. Portions of the predicates corresponding to the unique data in the at least constant table are modified by referring to the node numbers of the unique data corresponding to the portion of the predicates.
Moreover, in the data query method, the data query system and the computer readable and writable recording medium of the present invention, the relational database includes an extensible-markup-language-based relational database.
Further, in the data query method, the data query system and the computer readable and writable recording medium of the present invention, the relational database is built-up by using a module mapping method according to an extensible-markup-language database. Also, each of the unique data of the at least constant table represents a hierarchy path of the extensible-markup-language database. Further, a node hierarchy relationship between the tree nodes of the at least constant mapping tree complies with the data hierarchy relationship represented by each of the unique data.
In addition, in the data query method, the data query system and the computer readable and writable recording medium of the present invention, there is no foreign key set in the at least constant table.
Furthermore, in the data query method, the data query system and the computer readable and writable recording medium of the present invention, each of the node number corresponds to a unique identification number of each of the unique data.
In the data query method, the data query system and the computer readable and writable recording medium of the present invention, the received extensible-markup-language query is converted into a high performance structured-query-language query by combining and replacing portions of the predicates sets with the node numbers of the at least constant mapping tree. Therefore, the number of the join operations is decreased and the rate of data query of the relational database is greatly increased. Thus, the time for waiting for the data query is decreased and the query efficiency is increased.
In order to make the aforementioned and other features and advantages of the invention more comprehensible, embodiments accompanying figures are described in detail below.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
Furthermore, in another embodiment of the present invention, the data query system 400 further comprises a uniqueness determining module 410 and a constant-mapping-tree building module 412, as shown in
In the present embodiment, in the path table 504 for recording the hierarchy path of each of the data in the XML database, each of the recorded data representing a hierarchy path 504a has a one-on-one feature, which is so-called uniqueness. Hence, the path table 504 is regarded as a constant table. The at least constant mapping tree 405 shown in
In the aforementioned embodiment, the at least constant mapping tree 405 has a plurality of tree nodes with node numbers respectively, and each of the node numbers corresponds to one of the unique data 504a in the at least constant table 504 respectively. In some embodiments, the at least constant mapping tree 405 can be built by, for example, adopting Hash table or other rapid data searching method. Further, the Hash table records each of the tree nodes of the at least constant mapping tree 405 and the unique data stored in the at least constant table 504 respectively corresponding to the recorded tree nodes. In another embodiment, the at least constant table 504 further comprises a unique identification field for storing identification numbers, which are one-on-one corresponding to the unique data 504a in the at least constant table 504 as shown in the ID number in the ID field 504b of the path table 504. In the other embodiment, the unique identification numbers can be the random numbers generated by the random generator so that the unique identification numbers are not repeated. Preferably, the node number of each of the tree nodes of the at least constant mapping tree 405 is the unique identification number in the ID field 504b of the unique data 504a, which is corresponding to the node number.
Further, the step of implementing the data query further comprises displaying the query result of the data query by the output module 418. For instance, a user interface, such as a web page, is generated according to the query result and is transmitted to a user device, such as a computer or a portable device, to be displayed. Alternatively, the query result is directly transmitted to the user device and the transmitted query result is handled by an application software to be displayed.
In other embodiments, as shown in
Moreover, the other embodiment of the present invention provides a method for building up a constant mapping tree 405, as shown in
In the present embodiment, as shown in
Then, as shown in
In the present embodiment, the at least constant mapping tree can be built up according to a searching tree algorithm, such as the binary searching tree algorithm. In another embodiment, the at least constant mapping tree can be built up according to the balanced binary searching tree algorithm. Preferably, the searching tree algorithm can be, for example, the red-black tree algorithm.
Further, in the other embodiment, the node hierarchy relationship between the tree nodes of the at least constant mapping tree complies with the hierarchy path represented by each of the unique data. In other words, the node hierarchy relationships of the at least constant mapping tree can be built up according to the data hierarchy relationships in the contents of the unique data. For instance, the unique data 504a are /Big, /Bug/Video, /Bug/Video/@year, and so on, and the data hierarchy relationships exist between the unique data, and the node hierarchy relationships of the at least constant mapping tree can be built up according to the data hierarchy relationships between the unique data. Thus, the node hierarchy relationships exist between the tree nodes of the at least constant mapping tree, and the node hierarchy relationships correspond to the data hierarchy relationships between the unique data respectively.
In the other embodiments, the node hierarchy relationships between the tree nodes of the at least constant mapping tree can also be built up based on the purpose of rapidly searching the unique data. For instance, the node hierarchy relationships between the tree nodes of the at least constant mapping tree can be built up according to the numerical sizes of the unique data, the numbers of words of the unique data, the number of strokes of words of the unique data, the alphabetical order of the unique data, the numerical sizes of binary data converted from the unique data in the corresponding constant table or other standards for determining the relationships between the unique data. Furthermore, as for the number of strokes of words/characters, the words or the characters are not limited to the Chinese characters. That is, the words/characters can be the words in any languages as long as the words are written with the concept of strokes.
Moreover, under the circumstance that the at least constant table in the relational database is changed (for example, the at least constant table is updated or modified) or a new constant table is added in the relational database, the aforementioned process for building up a constant mapping tree can be still applied to re-build or modify the at least constant mapping tree.
In the aforementioned embodiment, the data query method of the invention may be implemented by executing a computer readable program and the data query system may also be the aforementioned computer readable program/data query program. The computer readable program is stored in a computer readable and writable recording medium and is used to execute a plurality of commands or programming codes for implementing the data query method of the present invention. The executed steps of the data query method are clearly described in the aforementioned embodiments, and thus no further description is provided herein.
According to the above descriptions, in the present invention, the received markup language query is converted into an original SQL query, and then portions of the variables and the expressions in the predicates in the original SQL query are combined and further replaced by the node numbers of the at least constant mapping tree so that the original SQL query is converted into the improved SQL query with less join operations. Thus, the data query rate of the relational database is increased and the time for waiting for the data query is decreased. Hence, the performance of the data query system is improved and the data query system becomes more user-friendly. Further, the user satisfaction is increased as well.
Although the invention has been described with reference to the above embodiments, it will be apparent to one of the ordinary skill in the art that modifications to the described embodiment may be made without departing from the spirit of the invention. Accordingly, the scope of the invention will be defined by the attached claims not by the above detailed descriptions.
Number | Date | Country | Kind |
---|---|---|---|
98134933 | Oct 2009 | TW | national |