Patent application number | Description | Published |
20080208798 | DETECTING AND TRACKING MONOTONICITY FOR ACCELERATING RANGE AND INEQUALITY QUERIES - A computer implemented method, apparatus, and computer usable program code for detecting monotonicity. A determination is made as to whether a function that is assumed to be monotonic will remain monotonic after performing an operation in response to receiving the operation. The operation is allowed to be performed in response to a determination that the function will remain monotonic after performing the operation. | 08-28-2008 |
20080208802 | METHOD AND SYSTEM FOR UTILIZING A HIERARCHICAL BITMAP STRUCTURE TO PROVIDE A FAST AND RELIABLE MECHANISM TO REPRESENT LARGE DELETED DATA SETS IN RELATIONAL DATABASES - A method and system utilizes a hierarchical bitmap structure to represent deleted data sets. Each level in the hierarchical bitmap structure may have progressively larger size and represent finer granularity of number of data blocks than its parent level. A method in one aspect may comprise allocating a first level bitmap having size equal to a register on a processor, each bit in the first level bitmap representing a plurality of blocks of data in a database, and allocating one or more pointers corresponding to said plurality of bits in the first level bitmap, said one or more pointers being allocated to point to a sub bitmap generated after a data block is deleted but before the index corresponding to the data block is cleaned. | 08-28-2008 |
20080208866 | IDENTIFICATION, NOTIFICATION, AND CONTROL OF DATA ACCESS QUANTITY AND PATTERNS - A device for limiting access to data in a database includes an input for receiving a request to access data in a database and a processor that is communicatively coupled to the input and allows access to the data in the database. A data counter for counting an instantaneous rate of data flow and/or a volume of data accessed and a comparator for determining if the data flow and/or the volume of data accessed in the database exceeds a previously specified value is also included, wherein the processor disallows access to the data in the database in response to the instantaneous rate and/or the volume of data exceeding the previously specified value. | 08-28-2008 |
20080219278 | METHOD FOR FINDING SHARED SUB-STRUCTURES WITHIN MULTIPLE HIERARCHIES - Shared sub-structures are found within a collection of multiple hierarchies. A label is associated with each node in the collection of hierarchies, and an inverted index mapping node labels to lists of hierarchies is created. Each pair of hierarchies in each hierarchy list is iterated over in a certain order, and a shared substructure is found between a pair of hierarchies using the node labels. When more than one shared substructure is found, the substructures are merged into a shared subtree. | 09-11-2008 |
20080221939 | METHODS FOR REWRITING AGGREGATE EXPRESSIONS USING MULTIPLE HIERARCHIES - Key performance indicator (KPI) expressions are rewritten using metric hierarchies. A node label is associated with each node in the metric hierarchies, the metric hierarchies arranged in arbitrary trees. Node labels associated with each term in a KPI expression are retrieved, and the terms in the KPI expression are sorted according to the node labels. The terms are grouped according to the node labels, and a collection of groups that covers all the terms in the KPI expression is found. Overlaps in the covering groups may be minimized. | 09-11-2008 |
20080222182 | Method for Fast Deletion of Physically Clustered Data - A computer implemented method, apparatus, and computer usable program code for deleting rows in a multidimensional clustering database. A multidimensional clustering processor receives a request to delete a set of multidimensionally clustered data. The multidimensional clustering processor determines whether all multidimensionally clustered data is located in a block. Responsive to all multidimensionally clustered data qualifying for deletion, the multidimensional clustering processor deletes all data in the block to delete the set of multidimensionally clustered data. | 09-11-2008 |
20090083212 | SYSTEM AND METHOD FOR EXECUTNG MULTIPLE CONCURRENT INDEX-DRIVEN TABLE ACCESS OPERATIONS - An index scan processor and method to perform concurrent scans of stored indexed data. An indexed data scanner performs a first scan of stored data by sequentially scanning through an index data structure and maintains, over a duration of the first scan, a first scan current scan location within the index data structure that indicates a currently accessed record within the stored data structure for the first scan. A scan manager accepts a request for a second scan of the stored data, determines, during the performing the first scan, a starting index scan location within the index data structure for the second scan that is sufficiently near the first scan current index scan location to cause records indicated by the starting location index to be stored within a buffer due to the performing the first scan, and starts the second scan at the starting location and proceeding to the second end key. | 03-26-2009 |
20090083292 | SYSTEM AND METHOD FOR ESTIMATING DISTANCES BETWEEN MULTIPLE INDEX-DRIVEN SCAN OPERATIONS - A method and processor to determine distances between multiple index driven scan operations. A first anchor index entry is identified during a first index scan and stored. A first number of index entries between the first anchor index entry and a first index scan location being processed by a first index scan is determined based on information maintained external to an index structure. A determination is made of second number of index entries between the first anchor index entry and a second index scan location being processed by a second index scan executing concurrently with the first index scan based on information maintained external to the index structure. A distance between the first index scan location and the second index scan location is calculated as equal to a difference between the first number of index entries and the second number of index entries. | 03-26-2009 |
20090089306 | Method, System and Article of Manufacture for Improving Execution Efficiency of a Database Workload - Disclosed is a data processing system implemented method, a data processing system and an article of manufacture for improving execution efficiency of a database workload to be executed against a database. The database includes database tables, and the database workload identifies at least one of the database tables. The data processing system includes an identification module for identifying candidate database tables being identifiable in the database workload, the identified candidate database tables being eligible for organization under a clustering schema, a selection module for selecting the identified candidate tables according to whether execution of the database workload is improved if the selected identified candidate table is organized according to the clustering scheme, and an organization module for organizing the clustering schema of the selected organized identified candidate tables prior to the database workload being execution against the database. | 04-02-2009 |
20090248723 | Method and Apparatus for Selecting an Optimal Delete-Safe Compression Method on List of Delta Encoded Integers - Techniques are disclosed for selecting a delete-safe compression method for a plurality of delta encoded data values (e.g., delta encoded integers or deltas). For example, a computer-implemented method for selecting an optimal delete-safe compression algorithm from among two or more compression algorithms for use on a plurality of delta encoded data values includes the following steps. The maximum number of data values eliminated by each of the two or more compression algorithms is computed. For the plurality of delta encoded data values to be compressed, the minimum size of the plurality of delta encoded data values before compression thereof is computed. A delete-safe threshold value is computed based on the minimum size of the plurality of delta encoded data values. Then, the compression algorithm is selected from the two or more compression algorithms that achieves the delete-safe threshold value. | 10-01-2009 |
20090248724 | Method and Apparatus for Encoding List of Variable Length Structures to Support Bi-Directional Scans - Techniques are disclosed for encoding a variable length structure such that it facilitates forward and reverse scans of a list of such structures as needed. While the techniques are applicable to a wide variety of applications, they are particularly well-suited for use with structures such as those found in compressed database indexes. For example, a computer-implemented method for processing one or more variable length data structures includes the following steps. Each variable length data structure is obtained. Each variable length structure comprises one or more data block. A variable length encoding process is applied to the one or more blocks of each variable length data structure which comprises setting a continuation data value in each block to a first value or a second value, wherein the setting of the continuation data values enables bi-directional scanning of each variable length structure. | 10-01-2009 |
20090248725 | COMPRESSABILITY ESTIMATION OF NON-UNIQUE INDEXES IN A DATABASE MANAGEMENT SYSTEM - A method, information processing system, and computer readable storage product estimate a compression factor. A set of key values within an index are analyzed. Each key value is associated with a record identifier (“RID”) list comprising a set of RIDs. The index is in an uncompressed format and includes a total byte length. A number of RIDs associated with each key value is estimated for each key value in the set of key values. A total byte length for all RID deltas between each at least two consecutive RIDs within a RID list is estimated for each RID list based on the number of RIDs that have been determined. The total byte length estimated for each RID list is accumulated. A compression factor associated with the index is determined by dividing the total byte length that has been accumulated by the byte length of the index. | 10-01-2009 |
20100082545 | COMPRESSION OF SORTED VALUE INDEXES USING COMMON PREFIXES - A method, information processing system, and computer program storage product for compressing sorted values is disclosed. At least a first prefix and a second prefix in a plurality of prefixes are compared. Each prefix comprises at least a portion of a plurality of sorted values. A respective prefix comprises a set of consecutive characters including at least a first character of a respective sorted value. The respective sorted value further comprising a respective suffix comprising consecutive characters of the respective sorted value that are after the respective prefix. At least a respective first character of the first prefix and a respective first character of the second prefix are determined to be substantially identical. The first prefix is merged with the second prefix into a single prefix comprising the first character. A set of suffixes associated with the first prefix is updated to reflect an association with the second prefix. | 04-01-2010 |
20100262633 | MANAGING DATABASE OBJECT PLACEMENT ON MULTIPLE STORAGE DEVICES - A method, information processing system, and computer program storage product optimize the placement of database objects on a multiplicity of storage devices. A set of database objects are placed on a first storage device in a multiplicity of storage devices. Each storage device comprises differing characteristics. A query workload is run on the set of database objects that have been placed on the first storage device. Profiling information associated with the query workload that is running is collected. A subset of database objects is selected from the set of the database objects to be stored on a second storage device. The second storage device is a separate physical device from, and performs faster than, the first storage device. The subset of database objects is stored on the second storage device and all remaining database objects in the set of database objects on the first storage device. | 10-14-2010 |
20110225167 | METHOD AND SYSTEM TO STORE RDF DATA IN A RELATIONAL STORE - A method (and structure) of storing schema-less data of a dataset in a relational database, includes constructing a hash table for the schema-less data, using a processor on a computer. Data in the dataset is stored in a tuple format including a subject along with at least one other entity associated to the subject. Each row of the hashtable will be dedicated to a subject of the dataset, and at least one of the at least one other entity associated with the subject in the row is to be stored in a pair-wise manner in that row of the hashtable. In an exemplary embodiment, RDF data that uses triples (subject, predicate, object) is stored with the predicate/object stored in the pair-wise manner in its associated subject row. | 09-15-2011 |
20130282765 | OPTIMIZING SPARSE SCHEMA-LESS DATA IN RELATIONAL STORES - Various embodiments of the invention relate to optimizing storage of schema-less data. A schema-less dataset including a plurality of resources is received. Each resource is associated with at least a plurality of properties. At least one set of co-occurring properties from the plurality of properties is identified. A graph including a plurality of nodes is generated. Each of the nodes represents a unique property in the set of co-occurring properties. The graph further includes an edge connecting each node representing a pair of co-occurring properties. A graph coloring operation is performed on the graph. The graph coloring operation includes assigning each of nodes to a color, where nodes connected by an edge are assigned different colors. A schema is generated that assigns a column identifier from a table to each unique property represented by one of the nodes in the graph based on the color assigned to the node. | 10-24-2013 |
20140358861 | MANAGING A MULTI-VERSION DATABASE - Managing different versions of a data record is provided. A mapping is maintained between a version-independent logical record identifier and a version-dependent physical record row identifier that correspond to each data record within a plurality of data records of a data table using a logical record identifier to physical record row identifier indirection mapping table. Entries within leaf pages of an index associated with the data table are updated to point to the version-independent logical record identifier corresponding to a data record instead of pointing to the version-dependent physical record row identifier corresponding to the data record. The logical record identifier to physical record row identifier indirection mapping table is updated in response to performing an operation on the data record instead of updating the entries within the leaf pages of the index associated with the data table. | 12-04-2014 |
20140358876 | MANAGING A MULTI-VERSION DATABASE - Managing different versions of a data record is provided. A mapping is maintained between a version-independent logical record identifier and a version-dependent physical record row identifier that correspond to each data record within a plurality of data records of a data table using a logical record identifier to physical record row identifier indirection mapping table. Entries within leaf pages of an index associated with the data table are updated to point to the version-independent logical record identifier corresponding to a data record instead of pointing to the version-dependent physical record row identifier corresponding to the data record. The logical record identifier to physical record row identifier indirection mapping table is updated in response to performing an operation on the data record instead of updating the entries within the leaf pages of the index associated with the data table. | 12-04-2014 |
20150039559 | COMPRESSING A MULTI-VERSION DATABASE - Managing a multi-version database is provided. A logical record identifier to physical record row identifier indirection mapping table on a solid-state storage device is extended to include a plurality of delta blocks. A delta block within the plurality of delta blocks is maintained for each primary key in a plurality of primary keys associated with a data table on a magnetic hard disk storage device. | 02-05-2015 |
20150039573 | COMPRESSING A MULTI-VERSION DATABASE - Managing a multi-version database is provided. A logical record identifier to physical record row identifier indirection mapping table on a solid-state storage device is extended to include a plurality of delta blocks. A delta block within the plurality of delta blocks is maintained for each primary key in a plurality of primary keys associated with a data table on a magnetic hard disk storage device. | 02-05-2015 |
20150074040 | DEFERRING DATA RECORD CHANGES USING QUERY REWRITING - Staging data record changes from a faster storage medium to a slower storage medium using data query rewriting is provided. In response to receiving a data query corresponding to a particular data record, it is determined whether the data query is one of a transactional data query or an analytical data query. In response to determining that the data query is a transactional data query, the transactional data query is rewritten to apply transactional delta changes to the particular data record on a storage-class memory of a computer. In response to determining that the data query is an analytical data query, the analytical data query is rewritten to select and reconcile each data record corresponding to the particular data record stored on the storage-class memory with the particular data record stored on a persistent data storage device of the computer. | 03-12-2015 |
20150074041 | DEFERRING DATA RECORD CHANGES USING QUERY REWRITING - Staging data record changes from a faster storage medium to a slower storage medium using data query rewriting is provided. In response to receiving a data query corresponding to a particular data record, it is determined whether the data query is one of a transactional data query or an analytical data query. In response to determining that the data query is a transactional data query, the transactional data query is rewritten to apply transactional delta changes to the particular data record on a storage-class memory of a computer. In response to determining that the data query is an analytical data query, the analytical data query is rewritten to select and reconcile each data record corresponding to the particular data record stored on the storage-class memory with the particular data record stored on a persistent data storage device of the computer. | 03-12-2015 |
20150089144 | METHOD AND SYSTEM FOR AUTOMATIC SPACE ORGANIZATION IN TIER2 SOLID STATE DRIVE (SSD) CACHE IN DATABASES FOR MULTI PAGE SUPPORT - A system and method for adjusting space allocated for different page sizes on a recording medium includes dividing the recording medium into multiple blocks such that a block size of the multiple blocks supports a largest page size, and such that each of the multiple blocks is used for a single page size, and assigning an incoming page to a block based on a temperature of the incoming page. | 03-26-2015 |