1460936519-2df873e7-1a48-4dea-aa46-41626b1e67b7

1. A computer-performed method of organizing a collection of electronic documents, the method comprising:
in a computer system, storing entries in multiple dictionaries separate from and not associated with any particular one of the electronic documents, wherein the multiple dictionaries are data structures stored within the computer system, wherein individual ones of the multiple dictionaries correspond to one of a plurality of different subjects, wherein the entries contain a descriptive term and wherein entries corresponding to an entity contain an entity type code indicating that the entry is an entity entry with respect to a subject of the one of the multiple dictionaries in which the entry is stored and a category of that entity, wherein entity entries are identified as belonging to one or more special categories of terms that have special meaning with respect to their corresponding subjects, and wherein at least some of the descriptive terms are present in two or more of the multiple dictionaries;
responsive to requests within the computer system, accessing the collection of electronic documents by matching terms contained in the electronic documents with descriptive terms in the multiple dictionaries to determine one or more subjects of the electronic documents from subjects of one or more of the multiple dictionaries that contain the descriptive terms matching the terms contained in the electronic documents;
responsive to the matching detecting a match between a descriptive term in one of the electronic documents and in one of the multiple dictionaries, determining whether or not the entry containing the descriptive term in the corresponding dictionary has an entity type code;
responsive to determining that the entry in the corresponding dictionary has an entity type code, providing an indication of the entity type code in conjunction with an indication of the one or more subjects of the electronic documents along with the one or more subjects determined by the determining in response to the requests; and
storing a representation of the one or more subjects determined by the determining along with the indication of the entity type code in a memory of the computer system to provide the response to the requests.
2. The method of claim 1, wherein the special meanings include brands and geographic identifiers.
3. The method of claim 1, wherein the multiple dictionaries include multiple entries for the same descriptive term, wherein the multiple entries include at least one non-entity entry and at least one entity entry.
4. The method of claim 1, wherein the multiple dictionaries include multiple entity entries for the same descriptive term.
5. The method of claim 1, wherein the entries further contain subject-determining-power scores corresponding to each term, wherein an individual subject-determining-power score indicates the relative strength or weakness of the corresponding descriptive term with respect to the subject of the one of the multiple dictionaries containing the entry in which the descriptive term is stored, and wherein the accessing further comprises selecting a corresponding subject-determining-power score for the term in conformity with a result of the determining whether or not the entry has an indication that the entry is an entity entry.
6. The method of claim 1, further comprising creating the multiple dictionaries, the creating comprising:
collecting the descriptive terms for each dictionary;
determining whether a descriptive term is an entity or a non-entity; and
storing the descriptive terms as entries in the dictionaries along with the indications whether or not the entries are entity entries or non-entity entries.
7. A computer system comprising:
a processor for executing program instructions; and
a memory coupled to the processor for storing the program instructions, wherein the program instructions are program instructions for organizing a collection of electronic documents, and wherein the program instructions comprise program instructions that store entries in multiple dictionaries separate from the electronic documents, wherein the multiple dictionaries are data structures stored within the computer system, wherein individual ones of the multiple dictionaries correspond to one of a plurality of different subjects, wherein the entries contain a descriptive term and wherein entries corresponding to an entity contain an entity type code indicating that the entry is an entity entry with respect to a subject of the one of the multiple dictionaries in which the entry is stored and a category of that entity entry with respect to a subject of the one of the multiple dictionaries in which the entry is stored and a category of that entity, wherein entity entries are identified as belonging to one or more special categories of terms that have special meaning with respect to their corresponding subjects, and wherein at least some of the descriptive terms are present in two or more of the multiple dictionaries, program instructions that access the collection of electronic documents by matching terms contained in the electronic documents with descriptive terms in the multiple dictionaries to determine one or more subjects of the documents from subjects of one or more of the multiple dictionaries that contain the descriptive terms matching the terms contained in the electronic documents, program instructions that, responsive to the program instructions that access having detected a match between a descriptive term in one of the electronic documents and in one of the multiple dictionaries, determine whether or not the entry containing the descriptive term in the corresponding dictionary has an entity type code, program instructions that, responsive to the program instructions that determine having determined that the entry in the corresponding dictionary has an entity type code, provide an indication of the entity type code in conjunction with an indication of the one or more subjects of the electronic documents along with the one or more subjects determined by the program instructions that determine in response to the requests, and program instructions that, responsive to the program instructions that determine having determined that the entry has an entity type code, provide an indication of the entity type code in conjunction with an indication of the one or more subjects of the electronic documents along with the one or more subjects determined by the determining in response to the requests, and program instructions that store a representation of the one or more subjects determined by the program instructions that determine along with the indication of the entity type code in a memory of the computer system to provide the response to the requests.
8. The computer system of claim 7, wherein the special meanings include brands and geographic identifiers.
9. The computer system of claim 7, wherein the multiple dictionaries include multiple entries for the same descriptive term, wherein the multiple entries include at least one non-entity entry and at least one entity entry.
10. The computer system of claim 7, wherein the multiple dictionaries include multiple entity entries for the same descriptive term.
11. The computer system of claim 7, wherein the entries further contain subject-determining-power scores corresponding to each term, wherein an individual subject-determining-power score indicates the relative strength or weakness of the corresponding descriptive term with respect to the subject of the one of the multiple dictionaries containing the entry in which the descriptive term is stored, and wherein the program instructions that access further comprise program instructions that select a corresponding subject-determining-power score for the term in conformity whether or not the entry has an entity type code.
12. The computer system of claim 7, further comprising program instructions for creating the multiple dictionaries, comprising:
program instructions for collecting the descriptive terms for each dictionary;
program instructions for determining whether a descriptive term is an entity or a non-entity; and
program instructions for storing the descriptive terms as entries in the dictionaries along with the indications whether or not the entries are entity entries or non-entity entries.
13. A computer program product comprising a computer-readable storage device storing program instructions for organizing a collection of electronic documents, wherein the program instructions comprise program instructions for:
in a computer system, storing entries in multiple dictionaries separate from and not associated with any particular one of the electronic documents, wherein the multiple dictionaries are data structures stored within the computer system, wherein individual ones of the multiple dictionaries correspond to one of a plurality of different subjects, wherein the entries contain a descriptive term and wherein entries corresponding to an entity contain an entity type code indicating that the entry is an entity entry with respect to a subject of the one of the multiple dictionaries in which the entry is stored and a category of that entity, wherein entity entries are identified as belonging to one or more special categories of terms that have special meaning with respect to their corresponding subjects, and wherein at least some of the descriptive terms are present in two or more of the multiple dictionaries;
responsive to requests within the computer system, accessing the collection of electronic documents by matching terms contained in the electronic documents with descriptive terms in the multiple dictionaries to determine one or more subjects of the documents from subjects of one or more of the multiple dictionaries that contain the descriptive terms matching the terms contained in the electronic documents;
responsive to the matching detecting a match between a descriptive term in one of the electronic documents and in one of the multiple dictionaries, determining whether or not the entry containing the descriptive term in the corresponding dictionary has an entity type code;
responsive to determining that the entry in the corresponding dictionary has an entity type code, providing an indication of the entity type code in conjunction with an indication of the one or more subjects of the electronic documents along with the one or more subjects determined by the determining in response to the requests; and
storing a representation of the one or more subjects determined by the determining along with the indication of the entity type code in a memory of the computer system to provide the response to the requests.
14. The computer program product of claim 13, wherein the special meanings include brands and geographic identifiers.
15. The computer program product of claim 13, wherein the multiple dictionaries include multiple entries for the same descriptive term, wherein the multiple entries include at least one non-entity entry and at least one entity entry.
16. The computer program product of claim 13, wherein the multiple dictionaries include multiple entity entries for the same descriptive term.
17. The computer program product of claim 13, wherein the entries further contain subject-determining-power scores corresponding to each term, wherein an individual subject-determining-power score indicates the relative strength or weakness of the corresponding descriptive term with respect to the subject of the one of the multiple dictionaries containing the entry in which the descriptive term is stored, and wherein the program instructions for accessing further comprise program instructions for selecting a corresponding subject-determining-power score for the term in conformity with a result of determining whether or not the entry has an indication that the entry is an entity entry.
18. The computer program product of claim 13, further comprising program instructions for creating the multiple dictionaries, comprising:
program instructions for collecting the descriptive terms for each dictionary;
program instructions for determining whether a descriptive term is an entity or a non-entity; and
program instructions for storing the descriptive terms as entries in the dictionaries along with the indications whether or not the entries are entity entries or non-entity entries.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method comprising:
creating a mapping data structure using an initial number of disks field and a current number of disks field;
computing a chunk by dividing a disk block number by a chunk size;
computing a table stripe value by taking the chunk modulo a repeat interval;
computing a table relative volume block number for the disk block number, wherein the disk block number is of a storage device of a storage device array;
storing the table relative volume block number as an entry in the mapping data structure;
identifying a logical disk number using the table relative volume block number;
computing a volume block number associated with the disk block number of the storage device; and
maintaining the mapping data structure by excluding parity from a volume block number space.
2. The method of claim 1 wherein the mapping data structure is two dimensional and wherein the table relative volume block number is identified by indexing into the mapping data structure using the disk number as a first index and the table stripe value as a second index.
3. The method of claim 1 wherein the volume block number comprises a physical volume block number.
4. The method of claim 1 wherein computing the volume block number associated with the disk block number further comprises computing the volume block number by adding the disk block number to a start of the volume block number range.
5. The method of claim 4 further comprising identifying the start of the volume block number range by mapping the logical disk number into a range index.
6. The method of claim 1 further comprising passing the computed volume block number to a file system of the storage system for use in processing a data access request.
7. The method of claim 1 wherein the storage device array implements a redundancy technique.
8. The method of claim 7 wherein the redundancy technique comprises a RAID technique.
9. The method of claim 1 wherein the mapping data structure is created further using a two-dimensional array describing a distribution pattern of volume block numbers relative to a size of the mapping data structure
10. A non-transitory computer readable medium for mapping a volume block number to a disk block number in a storage device array of a storage system, the computer readable medium comprising program instructions that:
create a mapping data structure using an initial number of disks field and a current number of disks field;
compute a chunk by dividing a disk block number by a chunk size;
compute a table stripe value by taking the chunk modulo a repeat interval;
compute a table relative volume block number for the disk block number, wherein the disk block number is of a storage device of a storage device array;
store the table relative volume block number as an entry in the mapping data structure;
identify a logical disk number using the table relative volume block number;
compute a volume block number associated with the disk block number of the storage device; and
maintain the mapping data structure by excluding parity from a volume block number space.
11. A system comprising:
a storage system executing a storage operating system, the storage operating system including a file system operative lay interconnected with a disk storage module;
a mapping data structure describing a distribution pattern of volume block numbers that are exported by the disk storage module;
wherein the disk storage module is configured to provide volume block number to disk block number mapping using an algorithmic mapping technique; and
wherein the disk storage module is further configured to maintain the mapping data structure by excluding parity blocks from a volume block number space.
12. The system of claim 11 wherein the file system is disk topology aware.
13. The system of claim 11 wherein the mapping data structure is two dimensional.
14. The system of claim 13 wherein the disk number corresponds to a first index of the mapping data structure and wherein the table stripe value corresponds to a second index of the mapping data structure.
15. The system of claim 11 wherein the disk storage module is further configured to create the mapping data structure using a number of disks field and a current number of disks field.