InformaticaのデータカタログサービスCDGCにてAIを使ってデータ品質を可視化してみた（後編）

# はじめに
はじめまして。 [NTTデータ ソリューション事業本部 デジタルサクセスソリューション事業部](https://www.nttdata.com/jp/ja/services/data-and-intelligence/) の nttd-nagano です。

[Informatica（インフォマティカ）](https://www.informatica.com/jp/) のクラウドデータマネージメントプラットフォームとして、「[Intelligent Data Management Cloud](https://www.informatica.com/jp/platform.html)」（※1。以下IDMCと記載）というものがあります。

今回は、その「IDMC」のうち、 **データカタログソリューション「Cloud Data Governance and Catalog」** （※2。以下CDGCと記載）にて、 **AIを使ってデータ品質を可視化してみました** ので、ご報告します。

<details><summary>※1. Intelligent Data Management Cloud</summary>
略称はIDMC。旧称はIICS。クラウドデータマネジメントプラットフォーム。以下IDMCと記載。
</details>

<details><summary>※2. Cloud Data Governance and Catalog</summary>
略称はCDGC。データガバナンスとデータカタログを統合したas-a-Serviceソリューション。以下CDGCと記載。
</details>

![idmc_summary.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/59f389ea-2330-e77a-2cf6-a359f654f0ae.png)

# 前編の内容について
記事が長くなってしまったので、前編/後編に分けて投稿しております。

前編をまだご覧になっていない方は、 **「 [InformaticaのデータカタログサービスCDGCにてAIを使ってデータ品質を可視化してみた（前編）](https://qiita.com/nttd-nagano/items/0706f77a992f0f931764) 」** をご覧ください。

前編では、下記をご説明しております。
* **データ品質とその重要性**
* **データ品質の評価軸にはどんなものがあるか** 
（正確性 / 完全性 / 一貫性 / 適時性 / 一意性 / 有効性）
* **インフォマティカの「CDGC」の概要**
* **CLAIREとは何か**

![cdgc_dq_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/8d6ce8de-e415-4044-bb08-3a956eadf1d3.png)

# CLAIREの自然言語処理によるデータ品質評価ロジックの自動生成

さて、本題です。

**「CDGC」は、データ品質があらかじめ設定した基準を満たしているかを可視化して、ユーザーに提示します。**

下図は、実際の画面です。

![cdgc_dq_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/c953e3ca-fb95-965b-f96a-df0149cb3c5b.png)

[前編](https://qiita.com/nttd-nagano/items/0706f77a992f0f931764) でご説明した評価軸ごとのデータ品質が、画面左側に円グラフとして可視化されている様子が見て取れるかと思います。また、データ品質が、あらかじめ設定しておいた正常とみなすターゲット値（しきい値）を超えているか否かも画面右側に表示されています。

「CDGC」において、このような形式で **データ品質を可視化するためには「 [データ品質ルールテンプレート](https://docs.informatica.com/data-governance-and-quality-cloud/data-governance-and-catalog/current-version/asset-details/understanding-business-assets/data-quality-rule-template.html) 」というアセットを作成する必要があり** 、この「データ品質ルールテンプレート」には **「 [データ品質ルール](https://docs.informatica.com/data-governance-and-quality-cloud/data-quality/current-version/rule-specification-assets.html) 」が必要** になります。

この「データ品質ルール」のロジックを手作業で実装することもできますが、多少の慣れが必要になります。一方で、 [前編](https://qiita.com/nttd-nagano/items/0706f77a992f0f931764) でご紹介した **AIエンジン「CLAIRE」の助けを借りると直感的に実装することができます。**

たとえば、データスチュワードが `CUSTOMER` テーブルの `MAILADDRESS` カラムの「完全性」を可視化するための「データ品質ルール」を作成したいとします。

このとき、データスチュワードは、「CDGC」の「データ品質ルールテンプレート」の作成ウィザードのダイアログに、次のような英文を入力すれば、 **「CLAIRE」が自然言語処理をし、所望の「データ品質ルール」を生成してくれます。** （2023年8月現在、本機能は英文にのみ対応しています）

```
Mail Address must not be null.
```

![cdgc_dq_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/27b6ba25-23ce-b2f4-edbf-deadc035d4fc.png)

他の例も見てみましょう。「有効性」（Validity）の例です。

```
Price is greater than or equal to 0 and less than 1000000.
```
の場合は下図のようになります。（結果が複数表示されるので、期待と合致するものを選択する）

![cdgc_dq_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/6fe9f2d0-f2be-c55e-0153-667a564bdcd8.png)

次も「有効性」（Validity）の例です。

```
Japan Passport is 9 characters long.
```
の場合は下図のようになります。

![cdgc_dq_06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/1b8ed286-b315-de76-0600-35588ade11e7.png)

次も「有効性」（Validity）の例です。

```
Blood Type must be one of these: "A", "B", "O", "AB", "Other".
```
の場合は下図のようになります。

![cdgc_dq_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/1e0a461a-909a-8f73-b311-59755e7002eb.png)

他にどのような英文を「CLAIRE」が解釈できるかは、公式ドキュメント [「Working With Assets」の「NLP texts to consider」に掲載されています。](https://docs.informatica.com/data-governance-and-quality-cloud/data-governance-and-catalog/current-version/working-with-assets/view-data-quality-scores/run-data-quality-rules-on-assets/guidelines-for-entering-rule-descriptions/nlp-texts-to-consider.html)

さて、自動生成された「データ品質ルール」を選択し、他に必要な項目の設定をしたら、「データ品質ルールテンプレート」の作成は完了です。

この **「データ品質分析ルールテンプレート」をビジネス用語経由で対象カラムに割り当て、データ品質機能を動作させる** と、無事、下図のようにデータ品質が可視化されます。

![cdgc_dq_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/c953e3ca-fb95-965b-f96a-df0149cb3c5b.png)

なお、以降、別のカラムに対して、同一のデータ品質分析をしたい場合は、前述のようにして「データ品質分析ルールテンプレート」を紐づけたビジネス用語を、そのカラムに割り当てれば、実行されます。

# 備考

なお、私見ですが、評価軸のうちのいくつか、たとえば、「一意性」（Uniqueness）は、 [データ品質機能](https://docs.informatica.com/data-governance-and-quality-cloud/metadata-command-center/current-version/administration/data-quality.html) ではなく、[データプロファイリング機能](https://docs.informatica.com/data-governance-and-quality-cloud/metadata-command-center/current-version/administration/data-profiling.html) で確認する方がリーズナブルだと考えております。（「値の頻度」で重複があるかを確認できる）

また、「有効性」（Validity）についても、データの法則性が不明であれば、ひとまずデータプロファイリング機能で「推測されたデータ型」や「パターン」を見ることから始めるのがよいかと思います。

![cdgc_dq_08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3031738/8d778129-7007-3368-1eeb-28c1a1c29dc4.png)

# おわりに

以上、「InformaticaのデータカタログサービスCDGCにてAIを使ってデータ品質を可視化してみた」でした。

「CDGC」がどのようなサービスであるかや、その管理作業の補助をしてくれる「CLAIRE」の便利さの一端を感じていただけたのではないでしょうか。

「CDGC」の使い心地については、公式サイトの「 [Exprience Louge](https://success.informatica.com/experience-lounge.html) 」にて、体験していただけます。

また、「IDMC」のサービスのうち、**[データ統合ソリューションCDIは30日間の無料体験ができ](https://www.informatica.com/jp/trials/informatica-cloud.html)** 、自由に処理を実装・実行することもできるので、この機会に試してみてはいかがでしょうか。


## 仲間募集

NTTデータ ソリューション事業本部 では、以下の職種を募集しています。

<details><summary>1. クラウド技術を活用したデータ分析プラットフォームの開発・構築(ITアーキテクト/クラウドエンジニア)</summary>

クラウド／プラットフォーム技術の知見に基づき、DWH、BI、ETL領域におけるソリューション開発を推進します。
https://enterprise-aiiot.nttdata.com/recruitment/career_sp/cloud_engineer

</details>

<details><summary>2. データサイエンス領域（データサイエンティスト／データアナリスト）</summary>

データ活用／情報処理／AI／BI／統計学などの情報科学を活用し、よりデータサイエンスの観点から、データ分析プロジェクトのリーダーとしてお客様のDX／デジタルサクセスを推進します。
https://enterprise-aiiot.nttdata.com/recruitment/career_sp/datascientist

</details>

<details><summary>3.お客様のAI活用の成功を推進するAIサクセスマネージャー</summary>

DataRobotをはじめとしたAIソリューションやサービスを使って、
お客様のAIプロジェクトを成功させ、ビジネス価値を創出するための活動を実施し、
お客様内でのAI活用を拡大、NTTデータが提供するAIソリューションの利用継続を推進していただく人材を募集しています。
https://nttdata-career.jposting.net/u/job.phtml?job_code=804

</details>

<details><summary>4.DX／デジタルサクセスを推進するデータサイエンティスト《管理職/管理職候補》</summary>
データ分析プロジェクトのリーダとして、正確な課題の把握、適切な評価指標の設定、分析計画策定や適切な分析手法や技術の評価・選定といったデータ活用の具現化、高度化を行い分析結果の見える化・お客様の納得感醸成を行うことで、ビジネス成果・価値を出すアクションへとつなげることができるデータサイエンティスト人材を募集しています。

https://nttdata-career.jposting.net/u/job.phtml?job_code=898

</details>

## ソリューション紹介

<details><summary> Trusted Data Foundationについて</summary><div>

～データ資産を分析活用するための環境をオールインワンで提供するソリューション～
https://www.nttdata.com/jp/ja/lineup/tdf/
最新のクラウド技術を採用して弊社が独自に設計したリファレンスアーキテクチャ（Datalake+DWH+AI/BI）を顧客要件に合わせてカスタマイズして提供します。
可視化、機械学習、DeepLearningなどデータ資産を分析活用するための環境がオールインワンで用意されており、これまでとは別次元の量と質のデータを用いてアジリティ高くDX推進を実現できます。

</div></details>


<details><summary> TDFⓇ-AM（Trusted Data Foundation - Analytics Managed Service）について</summary><div>

～データ活用基盤の段階的な拡張支援（Quick Start) と保守運用のマネジメント（Analytics Managed）をご提供することでお客様のDXを成功に導く、データ活用プラットフォームサービス～
https://www.nttdata.com/jp/ja/lineup/tdf_am/
TDFⓇ-AMは、データ活用をQuickに始めることができ、データ活用の成熟度に応じて段階的に環境を拡張します。プラットフォームの保守運用はNTTデータが一括で実施し、お客様は成果創出に専念することが可能です。また、日々最新のテクノロジーをキャッチアップし、常に活用しやすい環境を提供します。なお、ご要望に応じて上流のコンサルティングフェーズからAI/BIなどのデータ活用支援に至るまで、End to Endで課題解決に向けて伴走することも可能です。

</div></details>

<details><summary> NTTデータとInformaticaについて</summary><div>

データ連携や処理方式を専門領域として10年以上取り組んできたプロ集団であるNTTデータは、データマネジメント領域でグローバルでの高い評価を得ているInformatica社とパートナーシップを結び、サービス強化を推進しています。
https://www.nttdata.com/jp/ja/lineup/informatica/

</div></details>

<details><summary>NTTデータとTableauについて </summary><div>

ビジュアル分析プラットフォームのTableauと2014年にパートナー契約を締結し、自社の経営ダッシュボード基盤への採用や独自のコンピテンシーセンターの設置などの取り組みを進めてきました。さらに2019年度にはSalesforceとワンストップでのサービスを提供開始するなど、積極的にビジネスを展開しています。

これまでPartner of the Year, Japanを4年連続で受賞しており、2021年にはアジア太平洋地域で最もビジネスに貢献したパートナーとして表彰されました。
また、2020年度からは、Tableauを活用したデータ活用促進のコンサルティングや導入サービスの他、AI活用やデータマネジメント整備など、お客さまの企業全体のデータ活用民主化を成功させるためのノウハウ・方法論を体系化した「デジタルサクセス」プログラムを提供開始しています。
https://www.nttdata.com/jp/ja/lineup/tableau/

</div></details>

<details><summary>NTTデータとAlteryxについて </summary><div>
Alteryxは、業務ユーザーからIT部門まで誰でも使えるセルフサービス分析プラットフォームです。

Alteryx導入の豊富な実績を持つNTTデータは、最高位にあたるAlteryx Premiumパートナーとしてお客さまをご支援します。

導入時のプロフェッショナル支援など独自メニューを整備し、特定の業種によらない多くのお客さまに、Alteryxを活用したサービスの強化・拡充を提供します。

https://www.nttdata.com/jp/ja/lineup/alteryx/

</div></details>

<details><summary>NTTデータとDataRobotについて </summary><div>
DataRobotは、包括的なAIライフサイクルプラットフォームです。

NTTデータはDataRobot社と戦略的資本業務提携を行い、経験豊富なデータサイエンティストがAI・データ活用を起点にお客様のビジネスにおける価値創出をご支援します。

https://www.nttdata.com/jp/ja/lineup/datarobot/

</div></details>

<details><summary>NTTデータとDatabricksについて </summary><div>
NTTデータでは、Databricks Inc.とソリューションパートナー契約を締結し、クラウド・データプラットフォーム「Databricks」の導入・構築、および活用支援を開始しています。

NTTデータではこれまでも、独自ノウハウに基づき、ビッグデータ・AIなど領域に係る市場競争力のあるさまざまなソリューションパートナーとともにエコシステムを形成し、お客さまのビジネス変革を導いてきました。
Databricksは、これら先端テクノロジーとのエコシステムの形成に強みがあり、NTTデータはこれらを組み合わせることでお客さまに最適なインテグレーションをご提供いたします。

https://www.nttdata.com/jp/ja/lineup/databricks/

</div></details>