Using an Express Match Key

Express key matching can be a useful tool for reducing the number of compares performed and thereby improving execution speed in dataflows that use an Interflow Match or Intraflow Match stage. If two records have an exact match on the express key, the candidate is considered a 100% match and no further matching attempts are made. If two records do not match on an express key value, they are compared using the rules-based method. However, a loose express key results in many false positive matches.

  1. Open your dataflow in Enterprise Designer.
  2. Double-click the Match Key Generator stage.
  3. Check the box Generate express match key.
  4. Click Add.
  5. Complete the following fields:
    Table 1. Match Key Generator Options

    Option Name

    Description / Valid Values

    Algorithm

    Specifies the algorithm to use to generate the match key. One of the following:

    Consonant
    Returns specified fields with consonants removed.
    Double Metaphone
    Returns a code based on a phonetic representation of their characters. Double Metaphone is an improved version of the Metaphone algorithm, and attempts to account for the many irregularities found in different languages.
    Koeln
    Indexes names by sound as they are pronounced in German. Allows names with the same pronunciation to be encoded to the same representation so that they can be matched, despite minor differences in spelling. The result is always a sequence of numbers; special characters and white spaces are ignored. This option was developed to respond to limitations of Soundex.
    MD5
    A message digest algorithm that produces a 128-bit hash value. This algorithm is commonly used to check data integrity.
    Metaphone
    Returns a Metaphone coded key of selected fields. Metaphone is an algorithm for coding words using their English pronunciation.
    Metaphone (Spanish)
    Returns a Metaphone coded key of selected fields for the Spanish language. This metaphone algorithm codes words using their Spanish pronunciation.
    Metaphone 3
    Improves upon the Metaphone and Double Metaphone algorithms with more exact consonant and internal vowel settings that allow you to produce words or names more or less closely matched to search terms on a phonetic basis. Metaphone 3 increases the accuracy of phonetic encoding to 98%. This option was developed to respond to limitations of Soundex.
    Nysiis
    Phonetic code algorithm that matches an approximate pronunciation to an exact spelling and indexes words that are pronounced similarly. Part of the New York State Identification and Intelligence System. Say, for example, that you are looking for someone's information in a database of people. You believe that the person's name sounds like "John Smith", but it is in fact spelled "Jon Smyth". If you conducted a search looking for an exact match for "John Smith" no results would be returned. However, if you index the database using the NYSIIS algorithm and search using the NYSIIS algorithm again, the correct match will be returned because both "John Smith" and "Jon Smyth" are indexed as "JAN SNATH" by the algorithm.
    Phonix
    Preprocesses name strings by applying more than 100 transformation rules to single characters or to sequences of several characters. 19 of those rules are applied only if the character(s) are at the beginning of the string, while 12 of the rules are applied only if they are at the middle of the string, and 28 of the rules are applied only if they are at the end of the string. The transformed name string is encoded into a code that is comprised by a starting letter followed by three digits (removing zeros and duplicate numbers). This option was developed to respond to limitations of Soundex; it is more complex and therefore slower than Soundex.
    Soundex
    Returns a Soundex code of selected fields. Soundex produces a fixed-length code based on the English pronunciation of a word.
    Substring
    Returns a specified portion of the selected field.

    Field name

    Specifies the field to which you want to apply the selected algorithm to generate the match key. For example, if you select a field called LastName and you choose the Soundex algorithm, the Soundex algorithm would be applied to the data in the LastName field to produce a match key.

    Start position

    Specifies the starting position within the specified field. Not all algorithms allow you to specify a start position.

    Length

    Specifies the length of characters to include from the starting position. Not all algorithms allow you to specify a length.

    Remove noise characters

    Removes all non-numeric and non-alpha characters such as hyphens, white space, and other special characters from an input field.

    Sort input

    Sorts all characters in an input field or all terms in an input field in alphabetical order.

    Characters
    Sorts the characters values from an input field prior to creating a unique ID.
    Terms
    Sorts each term value from an input field prior to creating a unique ID.
  6. Click OK.
  7. If you want to specify an additional field and/or algorithm to use in generating an express match key, click Add, otherwise click OK.
  8. Double-click the Interflow Match or Intraflow Match stage on the canvas.
  9. Select the option Express match on and choose the field ExpressMatchKey.

    This field contains the express match key produced by Match Key Generator.

  10. Click OK.
  11. Save and run your dataflow.

To determine whether a candidate was matched using an express key, look at the value of the ExpressKeyIdentified field, which is either Y for a match or N for no match. Note that suspect records always have an ExpressKeyIdentified value of N.