正規表現に基づくセマンティックタイプをTalend Dictionary Serviceで作成し、Talend Data Preparationで認識されたデータ型のリストに追加できます。
Talend Data Preparationでは現在、すべてのデータ型がいずれかの事前定義済みセマンティックタイプに一致するとは限りません。たとえば、現在のところイタリアの社会保障番号(codice fiscale)は認識されません。
仮に、あなたがイタリアの顧客のみを扱っているイタリアの会社に勤務しているとしましょう。この例では、顧客データ(名前、メールアドレス、社会保障番号など)をクリーニングする必要があります。社会保障番号を含むカラムのセマンティックタイプは、デフォルトでtext
に設定されます。これでは不十分であり、このデータのタイプが一致するよう新しいカテゴリーを作成する必要があります。この場合はcodice fiscale
セマンティックタイプです。
この新しいセマンティックタイプをTalend Dictionary Serviceで作成すると、自動的にTalend Data Preparationで使用可能になり、データを適切なタイプに一致させることができます。
手順
-
Talend Data Preparationホームページの左パネルの[Semantic types] (セマンティックタイプ)ビューを開いて、[Add semantic type] (セマンティックタイプの追加)をクリックします。
-
[Name] (名前)フィールドにcodice fiscaleと入力します。
-
[Description] (説明)フィールドにItalian social security numberと入力します。
-
[Type] (タイプ)ドロップダウンリストで[Regular expression] (正規表現)を選択します。
-
[Use for validation] (検証で使用)スイッチを有効なままにしておきます。
正規表現を使用して、ディクショナリーまたは複合型による検証を行う場合、特定のカラムで正しい値や誤った値を定義するためにこれらのタイプが使用されます。この検証プロセスの結果は、データセットの各カラムのクオリティバーで確認できます。
いずれにしても、正規表現またはディクショナリーの値を使ってデータを検索すると、参照値および各カラムのセマンティックタイプを定義するデータとの間の一致率が計算されます。
この例では、スイッチを無効にすると、正規表現はデータの検索のみに使用され、値はいずれも無効と見なされません。
-
[Content] (コンテンツ)ドロップダウンリストで、検証する内容のタイプを選択します。この場合は、[Any character] (任意の文字)です。
このオプションでパフォーマンスが最適化されます。選択したタイプに一致するデータのみが検証されます。正規表現に対して[Alphabetic] (アルファベット)または[Numeric] (数値)の値だけが検証されるように選択することもできますが、イタリアの社会保障番号には両方が含まれているため、[Any character] (任意の文字)を選択する必要があります。
-
[Validation pattern] (検証パターン)フィールドに^[A-Z]\{6\}[0-9]\{2\}[A-Z][0-9]\{2\}[A-Z][0-9]\{3\}[A-Z]$と入力します。
この正規表現は、16文字の英数字コードであるイタリアのcodice fiscaleに一致するように設計されています。Talend Data Preparationでそのパターンに一致するデータは、codice fiscaleとして識別されます。
-
[Save and publish] (保存して公開)をクリックして新しいセマンティックタイプをTalend Dictionary Serviceサーバーに送信し、Talend Data Preparationユーザーが使用できるようにします。
[Save as draft] (下書きとして保存)をクリックすると、セマンティックタイプはTalend Dictionary Serviceに保存されますが、Talend Webアプリケーションにはブロードキャストされません。そのため、セマンティックタイプの公開時期を選ぶことができます。
codice fiscaleタイプは、ステータスが公開済みになっているセマンティックタイプのリストで使用可能になります。
セマンティックタイプの変更は、新しいデータセットをインポートするたびにTalend Data Preparationに即座に反映されます。既存のデータセットの場合、カラムのタイプを手動で変更するか、データセットを再インポートする必要があります。
-
イタリアの社会保障番号を含んだデータセットに戻ります。
-
codice_fiscaleyカラムヘッダーのメニューアイコンをクリックして、を選択します。
カラムタイプは、新たに作成されたカテゴリーと一致します。
タスクの結果
これでデータは、Talend Dictionary Serviceで手動で作成したcodice_fiscale
セマンティックタイプと一致するようになります。今後、イタリアの社会保障番号を含んだ新しいデータセットをインポートすると、適切なタイプと自動的に一致するようになります。