Patent ID: 9081829
Filing Date: 2015-07-14
Classification: G06F,H04L

Abstract:
1. A process comprising: receiving a search query, said search query specifying one or more relevant resources from which time-series performance metric data has been gathered about the state of one or more relevant attributes specified in said search query, said time-series performance metric data comprising a time-series of numerical values for each of said one or more relevant attributes, each of said numerical values measured during a time slice or sampling interval of a day to generate a time-series of performance metric data numerical values measured during contiguous time slices of a day, each said time-series of performance metric data numerical values defining the state over time of one attribute of one of said one or more relevant resources specified in said search query, said time-series of performance metric data numerical values having each been converted to a corresponding time-series of UTF-8 Unicode characters, said search query also specifying search criteria, and further comprising the step of receiving a relevant time interval to apply as a filter against each of said one or more time-series of said Unicode characters encoding said one or more time-series of numerical values of said performance metric data of said one or more relevant attributes specified in said search query such that said search query is applied only against Unicode characters encoding said one or more time-series of numerical values of said performance metric data gathered during said relevant time interval about said one or more relevant attributes specified in said search query of said one or more relevant resources specified in said search query, said search query having been composed using predefined building blocks of a query definition language which includes building blocks to define one or more relevant resources, one or more relevant attributes of said relevant resources and one or more regular expressions, each regular expression defining a search criteria to be applied against Unicode characters encoding performance metric data numerical values measured from a relevant attribute specified in said search query, said building blocks having both syntax and semantics defined in said query definition language which is a form of formal language which can be interpreted using a query processor which can parse said query definition language building blocks and use the information defined in said building blocks to examine Unicode characters encoding performance metric data gathered during said relevant time interval from said relevant resource or resources and said one or more relevant attributes defined in said search query and identify Unicode characters which match said one or more search criteria expressed by said one or more regular expressions, said building blocks providing multiple tools to allow complex searches and pattern analysis to be accomplished without the need for use of a relational database or stored procedures in the SQL language; and accessing and loading into memory from a specially structured conventional non database file system relevant Unicode characters from said relevant time interval from each of said time-series of Unicode characters which encode a time-series of performance metric data numerical values expressing the state over time of a relevant attributes specified in said search criteria of said search query of a relevant resource identified in said search query, and applying each of said one or more search criteria expressed in said search query as a regular expression to a relevant set of said Unicode characters encoding at least part of a time-series of performance metric data numerical values, said relevant set of Unicode characters being the set of Unicode characters which encode at least the part of a time-series of performance metric data numerical values gathered during said relevant time interval and which express the state over time for at least the attribute of the resource identified in said search criteria and for which said search criteria was written, and repeating the step of applying a search criteria expressed in a regular expression in said search query against relevant Unicode characters encoding at least the part of a time-series of performance metric data numerical values gathered during said relevant time interval for the attribute identified in said search criteria of the resource identified in said search query for which said search criteria was written until all said search criteria have been applied so as to locate and return Unicode characters which meet said one or more search criteria expressed in said search query, said specially structured conventional non database file system comprising a top level directory dedicated to storing Unicode characters encoding all performance metric data gathered during a single day and one or more single resource subdirectories each of which is dedicated to storing Unicode characters encoding all performance metric data numerical values gathered from a single resource during said single day in one or more files, each said file having N sections, each section storing Unicode characters organized as a time-series and encoding a time-series of said performance metric data numerical values from one attribute of said resource to which said subdirectory is dedicated, each said time-series of Unicode characters stored in a section comprising M Unicode characters encoding M performance metric data numerical values gathered during M contiguous time-slots of said single day; converting any said returned Unicode characters meeting said one or more search criteria back to the equivalent numerical values of the performance metric data measurements encoded by said returned Unicode characters, and returning at least each said numerical value as performance metric data which meets one of said one or more search criteria along with the position in the time-series of Unicode characters searched using the search criteria which resulted in the match where each said returned Unicode character encoding a returned performance metric data numerical value was found.