유사 항목 그룹화 변환Fuzzy Grouping Transformation

유사 항목 그룹화 변환에서는 중복되기 쉬운 데이터 행을 식별하고 데이터 표준화에 사용할 데이터의 중복 행을 선택하여 데이터 정리 태스크를 수행합니다.The Fuzzy Grouping transformation performs data cleaning tasks by identifying rows of data that are likely to be duplicates and selecting a canonical row of data to use in standardizing the data.

참고

성능 및 메모리 제한 사항을 포함하여 유사 항목 그룹화 변환에 대한 자세한 내용은 Fuzzy Lookup and Fuzzy Grouping in SQL Server Integration Services 2005(SQL Server Integration Services 2005에서 유사 항목 조회 및 유사 항목 그룹화) 백서를 참조하세요.For more detailed information about the Fuzzy Grouping transformation, including performance and memory limitations, see the white paper, Fuzzy Lookup and Fuzzy Grouping in SQL Server Integration Services 2005.

유사 항목 그룹화 변환에는 변환 알고리즘이 작업을 수행하는 데 필요한 임시 SQL ServerSQL Server 테이블을 만들기 위해 SQL ServerSQL Server 인스턴스에 대한 연결이 필요합니다.The Fuzzy Grouping transformation requires a connection to an instance of SQL ServerSQL Server to create the temporary SQL ServerSQL Server tables that the transformation algorithm requires to do its work. 연결은 데이터베이스에 테이블을 만드는 권한을 가진 사용자로 확인되어야 합니다.The connection must resolve to a user who has permission to create tables in the database.

변환을 구성하려면 중복을 식별하는 데 사용할 입력 열을 선택하고 각 열에 대해 일치 유형으로 유사 항목 일치 또는 정확한 일치를 선택해야 합니다.To configure the transformation, you must select the input columns to use when identifying duplicates, and you must select the type of match—fuzzy or exact—for each column. 정확한 일치를 사용하면 해당 열에 동일한 값을 가진 행만 그룹화됩니다.An exact match guarantees that only rows that have identical values in that column will be grouped. DT_TEXT, DT_NTEXT 및 DT_IMAGE를 제외한 모든 Integration ServicesIntegration Services 데이터 형식의 열에 정확한 일치를 적용할 수 있습니다.Exact matching can be applied to columns of any Integration ServicesIntegration Services data type except DT_TEXT, DT_NTEXT, and DT_IMAGE. 유사 항목 일치는 비슷한 값을 가진 행을 그룹화합니다.A fuzzy match groups rows that have approximately the same values. 데이터의 근사 일치 방식은 사용자 정의 유사성 점수에 기반합니다.The method for approximate matching of data is based on a user-specified similarity score. DT_WSTR 및 DT_STR 데이터 형식을 가진 열만 유사 항목 일치에서 사용할 수 있습니다.Only columns with the DT_WSTR and DT_STR data types can be used in fuzzy matching. 자세한 내용은 Integration Services Data Types을 참조하세요.For more information, see Integration Services Data Types.

변환 출력에는 모든 입력 열, 표준화된 데이터를 가진 한 개 이상의 열 및 유사성 점수를 가진 열이 포함됩니다.The transformation output includes all input columns, one or more columns with standardized data, and a column that contains the similarity score. 점수는 0과 1 사이의 10진수 값입니다.The score is a decimal value between 0 and 1. 정식 행의 점수는 1이며The canonical row has a score of 1. 유사 항목 그룹 내 다른 행의 점수는 정식 행과 일치하는 정도를 나타냅니다.Other rows in the fuzzy group have scores that indicate how well the row matches the canonical row. 정식 행과 더 비슷하게 일치할수록 점수가 1에 가까워집니다.The closer the score is to 1, the more closely the row matches the canonical row. 유사 항목 그룹에 정식 행과 정확하게 중복되는 행이 포함된 경우 해당 행의 점수는 1입니다.If the fuzzy group includes rows that are exact duplicates of the canonical row, these rows also have a score of 1. 변환에서는 중복 행을 제거하지 않고 정식 행과 비슷한 행을 연결하는 키를 만들어 그룹화합니다.The transformation does not remove duplicate rows; it groups them by creating a key that relates the canonical row to similar rows.

