Search engine using indexing method for storing and retrieving data
First Claim
1. A method for storing data for rapid retrieval, comprising the steps of:
- creating a plurality of index arrays having locations wherein said locations are associated with a character or group of characters;
providing a record file for storing a plurality of data items, each of said data items having a string of characters, wherein said locations of said plurality of index arrays are adapted to store either a pointer to a second index array or a second data item and wherein at least one of said plurality of index arrays is adapted to store a pointer to another database indexing structure;
indexing a first predetermined portion of each of said plurality of data items in said plurality of index arrays;
pointing to said another database indexing structure;
indexing a second predetermined portion of each of said plurality of data items in said another database indexing structure; and
wherein said another database indexing structure is a B-tree indexing structure.
2 Assignments
0 Petitions
Accused Products
Abstract
A Search Engine utilizing a method and system for efficient storage and retrieval of data. The system comprises a record file, an index file, a duplicate segment file and access to a network of computers. The index files contains locations of data items, pointers to other index files, or an empty designation. The index files are arrays that contain locations corresponding to a predetermined range of characters with which the data items may be formed. Data items are stored according to the character strings of each data item. The first portion of a data object is indexed according to the indexing method of the present invention while a second portion of the data object is indexed according to another known database technology, such as B-tree.
455 Citations
46 Claims
-
1. A method for storing data for rapid retrieval, comprising the steps of:
-
creating a plurality of index arrays having locations wherein said locations are associated with a character or group of characters;
providing a record file for storing a plurality of data items, each of said data items having a string of characters, wherein said locations of said plurality of index arrays are adapted to store either a pointer to a second index array or a second data item and wherein at least one of said plurality of index arrays is adapted to store a pointer to another database indexing structure;
indexing a first predetermined portion of each of said plurality of data items in said plurality of index arrays;
pointing to said another database indexing structure;
indexing a second predetermined portion of each of said plurality of data items in said another database indexing structure; and
wherein said another database indexing structure is a B-tree indexing structure. - View Dependent Claims (2)
-
-
3. A method of indexing a collection of data objects, wherein a tree index structure is used in combination with a predetermined second indexing structure, comprising the steps of:
-
creating a first level index array;
expanding the levels of said tree index structure to a plurality of additional layers of index arrays and wherein said first level index array and each of said index arrays in said plurality of additional layers of index arrays have a plurality of locations corresponding to at least one character of a predetermined list of characters;
indexing a first predetermined portion of a data object in said first level index array and in each of said plurality of additional layers of index arrays;
pointing to said predetermined second indexing structure;
indexing a second portion of said data object in said second indexing structures; and
wherein said second indexing structure is a B-tree indexing structure.
-
-
4. A hybrid indexing structure for indexing a plurality of data objects comprising:
-
a plurality of index segments, said plurality of index segments having locations associated with a character or group of characters, and wherein said locations of said index segments are adapted to store either a pointer to another index segment or a second data element;
a second database structure pointed to by at least one location of one index segment;
wherein a first portion of each of said plurality of data objects are indexed by said plurality of index segments and a second portion of each of said plurality of data objects are indexed by said second database structure; and
wherein said second database structure is a B-tree structure. - View Dependent Claims (5, 6, 7)
-
-
8. A hybrid indexing structure for indexing a plurality of data objects comprising:
-
a first database structure;
a plurality of layers of index segments, each of said index segments having locations wherein each of said locations are associated with a character, and wherein said locations of said index segments are adapted to store either a pointer to another index segment or a second data element, wherein said first database structure points to said at least one of said index segments from said plurality of layers of index segments;
wherein a first portion of each of said plurality of data objects are indexed by said first database structure and wherein a second portion of each of said plurality of data objects are indexed by said plurality of layers of index segments; and
wherein said first database structure is a B-tree structure.
-
-
9. An indexing process for use in Internet search engines, comprising the steps of:
-
retrieving a collection of data items from the Internet, said collection of data items associated with an address;
indexing said data items, said indexing further comprising the steps of;
a. creating a plurality of index arrays, each of said index arrays having locations wherein each of said locations is associated with a character or group of characters;
b. indexing a first predetermined portion of each of said plurality of data items in said plurality of index arrays;
c. configuring at least one of said index arrays with a reference for each unique data item, said reference used to locate an address associated with each of said indexed data items; and
d. wherein said reference is stored in a terminating character position of one of said index arrays. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
associating each of said unique numerical values with all addresses of said collections of data items containing said data item referenced by said unique numerical value.
-
-
13. An indexing process according to claim 12, wherein said collection of data items is a web page and wherein said address is a URL.
-
14. An indexing process according to claim 9, wherein said reference is a record location for a record containing addresses of all collections of data items containing said data item.
-
15. An indexing process according to claim 9, wherein said address is a URL.
-
16. An indexing process according to claim 9, further comprising:
providing a separate index structure for each of said URLs of said collection of data items retrieved.
-
17. An indexing process for use in Internet search engines, comprising the steps of:
-
retrieving a Web page from said Internet, including a URL associated with said retrieved Web page;
indexing data items from said Web page, said indexing further comprised of the steps of;
a. creating an index structure by creating a plurality of index arrays, each of said index arrays having locations wherein each of said locations is associated with a character or group of characters, wherein said locations of said plurality of index arrays are adapted to store either a pointer to another index array or a second data element;
b. associating a unique reference for each unique data item in said index structure;
associating each of said unique references to Web pages containing said unique data items; and
wherein said unique reference for each unique data item is stored in a terminating character position of said index structure. - View Dependent Claims (18, 20)
-
-
21. A method for indexing Internet pages for subsequent searching and retrieval, said method comprising:
-
providing a first index structure, said index structure having a plurality of index arrays, wherein each of said index arrays has a predetermined number of locations and wherein each of said locations is associated with a character and, wherein one of said locations of each of said index arrays corresponds to a terminating character reference;
obtaining a first data item from a first Internet page;
determining a first character of said first data item;
placing a pointer to a second level index array in a location of a first level index array corresponding to said first character;
indexing the remaining characters of said first data item in said index structure;
placing a pointer to a last index array in an index array and index location corresponding to a last character of said first data item; and
placing a reference value in a terminating character location of said last index array, wherein said reference value is used to retrieve the location of the Internet page.- View Dependent Claims (19, 22, 23, 24, 25, 26)
expanding said index structure to accommodate all unique combinations of said characters or group of characters.
-
-
22. A method according to claim 21, wherein said reference value is a unique numerical value assigned to said first data item.
-
23. A method according to claim 21, further comprising the step of:
using said reference value to look up all locations of Internet pages containing said first data item.
-
24. A method according to claim 21, wherein said location of said Internet pages are URLs.
-
25. A method according to claim 24, further comprising the step of:
providing a second index structure for indexing all retrieved URLs.
-
26. A method according to claim 25, wherein a URL reference value is assigned to each indexed URL.
-
27. An index structure for indexing data items retrieved from an Internet web page, said index structure comprised of:
-
a plurality of index arrays, said index arrays having a predetermined number of locations and wherein each of said locations is associated with at least one character;
wherein said locations of said index arrays are adapted to hold a pointer to another index array or another data element;
wherein said data element is a reference value used to retrieve locations of Internet pages;
wherein said reference value is a unique numerical value assigned to a unique data item indexed in said index structure; and
wherein said unique numerical value for each unique data item is stored in a terminating character location of an index array. - View Dependent Claims (28, 29, 30, 31)
-
-
32. An index structure for indexing a data item, comprising:
-
a first index array, said first index array further comprised of;
a. a first portion having a predetermined number of locations, each of said locations corresponding to a predetermined character or group of characters;
b. a first pointer location for storing a pointer to another index array or a reference value, wherein said reference value is used to locate web pages containing the data item; and
c. wherein said first pointer and said first pointer location are located in non-continuous locations in memory. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
-
44. An index structure for indexing a data item, comprising:
-
a first index array, said first index array further comprised of;
a. a first portion having a predetermined number of locations, each of said locations corresponding to a predetermined character or group of characters;
b. a first pointer location for storing a pointer to another index array or a reference value, wherein said reference value is used to locate web pages containing the data item; and
c. wherein one of said locations in said first portion relates to an unknown character.
-
-
45. An index structure for indexing a data item, comprising:
-
a first index array, said first index array further comprised of;
a. a first portion having a predetermined number of locations, each of said locations corresponding to a predetermined character or group of characters;
b. a first pointer location for storing a pointer to another index array or a reference value, wherein said reference value is used to locate web pages containing the data item; and
c. wherein said reference value is a unique numerical value assigned to a particular data string.
-
-
46. An index structure for indexing a data item, comprising:
-
a first index array, said first index array further comprised of;
a. a first portion having a predetermined number of locations, each of said locations corresponding to a predetermined character or group of characters;
b. a first pointer location for storing a pointer to another index array or a reference value, wherein said reference value is used to locate web pages containing the data item; and
c. wherein said first portion is a bitmap portion.
-
Specification