Rapid Searching and Matching of Data to a Dynamic Set of Signatures Facilitating Parallel Processing and Hardware Acceleration

US2016188664A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016188664-A1
Application numberUS-201414584516-A
CountryUS
Kind codeA1
Filing dateDec 29, 2014
Priority dateDec 29, 2014
Publication dateJun 30, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A mechanism is provided in a data processing system for matching data to a dynamic set of signatures. The mechanism creates a state transition, result, and mask (STR&M) table based on a set of signatures. The mechanism executes scanner code in each of a plurality of hardware devices in parallel to form a plurality of matching engines. The mechanism loads the STR&M table into each of the plurality of matching engines. Responsive to receiving a plurality of input records, the mechanism distributes input strings from the plurality of input records among the plurality of matching engines and receiving signature set match results from the plurality of matching engines.

First claim

Opening claim text (preview).

1 - 14 . (canceled) 15 . A computer program product comprising a computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to: create a state transition, result, and mask (STR&M) table based on a set of signatures; execute scanner code in each of a plurality of hardware devices in parallel to form a plurality of matching engines; load the STR&M table into each of the plurality of matching engines; responsive to receiving a plurality of input records, extract input strings from the plurality of input records; and receive signature set match results from the plurality of matching engines. 16 . The computer program product of claim 15 , wherein creating the STR&M table comprises: receiving a signature set specification; parsing and analyzing the signature set specification; generating a Finite State Machine (FSM) table based on a result of the parsing and analyzing of the signature set specification; and converting the FSM table to the STR&M table. 17 . The computer program product of claim 16 , wherein creating the STR&M table further comprises translating the STR&M table to a binary format. 18 . The computer program product of claim 15 , wherein the scanner code in each matching engine receives a given input string, gets an input symbol from the given input string, sets a working result using result and mask columns of the STR&M table, sets a next state based a current state and the input symbol using the STR&M table, and advances input to a next input symbol until an end of the given input string is reached or a NO_MATCH state is reached, wherein the scanner code uses the mask and result column values to determine a matching result without use of branching logic. 19 . The computer program product of claim 15 , wherein responsive to a given matching engine receiving a new STR&M table in binary form, the given matching engine loads the new STR&M table. 20 . An apparatus comprising: a processor; and a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to: create a state transition, result, and mask (STR&M) table based on a set of signatures; execute scanner code in each of a plurality of hardware devices in parallel to form a plurality of matching engines; load the STR&M table into each of the plurality of matching engines; responsive to receiving a plurality of input records, distribute input strings from the plurality of input records among the plurality of matching engines; and receive signature set match results from the plurality of matching engines. 21 . The apparatus of claim 20 , wherein creating the STR&M table comprises: receiving a signature set specification; parsing and analyzing the signature set specification; generating a Finite State Machine (FSM) table based on a result of the parsing and analyzing of the signature set specification; and converting the FSM table to the STR&M table. 22 . The apparatus of claim 21 , wherein creating the STR&M table further comprises translating the STR&M table to a binary format. 23 . The apparatus of claim 20 , wherein the scanner code in each matching engine receives a given input string, gets an input symbol from the given input string, sets a working result using result and mask columns of the STR&M table, sets a next state based on a current state and the input symbol using the STR&M table, and advances input to a next input symbol until an end of the given input string is reached or a NO_MATCH state is reached, wherein the scanner code uses the mask and result column values to determine a matching result without use of branching logic. 24 . The apparatus of claim 20 , wherein responsive to a given matching engine receiving a new STR&M table in binary form, the given matching engine loads the new STR&M table.

Assignees

Inventors

Classifications

  • by using string matching techniques · CPC title

  • G06F16/245Primary

    Query processing · CPC title

  • Data stream processing; Continuous queries · CPC title

  • Tablespace storage structures; Management thereof · CPC title

  • using directory or table look-up (use of a directory or look-up table in file systems G06F16/13) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016188664A1 cover?
A mechanism is provided in a data processing system for matching data to a dynamic set of signatures. The mechanism creates a state transition, result, and mask (STR&M) table based on a set of signatures. The mechanism executes scanner code in each of a plurality of hardware devices in parallel to form a plurality of matching engines. The mechanism loads the STR&M table into each of the plurali…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F16/245. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 30 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).