摘要:
Methods are provided for buffering nodes of a hierarchical index (e.g., R-tree, bang file, hB-tree) during operations on multi-dimensional data represented by the index. The methods are particularly suited for query operations, and a different method may be more suitable for one pattern of queries than another. Where queries are distributed in a relatively uniform manner across the domain or dataspace of an index, a node-area buffering method is provided. In this method nodes are cached or buffered in order of their respective areas (e.g., their minimum bounding areas), and a node having a smaller area will be replaced in cache before a node having a larger area. When, however, queries are not uniformly distributed, then a least frequently accessed buffering technique may be applied. According to this method statistics are maintained concerning the frequency with which individual index nodes are accessed. Those accessed less frequently are replaced in cache before those accessed more frequently. Yet another, generic, buffering strategy is provided that is suitable for all patterns of query distribution. In accordance with this method, whenever a node must be removed from cache in order to make room for a newly accessed node, cached nodes are compared to each other to determine which provides the least caching benefit and may therefore be ejected. A comparison may involve three factors—the difference in the nodes' areas, the difference in the frequency with which they have been accessed and the difference between their latest access times. These factors may be weighted to give them more or less effect in relation to each other.
摘要:
Techniques for history enabling a table in a database system so that past versions of rows of the history-enabled table are available for temporal querying. The table is history enabled by adding a start time column to the table and creating a history table for the history-enabled table. The history table's rows are copies of rows of the history-enabled table that have changed and include start time and end time fields whose values indicate a period in which the history table's row was in the history-enabled table. Temporal queries are performed on a view which is the union of the history-enabled table and the history table. The temporal queries are speeded up by period of time indexes in which the leaves are grouped based on time period size, identifiers are assigned to the groups, and the keys of the index include the group identifiers.
摘要:
Systems, methods, and other embodiments associated with sequence matching with no more than a number E errors are disclosed. A test fragment to be located within a target sequence with at most a number E errors is received. The test fragment is broken into E+1 test sub-fragments. If one test sub-fragment is located within the target sequence with no errors; a determination is made as to whether the other test sub-fragments are located within the target sequence adjacent to the one test sub-fragment with a total of at most E errors. If the other test sub-fragments are located within the target sequence adjacent the one test sub-fragment with at most E errors, a location of the test fragment within the target sequence is returned.
摘要:
Techniques for history enabling a table in a database system so that past versions of rows of the history-enabled table are available for temporal querying. The table is history enabled by adding a start time column to the table and creating a history table for the history-enabled table. The history table's rows are copies of rows of the history-enabled table that have changed and include start time and end time fields whose values indicate a period in which the history table's row was in the history-enabled table. Temporal queries are performed on a view which is the union of the history-enabled table and the history table. The temporal queries are speeded up by period of time indexes in which the leaves are grouped based on time period size, identifiers are assigned to the groups, and the keys of the index include the group identifiers.
摘要:
A version control system is described for use in connection with a database management system to facilitate versioning of a database table, the system including a database table and a version control module. The database table comprises a plurality of records, each record including at least one data field for storing user data and at least some of the records including a version control field including version control information. The version control module is configured to, in response to a user query related to the database table and related to a version, generate an augmented query for processing by the data base management system, the augmented query relating to the user query and the version control information. The version control module facilitates association of versions of the database with respective ones of a hierarchy of states and allows conflicts therebetween to be resolved, data to be posted from child states to respective parent states in the hierarchy, and referential constraints between tables to be preserved.
摘要:
A system and method for indexing and storing multi-dimensional or multi-attribute data. Data items are recursively sorted in a selected dimension (e.g., the dimension having the greatest variance) and divided until each subdivision fits into a leaf node having a specified fanout. Intermediate nodes and a root node are constructed to complete the index. Each node of the index is stored in a database as a separate object or record and may include a node identifier of the unique, an identifier of a parent and/or a sibling node and an entry for each child of the node, which may be data items or other nodes. Each record entry for a child includes an associated bounding area encompassing descendant data items. Another database table or module may store information about the index, such as the dimensionality of the data, the index fanout and an identifier of a root of the index.
摘要:
A system and method for indexing and storing multi-dimensional or multi-attribute data. Data items are recursively sorted in a selected dimension (e.g., the dimension having the greatest variance) and divided until each subdivision fits into a leaf node having a specified fanout. Intermediate nodes and a root node are constructed to complete the index. Each node of the index is stored in a database as a separate object or record and may include a node identifier of the unique, an identifier of a parent and/or a sibling node and an entry for each child of the node, which may be data items or other nodes. Each record entry for a child includes an associated bounding area encompassing descendant data items. Another database table or module may store information about the index, such as the dimensionality of the data, the index fanout and an identifier of a root of the index.
摘要:
Disclosed is an approach for presenting RDF data as a set of relational views. By presenting the RDF data as relational views, this permits integrated access to the RDF-based data from existing relational database tools, such as by asserting SQL queries against the relational views. One or more classes are identified within the RDF data, wherein a relational view of the set of the relational views maps properties relating to a particular class.
摘要:
Techniques for history enabling a table in a database system so that past versions of rows of the history-enabled table are available for temporal querying. The table is history enabled by adding a start time column to the table and creating a history table for the history-enabled table. The start time field's value in a row of the history-enabled table indicates when the contents of the row last changed. The rows of the history table are copies of rows of the history-enabled table that have been deleted or updated. The rows include end time fields whose values indicate when the row was updated or deleted. A history table's row thus indicates a period in which the history table's row was in the history-enabled table. Temporal queries are performed on a view which is the union of the history-enabled table and the history table.
摘要:
Systems, methods, and other embodiments associated with sequence matching with no more than a number E errors are disclosed. A test fragment to be located within a target sequence with at most a number E errors is received. The test fragment is broken into E+1 test sub-fragments. If one test sub-fragment is located within the target sequence with no errors; a determination is made as to whether the other test sub-fragments are located within the target sequence adjacent to the one test sub-fragment with a total of at most E errors. If the other test sub-fragments are located within the target sequence adjacent the one test sub-fragment with at most E errors, a location of the test fragment within the target sequence is returned.