변환에서는 각 입력 열당 다음 추가 열을 포함하여 한 개의 출력 행을 생성합니다.The transformation produces one output row for each input row, with the following additional columns:

  • _key_in열, 각 행을 고유하게 식별합니다._key_in, a column that uniquely identifies each row.

  • _key_out열, 중복 행의 그룹을 식별합니다._key_out, a column that identifies a group of duplicate rows. _key_out 열은 정식 데이터 행에 _key_in 열 값을 가집니다.The _key_out column has the value of the _key_in column in the canonical data row. _key_out 에 동일한 값을 가진 행은 동일한 그룹의 일부입니다.Rows with the same value in _key_out are part of the same group. 그룹의 _key_out값은 정식 데이터 행의 _key_in 값에 해당합니다.The _key_outvalue for a group corresponds to the value of _key_in in the canonical data row.

  • _score, 입력 행 및 정식 행 간의 유사성을 나타내는 0과 1 사이의 값입니다._score, a value between 0 and 1 that indicates the similarity of the input row to the canonical row.

    이것은 기본 열 이름이며 다른 이름을 사용하도록 유사 항목 그룹화 변환을 구성할 수 있습니다.These are the default column names and you can configure the Fuzzy Grouping transformation to use other names. 출력에서는 유사 항목 그룹화에 참여하는 각 열에 유사성 점수를 제공합니다.The output also provides a similarity score for each column that participates in a fuzzy grouping.

    유사 항목 그룹화 변환에는 수행할 그룹화를 사용자 지정하는 두 가지 기능인 토큰 구분 기호 및 유사성 임계값이 포함됩니다.The Fuzzy Grouping transformation includes two features for customizing the grouping it performs: token delimiters and similarity threshold. 변환에서는 데이터를 토큰화하는 기본 구분 기호 집합을 제공하지만 새 구분 기호를 추가하여 데이터 토큰화 정도를 향상시킬 수 있습니다.The transformation provides a default set of delimiters used to tokenize the data, but you can add new delimiters that improve the tokenization of your data.

    유사성 임계값은 변환에서 얼마나 엄격하게 중복을 식별하는지를 지정합니다.The similarity threshold indicates how strictly the transformation identifies duplicates. 유사성 임계값은 구성 요소 및 열 수준에서 설정할 수 있습니다.The similarity thresholds can be set at the component and the column levels. 열 수준 유사성 임계값은 유사 항목 일치를 수행하는 열에서만 사용할 수 있습니다.The column-level similarity threshold is only available to columns that perform a fuzzy match. 유사성 범위는 0에서 1 사이입니다.The similarity range is 0 to 1. 임계값이 1에 가까울수록 서로 유사한 행과 열이 중복된 것으로 간주되기 쉽습니다.The closer to 1 the threshold is, the more similar the rows and columns must be to qualify as duplicates. 구성 요소 및 열 수준에서 MinSimilarity 속성을 설정하여 행 및 열 사이의 유사성 임계값을 지정하세요.You specify the similarity threshold among rows and columns by setting the MinSimilarity property at the component and column levels. 구성 요소 수준에서 지정된 유사성을 만족하려면 모든 행이 모든 열에 걸쳐 구성 요소 수준에서 지정된 유사성 임계값 보다 크거나 같은 유사성을 가져야 합니다.To satisfy the similarity that is specified at the component level, all rows must have a similarity across all columns that is greater than or equal to the similarity threshold that is specified at the component level.

    유사 항목 그룹화 변환에서는 유사성 내부 측정값을 계산하고 MinSimilarity에 지정된 값보다 유사도가 떨어지는 행을 그룹화에서 제외합니다.The Fuzzy Grouping transformation calculates internal measures of similarity, and rows that are less similar than the value specified in MinSimilarity are not grouped.

    다른 최소 유사성 임계값을 사용하고 유사 항목 그룹화 변환을 여러 번 적용하여 데이터에 사용 중인 유사성 임계값을 확인할 수 있습니다.To identify a similarity threshold that works for your data, you may have to apply the Fuzzy Grouping transformation several times using different minimum similarity thresholds. 변환 출력의 점수 열은 런타임에 그룹 내 각 행에 대한 유사성 점수를 포함합니다.At run time, the score columns in transformation output contain the similarity scores for each row in a group. 사용자의 데이터에 적절한 유사성 임계값을 알아내는 데 이 값을 사용할 수 있습니다.You can use these values to identify the similarity threshold that is appropriate for your data. 유사성을 높이려면 점수 열의 값 보다 큰 값으로 MinSimilarity을 설정해야 합니다.If you want to increase similarity, you should set MinSimilarity to a value larger than the value in the score columns.

    유사 항목 그룹화 변환 입력에 열 속성을 설정하여 변환에서 수행하는 그룹화를 사용자 지정할 수 있습니다.You can customize the grouping that the transformation performs by setting the properties of the columns in the Fuzzy Grouping transformation input. 예를 들어 FuzzyComparisonFlags 속성은 변환에서 열에 문자열 데이터를 비교하는 방법을 지정하며 ExactFuzzy 속성은 변환에서 유사 항목 일치를 수행하는지 또는 정확한 일치를 수행하는지를 지정합니다.For example, the FuzzyComparisonFlags property specifies how the transformation compares the string data in a column, and the ExactFuzzy property specifies whether the transformation performs a fuzzy match or an exact match.

    유사 항목 그룹화 변환에서 사용하는 메모리 양은 MaxMemoryUsage 사용자 지정 속성을 설정하여 구성할 수 있습니다.The amount of memory that the Fuzzy Grouping transformation uses can be configured by setting the MaxMemoryUsage custom property. 크기(MB)를 지정하거나 값 0을 사용하여 변환에서 요구 사항 및 사용 가능한 실제 메모리를 기반으로 메모리를 동적으로 사용하도록 할 수 있습니다.You can specify the number of megabytes (MB) or use the value 0 to allow the transformation to use a dynamic amount of memory based on its needs and the physical memory available. MaxMemoryUsage 사용자 지정 속성은 패키지 로드 시 속성 식을 사용하여 업데이트할 수 있습니다.The MaxMemoryUsage custom property can be updated by a property expression when the package is loaded. 자세한 내용은 Integration Services(SSIS) 식, 패키지에서 속성 식 사용변환 사용자 지정 속성을 참조하세요.For more information, see Integration Services (SSIS) Expressions, Use Property Expressions in Packages, and Transformation Custom Properties.

    이 변환은 하나의 입력과 하나의 출력을 가지며This transformation has one input and one output. 오류 출력은 지원하지 않습니다.It does not support an error output.

