US2019354547A1PendingUtilityA1

System for organizing and fast searching of massive amounts of data

70
Assignee: BHAVE AJITPriority: Oct 5, 2011Filed: May 13, 2019Published: Nov 21, 2019
Est. expiryOct 5, 2031(~5.2 yrs left)· nominal 20-yr term from priority
G06F 40/106G06F 40/146G06F 40/126G06F 40/205G06F 16/86G06F 21/552G06F 16/258G06F 16/2455G06F 16/9024G06F 16/2423G06F 16/3331G06F 16/2477H04L 67/025G06F 11/3072G06F 16/148G06F 16/43G06F 16/2453H04L 43/14G06F 16/245G06F 16/284G06F 16/90344G06F 11/3476H04L 69/329G06F 11/3082G06F 16/2452G05B 23/0272G06F 16/3337G06F 16/24522G06F 16/90335G06F 11/3409G06F 16/335H04L 43/12G06F 16/334H04L 12/4625G06F 16/383G06F 16/9535G06F 16/951G06F 16/185H04L 43/022G06F 11/3006G06F 16/248G06F 16/338G06F 16/283G06F 16/2468G06F 16/9032G06F 2216/03G06F 16/31G06F 16/3329G06F 17/2705G06F 17/2217H04L 43/04G06F 16/36H04L 29/08072H04L 29/06H04L 29/06047H04L 29/08099H04L 67/42H04L 67/00
70
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system to collect and store in a special data structure arranged for rapid searching massive amounts of data. Performance metric data is one example. The performance metric data is recorded in time-series measurements, converted into unicode, and arranged into a special data structure having one directory for every day which stores all the metric data collected that day. The performance metric data is collected by one or more probes running on machines about which data is being collected. The performance metric data is compressed prior to transmission to a server over any data path. The data structure at the server where analysis is done has a subdirectory for every resource type. Each subdirectory contains text files of performance metric data values measured for attributes in a group of attributes to which said text file is dedicated. Each attribute has its own section and the performance metric data values are recorded in time series as unicode hex numbers as a comma delimited list. Analysis of the performance metric data is done using regular expressions. For speed, cache memory is used. Performance metric data outside the start time and end time named by the user on a query screen is eliminated before the regular expression is applied.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . An apparatus comprising:
 a memory storing performance metric data of one of more resource types, each resource type having one or more attributes, said performance metric data having been converted to Unicode prior to storage;   a processor programmed with at least an operating system and a search program for searching said memory;   said search program having the capability to receive one or more partial syntaxes, each comprised of a resource type, an attribute and a regular expression giving search conditions; and   said search program capable of receiving two or more user-defined partial syntax expressions, one or more of said partial syntax expression for resource types which are related to the resource type of a first partial syntax, and capable of searching the first partial syntax for results which qualify, and applying said results as the starting point for evaluating said one or more related resource type partial syntaxes for results which qualify, and merging the evaluation results of all the partial syntaxes.   
     
     
         2 . [user defined start time and stop time] The apparatus of  claim 2  wherein said search program is capable of reading one or more time range boxes which contain a user supplied start time and stop time for said search and restricting data accessed from said memory to data gathered between and including said start time and said stop time. 
     
     
         3 . [reverse mapping] The apparatus of  claim 2  wherein said search program is capable of recognizing performance metric data in the form of numbers in said regular expression expressing filter conditions in each partial syntax and converting each said performance metric number to Unicode before carrying out said search. 
     
     
         4 . [template search] The apparatus of  claim 1  where said search program is capable of recognizing identification codes in said regular expression representing prearranged searches which are stored in advance and is capable of generating the proper syntax for an identification code to cause said search program to implement the appropriate prearranged search. 
     
     
         5 . [user defined variables in template search] The apparatus of  claim 4  wherein said search program is capable of recognizing user defined variables for one or more variables in a template search identified by an identification code and substituting said user defined variable(s) into said template search before running said search. 
     
     
         6 . [plain language search] The apparatus of  claim 1  wherein said search program is capable of accepting plain language searches and converting them to the proper syntax for the partial syntaxes before executing said search. 
     
     
         7 . [data in said specially defined file system] The apparatus of  claim 1  wherein said memory stores said Unicode in a file system organized with one top level directory per unit of time where a unit of time is the time over which performance metric data is gathered for one attribute, one performance metric number gathered per one subunit of time, said top level directory storing one or more subdirectories, one per resource type, each subdirectory storing one or more files of Unicode data gathered from said one or more attributes of said resource type to which said subdirectory is devoted, each said file having a one or more sections, each for storing the data from one of the related attributes of said resource in a plurality of time slots, each for storing one Unicode letter and each of which corresponds to the timeslot during which the underlying performance number was gathered. 
     
     
         8 . [metadata for each performance number stored in the file system itself] The apparatus of  claim 7  wherein each item of performance metric data has metadata comprising at least the time of day during which it was gathered, the attribute from which it was gathered, the date on which it was gathered, and wherein the metadata of each performance metric number is stored in the file system itself. 
     
     
         9 . An apparatus comprising:
 a memory storing performance metric data of one of more resource types, each resource type having one or more attributes, said performance metric data having been converted to Unicode prior to storage;   a processor programmed with at least an operating system and a search program for searching said memory;   said search program having the capability to receive one or more partial syntaxes, each comprised of a resource type, an attribute and a regular expression giving search conditions; and   said search program capable of receiving first, second, third, fourth and fifth or more user-defined partial syntax expressions, said second and fourth partial syntax expression for resource types which are related to the resource type of said first partial syntax, and third and fifth partial syntaxes being for resource types which are related to said second and fourth partial syntax, respectively, said search program being capable of searching the first partial syntax for results which qualify, and applying said results as the starting point for evaluating whether said second and fourth partial syntaxes have results which qualify, said search program being capable of using the results which qualify by using said second and fourth partial syntaxes and applying said results as the starting point for evaluating whether said third and fifth partial syntaxes have results which qualify, and merging the qualifying results of all the partial syntaxes.   
     
     
         10 . [user defined start time and stop time] The apparatus of  claim 9  wherein said search program is capable of reading one or more time range boxes which contain a user supplied start time and stop time for said search and restricting data accessed from said memory to data gathered between and including said start time and said stop time. 
     
     
         11 . [reverse mapping] The apparatus of  claim 9  wherein said search program is capable of recognizing performance metric data in the form of numbers in said regular expression expressing filter conditions in each partial syntax and converting each said performance metric number to Unicode before carrying out said search. 
     
     
         12 . [template search] The apparatus of  claim 9  where said search program is capable of recognizing identification codes in said regular expression representing prearranged searches which are stored in advance and is capable of generating the proper syntax for an identification code to cause said search program to implement the appropriate prearranged search. 
     
     
         13 . [user defined variables in template search] The apparatus of  claim 12  wherein said search program is capable of recognizing user defined variables for one or more variables in a template search identified by an identification code and substituting said user defined variable(s) into said template search before running said search. 
     
     
         14 . [plain language search] The apparatus of  claim 9  wherein said search program is capable of accepting plain language searches and converting them to the proper syntax for the partial syntaxes before executing said search. 
     
     
         15 . [data in said specially defined file system] The apparatus of  claim 9  wherein said memory stores said Unicode in a file system organized with one top level directory per unit of time where a unit of time is the time over which performance metric data is gathered for one attribute, one performance metric number gathered per one subunit of time, said top level directory storing one or more subdirectories, one per resource type, each subdirectory storing one or more files of Unicode data gathered from said one or more attributes of said resource type to which said subdirectory is devoted, each said file having a one or more sections, each for storing the data from one of the related attributes of said resource in a plurality of time slots, each for storing one Unicode letter and each of which corresponds to the timeslot during which the underlying performance number was gathered. 
     
     
         16 . [metadata for each performance number stored in the file system itself] The apparatus of  claim 15  wherein each item of performance metric data has metadata comprising at least the time of day during which it was gathered, the attribute from which it was gathered, the date on which it was gathered, and wherein the metadata of each performance metric number is stored in the file system itself. 
     
     
         17 . An apparatus comprising:
 a memory storing performance metric data of one of more resource types, each resource type having one or more attributes, said performance metric data having been converted to Unicode prior to storage;   a processor programmed with at least an operating system and a search program for searching said memory;   said search program having the capability to receive one or more partial syntaxes, each comprised of a resource type, an attribute and a regular expression giving search conditions; and   said search program capable of receiving first, second, third, fourth, fifth, sixth and seventh or more user-defined partial syntax expressions,
 said second partial syntax expression for a resource type which is related to the resource type of said first partial syntax, 
 and third partial syntax being for a resource type which is related to said resource type of second partial syntax, 
 said fourth partial syntax expression being for a resource type which is related to the resource type of said third partial syntax, 
 said fifth partial syntax expression being for a resource which is related to the resource type of said second partial syntax, 
 said sixth partial syntax expression being for a resource type which is related to the resource type of said first partial syntax, 
 said seventh partial syntax expression being for a resource type which is related to the resource type of said sixth partial syntax, 
   said search program being capable of searching the first partial syntax for results which qualify, and applying said results as the starting point for evaluating whether said second and sixth partial syntaxes have results which qualify,   said search program being capable of using the results which qualify by using said sixth partial syntaxes and applying said results as the starting point for evaluating whether said seventh partial syntax have results which qualify,   said search program being capable of using the results which qualify when using said second partial syntax as the starting point for evaluating whether said third and fifth partial syntaxes have results which qualify,   said search program being capable of using the results which qualify when using said third partial syntax as the starting point for evaluating whether said fourth partial syntax has results which qualify,   and merging the qualifying results of evaluation of said:
 first, second, third and fourth partial syntaxes, and 
 first, second and fifth partial syntaxes, and 
 first, sixth and seventh partial syntaxes. 
   
     
     
         18 . [user defined start time and stop time] The apparatus of  claim 17  wherein said search program is capable of reading one or more time range boxes which contain a user supplied start time and stop time for said search and restricting data accessed from said memory to data gathered between and including said start time and said stop time. 
     
     
         19 . [reverse mapping] The apparatus of  claim 17  wherein said search program is capable of recognizing performance metric data in the form of numbers in said regular expression expressing filter conditions in each partial syntax and converting each said performance metric number to Unicode before carrying out said search. 
     
     
         20 . [template search] The apparatus of  claim 17  where said search program is capable of recognizing identification codes in said regular expression representing prearranged searches which are stored in advance and is capable of generating the proper syntax for an identification code to cause said search program to implement the appropriate prearranged search. 
     
     
         21 . [user defined variables in template search] The apparatus of  claim 17  wherein said search program is capable of recognizing user defined variables for one or more variables in a template search identified by an identification code and substituting said user defined variable(s) into said template search before running said search. 
     
     
         22 . [data in said specially defined file system] The apparatus of  claim 17  wherein said memory stores said Unicode in a file system organized with one top level directory per unit of time where a unit of time is the time over which performance metric data is gathered for one attribute, one performance metric number gathered per one subunit of time, said top level directory storing one or more subdirectories, one per resource type, each subdirectory storing one or more files of Unicode data gathered from said one or more attributes of said resource type to which said subdirectory is devoted, each said file having a one or more sections, each for storing the data from one of the related attributes of said resource in a plurality of time slots, each for storing one Unicode letter and each of which corresponds to the timeslot during which the underlying performance number was gathered. 
     
     
         23 . [metadata for each performance number stored in the file system itself] The apparatus of  claim 22  wherein each item of performance metric data has metadata comprising at least the time of day during which it was gathered, the attribute from which it was gathered, the date on which it was gathered, and wherein the metadata of each performance metric number is stored in the file system itself.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.