Methods and systems for managing permissions data and/or indexes
First Claim
1. A machine implemented method of processing data comprising:
- receiving a search query from a user;
performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
performing a permissions check upon files found outside the user'"'"'s subindex; and
displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for indexing and searching data, such as file contents and/or metadata. In one exemplary method, an index corresponding to files on a storage device is created. Index is partitioned into subindexes according to certain criteria, such as the location of files or exclusivity of access to files. Subindex contains the entire content of files or metadata describing files, in addition to identifiers leading back to files'"'"' physical storage. Index is maintained by moving files'"'"' index entries from one subindex to another as files change in relation to the partition criteria, such as changing location. Searching some subindexes, like one corresponding to files in a shared folder, is done with permission checking. Searches of certain other subindexes, like one corresponding to the home folder of the user searching, are done without permission checking the underlying files resulting in a performance improvement.
-
Citations
103 Claims
-
1. A machine implemented method of processing data comprising:
-
receiving a search query from a user;
performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
performing a permissions check upon files found outside the user'"'"'s subindex; and
displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A machine implemented method of processing data comprising:
-
receiving a search query from a user;
performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
examining data in a permissions cache for files found outside the user'"'"'s subindex; and
displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A machine implemented method of processing data comprising:
-
receiving a search query from a user;
performing a search of a storage device, based on the search query, wherein the storage device contains at least a folder belonging to the user;
performing a permissions check upon files found outside the user'"'"'s folder;
displaying files found in the user'"'"'s folder, without checking permissions, and those found outside the user'"'"'s folder for which the user has permission to access. - View Dependent Claims (26, 27, 28)
-
-
29. A machine implemented method of processing data comprising:
-
receiving a user name for a user and a plurality of files within a plurality of folders, wherein the plurality of folders contains at least a folder belonging to the user and a shared folder;
creating a plurality of subindexes, wherein the plurality contains at least a user'"'"'s subindex and a shared subindex;
determining which files are located in the user'"'"'s folder and which files are in the shared folder; and
storing data from files located in the user'"'"'s folder in the user'"'"'s subindex and storing data from files located in the shared folder in the shared subindex. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A machine implemented method of processing data comprising:
-
receiving a file with a changed attribute, wherein the attribute has a former value that is not a current value;
identifying a former subindex corresponding to the former value, wherein the data from the file is currently stored in the former subindex;
removing the file'"'"'s data from the former subindex;
identifying a new subindex corresponding to the attribute'"'"'s current value; and
storing data from the file in the new subindex. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49)
-
-
50. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:
-
receiving a search query from a user;
performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
performing a permissions check upon files found outside the user'"'"'s subindex; and
displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access. - View Dependent Claims (51, 52, 53, 54, 55, 56, 57, 58, 59)
-
-
60. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:
-
receiving a search query from a user;
performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
examining data in a permissions cache for files found outside the user'"'"'s subindex; and
displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access. - View Dependent Claims (61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73)
-
-
74. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:
-
receiving a search query from a user;
performing a search of a storage device, based on the search query, wherein the storage device contains at least a folder belonging to the user;
performing a permissions check upon files found outside the user'"'"'s folder;
displaying files found in the user'"'"'s folder, without checking permissions, and those found outside the user'"'"'s folder for which the user has permission to access. - View Dependent Claims (75, 76, 77)
-
-
78. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:
-
receiving a user name for a user and a plurality of files within a plurality of folders, wherein the plurality of folders contains at least a folder belonging to the user and a shared folder;
creating a plurality of subindexes, wherein the plurality contains at least a user'"'"'s subindex and a shared subindex;
determining which files are located in the user'"'"'s folder and which files are in the shared folder; and
storing data from files located in the user'"'"'s folder in the user'"'"'s subindex and storing data from files located in the shared folder in the shared subindex. - View Dependent Claims (79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89)
-
-
90. A machine readable medium providing instructions which when executed by a data processing system cause the data processing system to perform a method of processing data, the method comprising:
-
receiving a file and an old location, wherein the file'"'"'s location is not the old location;
identifying an old subindex corresponding to the old location, wherein data from the file is currently stored in the old subindex;
removing data from the file from the old subindex;
identifying a new subindex corresponding to the file'"'"'s location; and
storing data from the file in the new subindex. - View Dependent Claims (91, 92, 93, 94, 95, 96, 97, 98)
-
-
99. A data processing system comprising:
-
means for receiving a search query from a user;
means for performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
means for performing a permissions check upon files found outside the user'"'"'s subindex; and
means for displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access.
-
-
100. A data processing system comprising:
-
means for receiving a search query from a user;
means for performing a search of an index, based on the search query, wherein the index contains at least a subindex belonging to the user;
means for examining data in a permissions cache for files found outside the user'"'"'s subindex; and
means for displaying files found in the user'"'"'s subindex, without checking permissions, and those found outside the user'"'"'s subindex for which the user has permission to access.
-
-
101. A data processing system comprising:
-
means for receiving a search query from a user;
means for performing a search of a storage device, based on the search query, wherein the storage device contains at least a folder belonging to the user;
means for performing a permissions check upon files found outside the user'"'"'s folder;
means for displaying files found in the user'"'"'s folder, without checking permissions, and those found outside the user'"'"'s folder for which the user has permission to access.
-
-
102. A data processing system comprising:
-
means for receiving a user name for a user and a plurality of files within a plurality of folders, wherein the plurality of folders contains at least a folder belonging to the user and a shared folder;
means for creating a plurality of subindexes, wherein the plurality contains at least a user'"'"'s subindex and a shared subindex;
means for determining which files are located in the user'"'"'s folder and which files are in the shared folder; and
means for storing data from files located in the user'"'"'s folder in the user'"'"'s subindex and storing data from files located in the shared folder in the shared subindex.
-
-
103. A data processing system comprising:
-
means for receiving a file and an old location, wherein the file'"'"'s location is not the old location;
means for identifying an old subindex corresponding to the old location, wherein data from the file is currently stored in the old subindex;
means for removing data from the file from the old subindex;
means for identifying a new subindex corresponding to the file'"'"'s location; and
means for storing data from the file in the new subindex.
-
Specification