행 비교Row Comparison

유사 항목 그룹화 변환을 구성하는 경우 변환에서 변환 입력 내의 행을 비교하는 데 사용할 비교 알고리즘을 지정할 수 있습니다.When you configure the Fuzzy Grouping transformation, you can specify the comparison algorithm that the transformation uses to compare rows in the transformation input. Exhaustive 속성을 true로 설정하면 변환에서는 입력의 모든 각 행을 입력의 다른 행과 비교합니다.If you set the Exhaustive property to true, the transformation compares every row in the input to every other row in the input. 이 비교 알고리즘을 사용하면 더 정확한 결과를 얻을 수 있지만 입력 행의 수가 많으면 변환 성능이 느려집니다.This comparison algorithm may produce more accurate results, but it is likely to make the transformation perform more slowly unless the number of rows in the input is small. 성능 문제를 방지하려면 패키지 개발 시에만 Exhaustive 속성을 true 로 설정하는 것이 좋습니다.To avoid performance issues, it is advisable to set the Exhaustive property to true only during package development.

임시 테이블 및 인덱스Temporary Tables and Indexes

유사 항목 그룹화 변환에서는 런타임에 변환에서 연결하는 SQL ServerSQL Server 데이터베이스에 테이블 및 인덱스와 같은 크기가 큰 임시 개체를 만듭니다.At run time, the Fuzzy Grouping transformation creates temporary objects such as tables and indexes, potentially of significant size, in the SQL ServerSQL Server database that the transformation connects to. 테이블 및 인덱스의 크기는 변환 입력 내 행의 수 및 유사 항목 그룹화 변환에서 만든 토큰의 수에 비례합니다.The size of the tables and indexes are proportional to the number of rows in the transformation input and the number of tokens created by the Fuzzy Grouping transformation.

변환은 또한 임시 테이블을 쿼리합니다.The transformation also queries the temporary tables. 따라서 프로덕션 서버에 사용 가능한 디스크 공간이 제한되는 경우 프로덕션 SQL ServerSQL Server가 아닌 인스턴스로 유사 항목 그룹화 변환을 연결해야 합니다.You should therefore consider connecting the Fuzzy Grouping transformation to a non-production instance of SQL ServerSQL Server, especially if the production server has limited disk space available.

변환에서 사용하는 테이블 및 인덱스가 로컬 컴퓨터에 있는 경우 변환의 성능이 향상될 수 있습니다.The performance of this transformation may improve if the tables and indexes it uses are located on the local computer.

유사 항목 그룹화 변환 구성Configuration of the Fuzzy Grouping Transformation

SSISSSIS 디자이너를 사용하거나 프로그래밍 방식으로 속성을 설정할 수 있습니다.You can set properties through SSISSSIS Designer or programmatically.

유사 항목 그룹화 변환 편집기 대화 상자에서 설정할 수 있는 속성에 대한 자세한 내용을 보려면 다음 항목 중 하나를 클릭하십시오.For more information about the properties that you can set in the Fuzzy Grouping Transformation Editor dialog box, click one of the following topics:

이 태스크의 속성 설정 방법에 대한 자세한 내용을 보려면 다음 항목 중 하나를 클릭하십시오.For details about how to set properties of this task, click one of the following topics:

관련 항목:See Also

유사 항목 조회 변환 Fuzzy Lookup Transformation
Integration Services 변환Integration Services Transformations