让我们通过OpenMetadata查看一下Db2的示例数据库

建立环境

引入OpenMetadata

可以按照公式文档所述进行操作,但在连接到Db2时遇到了“Can’t load plugin: sqlalchemy.dialects:db2.ibm_db”错误。解决方法是在openmetadata_injestion容器中安装了ibm_db_sa模块。

sudo  apt install python3.10-venv
source env/bin/activate
python3 -m venv env
source env/bin/activate
pip3 install --upgrade pip setuptools
pip3 install --upgrade "openmetadata-ingestion[docker]"
metadata docker --help
metadata docker --start

安装ibm_db_sa

docker exec -it openmetadata_ingestion bash
pip3 install ibm_db_sa

安装 Db2

按照DockerHub文档的说明,为了创建示例数据库,添加了SAMPLEDB=true。

docker run -itd --name mydb2 --privileged=true -p 50000:50000 \
  -e LICENSE=accept -e DB2INST1_PASSWORD=<パスワード> -e SAMPLEDB=true -e DBNAME=testdb \
  ibmcom/db2

从OpenMetadata连接到Db2

使用Docker提供的host.docker.internal指代Host and Port的部分。

image.png

摄入的设定

如果连接成功,请添加从Db2中获取数据的Ingestion。添加了元数据Ingestion和Profiler Injestion。

image.png

元数据摄入不需要指定特定参数,但是数据分析摄入无法读取具有LOB列的表,所以排除了EMP_PHOTO和EMP_RESUME的指定。

image.png

确认在OpenMetadata上可以实现的功能。

如果更改了表格,将会记录下更改历史。

在添加了表格列之后,获取元数据会保存历史记录。这样,通过”columns middlename has been added”可以一目了然地知道做了什么样的更改,非常方便易读。尤其是在未进行任何更改时,我不太明白为什么会积累”tableConstraints has been added”的变更记录。

image.png

可以查看表格的值信息。

除了数据类型,还可以根据实际值查看Null%、Unique%、Distinct%等信息,看起来很方便。

image.png

词汇表

不仅可以在表格的列中进行描述,还可以创建与列独立但与之相关联的术语集。可以将与某个术语相关的表格列进行汇总列出。

image.png

其他的意见

    • Data Lineage(データがどこで生まれてどうやって派生していくか)を有向グラフで表示できる

 

    • ER図を表示する機能はなさそう

 

    • ユーザー、チームごとにできる操作を分ける機能(Role, Policy)はあるようだが、どのデータを操作できるかは指定する方法はわからなかった(まだ機能がない?)

 

    • データごとにオーナー、Tier(組織全体にとってクリティカルなデータ、部門に閉じたデータなど)を指定できる。タグ機能も使って個人情報がどれかを指定すると便利そう

 

    メッセージング(Kafkaなど)、ダッシュボード(Metabaseなど)、パイプライン(Airflowなど)のデータを扱うことが可能
广告
将在 10 秒后关闭
bannerAds