Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A method and apparatus for performing storage and retrieval in an information storage system is disclosed that uses the hashing technique with the external chaining method for collision resolution. In order to prevent performance deterioration due to the presence of automatically expiring data items, a garbage collection technique is used that removes all expired records stored in the system in the external chain targeted by a probe into the data storage system. More particularly, each insertion, retrieval, or deletion of a record is an occasion to search an entire linked-list chain of records for expired items and then remove them. Because an expired data item will not remain in the system long term if the system is frequently probed, it is useful for large information storage systems that are heavily used, require the fast access provided by hashing, and cannot be taken off-line for removal of expired data.

InventorRichard Michael Nemes
Primary Examiner: Hosain T. Alam
Current U.S. Classification1/1; 707/999.001; 707/999.1; 707/999.101; 707/999.202; 707/999.206; 707/E17.036
International Classification: G06F 1730

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US5121495Oct 31, 1989Jun 9, 1992Bell Communications Research, Inc.Methods and apparatus for information storage and retrieval utilizing hashing techniques
US5202981Oct 23, 1989Apr 13, 1993International Business Machines CorporationProcess and apparatus for manipulating a boundless data stream in an object oriented programming system
US5287499May 16, 1991Feb 15, 1994Bell Communications Research, Inc.Methods and apparatus for information storage and retrieval utilizing a method of hashing and different collision avoidance schemes depending upon clustering in the hash table

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US6442553Aug 28, 1995Aug 27, 2002Fujitsu LimitedHash system and hash method for transforming records to be hashed
US6515963Jan 27, 1999Feb 4, 2003Cisco Technology, Inc.Per-flow dynamic buffer management
US6529995Jun 18, 1999Mar 4, 2003Storage Technology CorporationMethod and apparatus for maintaining and restoring mapping table entries and data in a raid system
US6611837Dec 29, 2000Aug 26, 2003International Business Machines CorporationSystem and method for managing hierarchical objects
US6625592Aug 10, 1999Sep 23, 2003Harris-Exigent, Inc.System and method for hash scanning of shared memory interfaces
US6745189Dec 29, 2000Jun 1, 2004International Business Machines CorporationSystem and method for enabling multi-indexing of objects
US6823328Dec 29, 2000Nov 23, 2004International Business Machines CorporationSystem and method for enabling unified access to multiple types of data
US6836776May 8, 2003Dec 28, 2004International Business Machines CorporationSystem and method for managing hierarchical objects
US6865676Mar 28, 2000Mar 8, 2005Koninklijke Philips Electronics N.V.Protecting content from illicit reproduction by proof of existence of a complete data set via a linked list
US6874072Mar 23, 2001Mar 29, 2005International Business Machines CorporationMethod, apparatus and article of manufacture for managing a reusable linear access storage medium
US6915302Oct 1, 1999Jul 5, 2005International Business Machines CorporationMethod, system, and program for accessing files in a file system
US6931393Dec 29, 2000Aug 16, 2005International Business Machines CorporationSystem and method for enabling statistical matching
US6963876Dec 29, 2000Nov 8, 2005International Business Machines CorporationSystem and method for searching extended regular expressions
US7010606Dec 29, 2000Mar 7, 2006International Business Machines CorporationSystem and method for caching a network connection
US7016917Dec 29, 2000Mar 21, 2006International Business Machines CorporationSystem and method for storing conceptual information
US7039764Jan 17, 2002May 2, 2006Nokia CorporationNear-perfect, fixed-time searching algorithm using hashing, LRU and cam-based caching
US7209932Mar 25, 2002Apr 24, 2007International Business Machines CorporationMethod, system, and program for allocating tasks to a plurality of processors
US7216207Mar 8, 2004May 8, 2007International Business Machines CorporationSystem and method for fast, secure removal of objects from disk storage
US7246075Jun 23, 2000Jul 17, 2007North Carolina A&T State UniversitySystem for scheduling multiple time dependent events
US7370048May 27, 2005May 6, 2008International Business Machines CorporationFile storage method and apparatus
US7460534Feb 4, 1999Dec 2, 20083Com CorporationMethod for statistical switching
US7549053Sep 27, 2005Jun 16, 2009United States Postal ServiceMethod and system for efficiently retrieving secured data by securely pre-processing provided access information
US7587408Feb 28, 2003Sep 8, 2009United States Postal ServiceMethod and system for storing and retrieving data using hash-accessed multiple data stores
US7664731Sep 22, 2005Feb 16, 2010United States Postal ServiceMethod and system for storing and retrieving data using hash-accessed multiple data stores
US7827108Nov 21, 2008Nov 2, 2010Visa U.S.A. Inc.System and method of validating a relationship between a user and a user account at a financial institution
US7856027Feb 25, 2008Dec 21, 2010International Business Machines CorporationInbound blocking of data received from a LAN in a multi-processor virtualization environment
US8019768Dec 12, 2003Sep 13, 2011Unisys CorporationBidirectional data structure processing
US8117462Sep 22, 2005Feb 14, 2012United States Postal ServiceDelivery point validation system
US8165146Jan 16, 2003Apr 24, 2012Lightwaves Systems Inc.System and method for storing/caching, searching for, and accessing data

Claims

1. An information storage and retrieval system, the system comprising:

a linked list to store and provide access to records stored in a memory of the system, at least some of the records automatically expiring,
a record search means utilizing a search key to access the linked list,
the record search means including a means for identifying and removing at least some of the expired ones of the records from the linked list when the linked list is accessed, and
means, utilizing the record search means, for accessing the linked list and, at the same time, removing at least some of the expired ones of the records in the linked list.

2. The information storage and retrieval system according to claim 1 further including means for dynamically determining maximum number for the record search means to remove in the accessed linked list of records.

3. A method for storing and retrieving information records using a linked list to store and provide access to the records, at least some of the records automatically expiring, the method comprising the steps of:

accessing the linked list of records,
identifying at least some of the automatically expired ones of the records, and
removing at least some of the automatically expired records from the linked list when the linked list is accessed.

4. The method according to claim 3 further including the step of dynamically determining maximum number of expired ones of the records to remove when the linked list is accessed.

5. An information storage and retrieval system, the system comprising:

a hashing means to provide access to records stored in a memory of the system and using an external chaining technique to store the records with same hash address, at least some of the records automatically expiring,
a record search means utilizing a search key to access a linked list of records having the same hash address,
the record search means including means for identifying and removing at least some expired ones of the records from the linked list of records when the linked list is accessed, and
meals, utilizing the record search means, for inserting, retrieving, and deleting records from the system and, at the same time, removing at least some expired ones of the records in the accessed linked list of records.

6. The information storage and retrieval system according to claim 5 further including means for dynamically determining maximum number for the record search means to remove in the accessed linked list of records.

7. A method for storing and retrieving information records using a hashing technique to provide access to the records and using an external chaining technique to store the records with same hash address, at least some of the records automatically expiring, the method comprising the steps of:

accessing a linked list of records having same hash address,
identifying at least some of the automatically expired ones of the records,
removing at least some of the automatically expired records from the linked list when the linked list is accessed, and
inserting, retrieving or deleting one of the records from the system following the step of removing.

8. The method according to claim 7 further including the step of dynamically determining maximum number of expired ones of the records to remove when the linked list is accessed.