System and method for efficient file content searching within a file system
First Claim
Patent Images
1. A system, comprising:
- a computer-accessible storage device configured to store file system content, said file system content comprising a plurality of files and a plurality of metadata records associated with said files; and
a host computing device configured to implement an operating system including a file system, wherein said file system comprises data structures configured to store information about said file system content, and wherein said file system further comprises executable routines configured to access and modify said file system content, wherein said executable routines of said file system are configured to store said file system content to said computer-accessible storage device and to manage accesses to file system content stored by said computer-accessible storage device, wherein said accesses are generated by applications distinct from said operating system, and wherein said file system is further configured to;
detect a given search operation generated by a first one of said applications, wherein the given search operation is operable to determine whether or not a given data pattern that is specified by the given search operation occurs within a first one of said files stored on said computer-accessible storage device;
in response to detecting said given search operation, access said computer-accessible storage device to determine whether one or more of said metadata records associated with said first file indicate a result of a previously detected search operation, wherein the previously detected search operation is detected by said file system prior to said given search operation, wherein the previously detected search operation is operable to determine whether or not a particular data pattern that is specified by the previously detected search operation occurs within said first file, and wherein the particular data pattern specified by the previously detected search operation includes the given data pattern specified by the given search operation;
in response to determining that said one or more of said metadata records indicate said result of said previously detected search operation, return a result of said given search operation to said first application dependent upon said result of said previously detected search operation without retrieving the entirety of said first file from said computer-accessible storage device; and
in response to determining that said one or more metadata records associated with said first file do not indicate a result of a previously detected search operation to determine the presence of a data pattern including said given data pattern within said first file, instruct that said first file be searched to determine the presence of said given data pattern within said first file and subsequently store an indication, within one or more of said metadata records associated with said first file, of a result of instructing that said first file be searched.
9 Assignments
0 Petitions
Accused Products
Abstract
A system and method for efficient file content searching within a file system. In one embodiment, the system may include a storage device configured to store data and a file system configured to manage access to the storage device. The file system may be configured to detect a search operation to determine the presence of a given data pattern within a first file stored on the storage device, and to store an indication of the given data pattern and an indication of result data of the search operation in a first record associated with the first file.
62 Citations
22 Claims
-
1. A system, comprising:
-
a computer-accessible storage device configured to store file system content, said file system content comprising a plurality of files and a plurality of metadata records associated with said files; and a host computing device configured to implement an operating system including a file system, wherein said file system comprises data structures configured to store information about said file system content, and wherein said file system further comprises executable routines configured to access and modify said file system content, wherein said executable routines of said file system are configured to store said file system content to said computer-accessible storage device and to manage accesses to file system content stored by said computer-accessible storage device, wherein said accesses are generated by applications distinct from said operating system, and wherein said file system is further configured to; detect a given search operation generated by a first one of said applications, wherein the given search operation is operable to determine whether or not a given data pattern that is specified by the given search operation occurs within a first one of said files stored on said computer-accessible storage device; in response to detecting said given search operation, access said computer-accessible storage device to determine whether one or more of said metadata records associated with said first file indicate a result of a previously detected search operation, wherein the previously detected search operation is detected by said file system prior to said given search operation, wherein the previously detected search operation is operable to determine whether or not a particular data pattern that is specified by the previously detected search operation occurs within said first file, and wherein the particular data pattern specified by the previously detected search operation includes the given data pattern specified by the given search operation; in response to determining that said one or more of said metadata records indicate said result of said previously detected search operation, return a result of said given search operation to said first application dependent upon said result of said previously detected search operation without retrieving the entirety of said first file from said computer-accessible storage device; and in response to determining that said one or more metadata records associated with said first file do not indicate a result of a previously detected search operation to determine the presence of a data pattern including said given data pattern within said first file, instruct that said first file be searched to determine the presence of said given data pattern within said first file and subsequently store an indication, within one or more of said metadata records associated with said first file, of a result of instructing that said first file be searched. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method, comprising:
-
a file system storing file system content to a computer-accessible storage device, said file system content comprising a plurality of files and a plurality of metadata records associated with said files, wherein said file system is implemented by an operating system executing on a host computing device, wherein said file system comprises data structures configured to store information about said file system content, and wherein said file system further comprises executable routines configured to access and modify said file system content; said file system managing accesses to said computer-accessible storage device, wherein said accesses are generated by applications distinct from said operating system; said file system detecting a given search operation generated by a first one of said applications, wherein the given search operation is operable to determine whether or not a given data pattern that is specified by the given search operation occurs within a first one of said files stored on said computer-accessible storage device; in response to detecting said given search operation, said file system accessing said computer-accessible storage device and determining whether one or more of said metadata records associated with said first file indicate a result of a previously detected search operation, wherein the previously detected search operation is detected by said file system prior to said given search operation, wherein the previously detected search operation is operable to determine whether or not a particular data pattern that is specified by the previously detected search operation occurs within said first file, and wherein the particular data pattern specified by the previously detected search operation includes the given data pattern specified by the given search operation; in response to determining that said one or more of said metadata records indicate said result of said previously detected search operation, said file system returning a result of said given search operation to said first application dependent upon said result of said previously detected search operation without retrieving the entirety of said first file from said computer-accessible storage device; and in response to determining that said one or more metadata records associated with said first file do not indicate a result of a previously detected search operation to determine the presence of a data pattern including said given data pattern within said first file, said file system instructing that said first file be searched to determine the presence of said given data pattern within said first file and said file system subsequently storing an indication, within one or more of said metadata records associated with said first file, of a result of said instructing that said first file be searched. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computer-accessible storage medium comprising program instructions, wherein the program instructions are computer-executable to implement:
-
a file system of an operating system storing file system content to a computer-accessible storage device, said file system content comprising a plurality of files and a plurality of metadata records associated with said files, wherein said file system comprises data structures configured to store information about said file system content, and wherein said file system further comprises executable routines configured to access and modify said file system content; said file system managing accesses to said computer-accessible storage device, wherein said accesses are generated by applications distinct from said operating system; said file system detecting a given search operation generated by a first one of said applications to determine the presence of a given data pattern within a first one of said files stored on said computer-accessible storage device; in response to detecting said given search operation, said file system accessing said computer-accessible storage device and determining whether one or more of said metadata records associated with said first file indicate a result of a previously detected search operation, wherein the previously detected search operation is detected by said file system prior to said given search operation, wherein the previously detected search operation is operable to determine whether or not a particular data pattern that is specified by the previously detected search operation occurs within said first file, and wherein the particular data pattern specified by the previously detected search operation includes the given data pattern specified by the given search operation; in response to determining that said one or more of said metadata records indicate said result of said previously detected search operation, said file system returning a result of said given search operation to said first application dependent upon said result of said previously detected search operation without retrieving the entirety of said first file from said computer-accessible storage device; and in response to determining that said one or more metadata records associated with said first file do not indicate a result of a previously detected search operation to determine the presence of a data pattern including said given data pattern within said first file, said file system instructing that said first file be searched to determine the presence of said given data pattern within said first file and said file system subsequently storing an indication, within one or more of said metadata records associated with said first file, of a result of said instructing that said first file be searched. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification