OpenMetadata にメタデータを集約しテーブルの説明、変更履歴、データ品質や Lineage などをまとめて見られるようにする

datamanagement

OpenMetadata はテーブルのスキーマやパイプラインなど諸々のメタデータを集約するプラットフォーム。

Docker Compose で立ち上げる

$ wget https://github.com/open-metadata/OpenMetadata/releases/download/1.5.7-release/docker-compose.yml
$ docker compose -f docker-compose.yml up --detach
...
[+] Running 10/10
 ✔ Network openmetadata-docker_app_net                        Created                                                                                                                                                                         0.0s 
 ✔ Volume "openmetadata-docker_ingestion-volume-dags"         Created                                                                                                                                                                         0.0s 
 ✔ Volume "openmetadata-docker_ingestion-volume-tmp"          Created                                                                                                                                                                         0.0s 
 ✔ Volume "openmetadata-docker_es-data"                       Created                                                                                                                                                                         0.0s 
 ✔ Volume "openmetadata-docker_ingestion-volume-dag-airflow"  Created                                                                                                                                                                         0.0s 
 ✔ Container openmetadata_elasticsearch                       Healthy                                                                                                                                                                        16.9s 
 ✔ Container openmetadata_mysql                               Healthy                                                                                                                                                                        28.5s 
 ✔ Container execute_migrate_all                              Exited                                                                                                                                                                         27.6s 
 ✔ Container openmetadata_server                              Started                                                                                                                                                                        27.7s 
 ✔ Container openmetadata_ingestion                           Started 

http://localhost:8585 に [email protected] / admin でログインできる。

データソースとの接続

Settings > Services > Databases からデータソースを選択して接続情報を入れる。

テーブルのメタデータを取り込む Metadata Ingestions を作成する。

手動かスケジュールした間隔で実行されるとテーブルが表示されるようになる。

Glue Data Catalog からスキーマを変更して再実行すると、

OpenMetadata に反映されて変更差分も確認できる。

GitHub の Issue のような機能もあって不足している情報をリクエストできる。

フィールドにはタグのほかに共通の理解を促進するための Glossary Term を紐づけることができる。Term は階層によって類似した概念をまとめることができる。

データ品質の確認

Profiler Ingestion を実行するとサンプルデータが表示されるようになる。

テーブルに対してデータ品質のテストを追加することができ、

意図しないデータが含まれていないか確認できる。

Lineage の確認

Airflow と連携などすると、データの起源やどう作られたかの Lineage が表示される。

Docker Compose で Apache Airflow を起動しワークフローを実行する - sambaiz-net