數倉建模—建模工具PdMan(CHINER)介紹

數據倉庫系列文章(持續更新)

  1. 數倉架構發展史
  2. 數倉建模方法論
  3. 數倉建模分層理論
  4. 數倉建模—寬表的設計
  5. 數倉建模—指標體系
  6. 數據倉庫之拉鍊表
  7. 數倉—數據集成
  8. 數倉—數據集市
  9. 數倉—商業智能系統
  10. 數倉—埋點設計與管理
  11. 數倉—ID Mapping
  12. 數倉—OneID
  13. 數倉—AARRR海盜模型
  14. 數倉—總線矩陣
  15. 數倉—數據安全
  16. 數倉—數據質量
  17. 數倉—數倉建模和業務建模

工欲善其事,必先利其器,所以開始數倉建模之前我們還是要選擇一個合適的建模工具,江湖上混怎麼能沒有一個響亮的名號和趁手的武器呢,PDMan就是我們要介紹的工具。後面我們還會介紹其他建模工具,你選擇一個合適的就行。

PDMan是一款開源免費的數據庫模型建模工具,支持Windows,Mac,Linux等操作系統,是PowerDesigner之外,更好的免費的替代方案。他具有顏值高,使用簡單的特點。包含數據庫建模,靈活自動的自動生成代碼模板,自動生成文檔等多種開發人員實用的功能。

PDMan已全面升級至CHINER

開始之前我們開始先介紹一下這個工具本身,後面再看怎麼使用它以及它的特性,其實CHINER就是PDMan的升級版本,我們可以先看一下界面

這是PDMan 的項目管理界面,我們看到也是分項目管理的,可以選擇打開已有的項目

項目打開後的界面,其實功能還是比較簡單的,主要就是模型的設計,包含兩塊

  1. 表設計
  2. 關係設計

名稱由來

  1. 第一個(公開發行名稱):PDMan: Physical Data Model Manager(物理模型管理)
  2. 第二個(內部使用名稱):SINOPER: SINO Popular Entity Relation(中國最流行的實體關係圖工具),目前該軟件發行版,底層很多代碼爲該詞前綴。
  3. 第三個(公開發行名稱):CHINER: CHINESE Entity Relation(國產實體關係圖工具),爲方便國內普及,中文名稱爲:元數建模,也作:"CHINER[元數建模]"公開使用。

CHINER 的特點

  1. 體系結構重新設計,結構顛覆,但是對原PDMan做到高度兼容。
  2. 精細的界面佈局及操作優化,更好看,更簡單,更好用。
  3. 增加實用新功能(如導入PowerDesigner等),功能更強大,生態兼容性更好。

功能介紹

因爲CHINER 是PDMan 的升級版本,所以我們這裏直接介紹CHINER

自帶入門參考案例

首頁自帶兩個典型參考案例,方便用戶快速瞭解軟件支持的功能以及特性。

管理對象

數據表及字段

提供簡潔直觀的數據表以及字段管理及操作,左側列表支持拖動排序,數據表更多設置支持增加表備註,擴展屬性列表,例如提供對Hive的支持,如下圖:

多表關聯的視圖

視圖由多個表結合而成,支持多表以及字段的選擇,如下圖:

視圖及來源數據表,如下圖:

可定製的數據類型及數據域

可擴展的數據類型,並且支持多種數據庫方言的適配,如下圖:

這個主要是解決拓展性的,也就是我們可以根據擴展不同的數據庫進來

數據域,用於設置同一類具有特定業務含義的數據類型,其實這個是很重要的,我們在做數倉建模的過程中是需要統一字段命名和字段類型,如下圖:

img

數據標準(字段庫)

標準字段庫用於解決常用字段記錄,方便用戶建立數據表時,能夠從常用字段庫裏直接拖入數據表中。 標準字段庫可以用戶自行添加,也可以從現有數據表中移到標準字段庫中,其實這個是很重要的,我們在做數倉建模的過程中是需要統一字段命名和字段類型

如下圖所示:

img

標準字段庫支持導出JSON文件,也支持從JSON文件中導入,以解決共享交流問題。

數據字典(代碼映射表)

增加了數據字典支持,用於解決對字段元數據更清晰的解析闡述,如下圖:

數據表字段可以直接關聯數據字典,如下圖所示:

項目組織形式(多模塊模式以及不分模塊模式)

簡單項目,不需要分模塊,直接分爲數據表,視圖,關係圖,數據字典即可,複雜項目需要折分爲一個一個獨立的模塊,系統對這兩種形式均給予支持。 簡單模式,如下圖:

分模塊形式,如下圖:

關係圖

其實當前版本的關係圖的可視化相比PDMan 就好看很多了,而且還支持了折線

ER關聯關係圖

數據實體關聯關係圖,該關聯關係圖需要人工手動維護,如下圖所示:

簡單的概念模型圖

支持簡單的概念模型圖,概念模型圖實體只保存在關係圖上,不保持實體對象,如下圖所示:

概念模型圖,主要用於快速勾勒系統的關鍵業務對象關係圖,用於快速整體理解數據模型

同一模塊多張關係圖

同一個模塊,可以支持多張多種形式的關係圖:

畫布設計界面

分組框及以備註框

分組框,用於對數據表或者實體進行分類,能夠更清晰的瞭解數據表的層次結構,如下圖:

文字以及背景顏色設置

備註框,爲普通矩形框,用於對數據表或者業務場景進行解釋說明,如下圖:

代碼模板

不同數據庫方言的DDL

通過代碼模板引擎,實現可擴展的數據庫方言支持,如下圖:

MySQL

ORACLE

SQLServer

擴展屬性支持類似Hive

JavaBean代碼生成

可定製化可編輯的代碼模板引擎

代碼模板引擎基於doT.js構建,如下圖:

提供代碼預覽編輯,以便能夠及時預覽代碼模板的效果,如下圖:

生態對接-導入

數據庫逆向

連接數據庫,逆向解析數據庫,支持數據庫中文註釋的解析。 連接數據庫,如下圖:

解析數據列表清單,如下圖:

解析數據表結果,如下圖:

導入PDMan文件

支持PDMan的導入,支持數據表,關係圖,數據域的高度還原。 導入列表選擇,如下圖:

導入後結果,如下圖:

PDMan原始情況,如下圖:

導入PowerDesigner文件

導入PowerDesigner,支持數據表,數據域的高度還原(不支持關係圖還原),如下圖:

數據表選擇,如下圖:

最終導入後結果,如下圖:

生態對接-導出

導出DDL

導出DDL,用於解決一次性導出指定數據表,針對指定數據庫方言的導出,如下圖:

導出WORD文檔及模板可定製

將當前數據表,關係圖,數據字典導出至WORD文檔,如下圖:

導出結果,如下圖:

img

關係圖導出圖片

實現將當前畫布的關係圖,導出爲PNG圖片。

全局搜索及定位

字段及關鍵字,數據字典等的全局搜索,如下圖:

更多特性

多語言

中文,如下圖:

英文,如下圖:

語言設置,如下圖:

新建表默認初始化字段

表編輯一次性設置多個數據域

總結

  1. PDMan(CHINER) 是一款優秀的國產開源軟件,能滿足我們在建模過程中80%的需求;
  2. PDMan 本身上手簡單,學習成本低;
  3. 下一節我們從頭開始使用PDMan設計一個模型;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章