or
Bookmark and Share
System and method for efficiently indexing and storing a large database with high data insertion frequency
   
Document Number
US Patent 5204958
Issued Date
April 20, 1993
Link
Inventors
Cheng; Edward C. (South San Francisco, CA)
Map
Abstract
A database index file is maintained by a computer system having primary random access memory and secondary memory. A record for each item added to the database is stored in a sequential file in secondary memory (disk storage) and an indexed pointer to the new record is stored in a small B-tree stored in primary random access memory. The full index file for the database is a second, large B-tree stored in secondary memory. Leaf-nodes of the full index file are stored in indexed order. Periodically, a portion of the memory resident small B-tree is merged with a corresponding portion of the large B-tree by selecting a range of index values and retrieving from secondary memory all indexed pointers in the selected range of index values. The indexed pointers in the first B-tree in the selected range of index values are merged into the retrieved records, the resulting merged set of indexed pointers are stored in secondary memory in indexed order in a contiguous area of secondary memory. As a result, the indexed pointers for newly added database records are written to secondary memory in batches, thereby accessing secondary memory very efficiently.
Tags:
Description:
Amusing 0%
Clever 0%
Complex 0%
Efficient 0%
Historic 0%
Important 0%
Innovative 0%
Interesting 0%
Practical 0%
Simple 0%
Number of Claims:
22
Comments:
no comments yet
Owner
Published
April 20, 1993
Application Number
07/722,007
Filed
June 27, 1991
US Classification
707/102   707/200
Int'l Classification
G06F   17/30   (20060101)  
Examiner
Assistant Examiner
USPTO Field of Search
364/2MSFile   395/600  
Related Patents
5508502 - Information recording/regenerating method and information management system capable of managing a plurality of items of information efficiently - Owned by Olympus Optical Co., Ltd. (Tokyo,JP)

A host computer searches an optical card for a file dated the same year as a screening file for a latest screening, which is to be recorded, at a search step, and determines at a first determination step whether a screening file dated the same year is present. When determining that a screening file dated the same year is present, the host computer extends control to a screening file recording step. When determining that a screening file dated the same year is absent, the host computer extends control to a regenerating step. The host computer then regenerates all screening files, which are dated the year for which no packed file has been created, from the optical card, and then determines at a second determination step whether the number of regenerated screening files exceeds 1. When it is determined that the number of regenerated screening files exceeds 1, control is passed to a packed file recording step. The regenerated screening files are then recorded all together as a packed file on the optical card. Control is then passed to a screening file recording step. When it is determined at the second determination step that the number of regenerated screening files is less than 1, control is passed to the screening file recording step. At the screening file recording step, the latest screening file is recorded on the optical card.

5446881 - Database storage and retrieval method using a declining stage size and repetitive searches - Owned by AT&T Corp. (Murray Hill, NJ)

A hashing database system that efficiently handles collisions comprises a list of data blocks divided into a plurality of stages, each of which is geometrically smaller than the preceding stage. The key of the data to be stored or retrieved (the "desired key") is hashed and, along with the stage number, used as an input into a staging algorithm to derive an offset into the list. One or more data blocks in the list surrounding the hashed-to data block are checked to determine whether the key field in the data block matches the desired key. If the keys match, then the desired data block is found. If the desired key is not found, then the hashed key is again used as an input into a staging algorithm along with the stage, and a new offset is derived and used as an index into the next stage of the index list. These steps are repeated until the key is found or the last stage is reached. The last stage is an overflow where the data is guaranteed to be found or space is guaranteed to be found for insertion of new data if not found in one of the stages.

6067548 - Dynamic organization model and management computing system and method therefor - Owned by e Guanxi, Inc. (San Mateo, CA)

The present invention provides a dynamic organizational database as an underlying information system to support collaborative computing in a global enterprise. This information system is built based on the Organizational Modeling and Management model (OMM) and provides a system architecture and a graphical user interface for easy manipulation of organizational objects. Contrary to traditional approaches, the present invention separates the organization model from the process model, the application model and the data model. Thus, independent and flexible enterprise modeling and design is allowed to reflect more realistically a rapidly changing business environment.

6493762 - Index allocation for data broadcasting - Owned by International Business Machines Corporation (Armonk, NY)

A system and method for broadcasting data in accordance with predicted usage. In accordance with the method, the predicted usage of data records within a given set is determined. The broacast order is then determined based on the predicted usage and the data records are broadcast in the order determined. Two kinds of embodiments are considered: one in which variant index fanouts are not allowed (i.e., fixed fanout has to be used), and the other in which variant index fanouts are allowed. For the case of fixed index fanouts, a first method for the optimal index tree construction minimizes the average cost of index probes. For the case of variant index fanouts, a second method (method 2) builds index trees with variant fanouts. The first method uses access frequencies of data records to build a fixed fanout index tree. In the second method, the number of fanouts of each index is determined as a function of the access frequencies of those nodes (data or indexes) that the index node points to.

6286011 - System and method for recording transactions using a chronological list superimposed on an indexed list - Owned by BellSouth Corporation (Atlanta, GA)

Recording transactions using a chronological list superimposed on an indexed list. A transaction log of transaction entries is maintained as a data structure logically organized as a chronological list superimposed on an indexed list. In one aspect of the invention, the transaction log is implemented in an element of a telecommunications network. In another aspect of the invention, the transaction log is implemented in a computer system. Preferably, each transaction entry includes a transaction identifier field, a time stamp field, a chronological list pointer field and an indexed list pointer field. A first chronological list pointer points to the oldest transaction entry in the transaction log and a last chronological list pointer points to the latest transaction entry in the transaction log. The chronological list pointer field of a transaction entry points to the next oldest transaction entry. The indexed list includes a number of indexed list entry pointers. Each indexed list entry pointer corresponds to an index and points to a transaction entry with the same index. The indexed list pointer field of a transaction entry points to another transaction entry with the same index. Adding a transaction entry to the transaction log or deleting a transaction entry from the transaction log includes updating the chronological list pointers and the indexed list pointers.

Claims
Description
About| FAQs| Terms & Disclaimer| Link to Us| Contact Us