NewModel">
今天來介紹一下物理數據模型, 以后經常使用的就是物理數據模型。 物理模型對應了一種具體的數據庫類型。
1、打開 PowerDesigner,然后點擊 File --> New Model然后選擇如下圖所示的物理數據模型
物理數據模型建立的時候,可選擇的數據庫類型較多:
2、創建好主頁面如圖所示,但是右邊的按鈕和概念模型略有差別, 物理模型最常用的三個是 table ( 表) ,view (視圖), reference ( 關系) ,如下圖:
3、建立學生信息表,然后點擊 Columns,如下圖設置,灰常簡單,需要注意的就是 P(primary 主鍵) , F (foreign key 外鍵) , M (mandatory 強制性的,代表不可為空):
設置學號的自增( MYSQL里面的自增是這個 AUTO_INCREMENT),雙擊主鍵列進行設置:
點擊右鍵,選擇“SQL PREVIEW”可以預覽sql:
4、再來新建一個班級信息表:
5、點擊右邊按鈕 Reference這個按鈕 ,因為是 班級對學生是一對多的 ,所以鼠標從學生拉到班級如下圖所示,學生信息表將發生變化, 學生信息表里面增加了一行, 這行是班級表的主鍵作為學生表的外鍵,將班級表和學生表聯系起來。
6、雙擊中間的一條線, 顯示如下圖,修改 name和 code即可
7、為了建立多對多關系,需要建立一個教師信息表,由于物理模型多對多的關系需要一個中間表來連接,如下圖,只設置一個字段,主鍵,自增:
需要注意的是 有箭頭的一方是一,無箭頭的一方是多 ,即一對多的多對一的關系需要搞清楚, 學生也可以有很多老師, 老師也可以有很多學生,所以學生和老師都可以是主體。
8、導出sql語句,點擊 Database 按鈕的 Generate Database 或者按 ctrl+G
在 Options 選項卡里,可以個性化選擇和配置 sql 腳本,如取消外鍵,去除 drop 語句等
在 Preview 選項卡可以預覽將要生成的 sql 腳本。在 Selection中選擇需要導出的表,然后點擊應用和確認即可:
9、點擊確定,就可以在你指定的位置生成sql腳本
在數字化轉型的過程中,業務與開發團隊之間的溝通常常存在障礙,特別是在數據治理等專業領域。數據建模作為連接雙方的橋梁,能夠幫助雙方更好地理解和溝通需求。本文將探討如何利用低代碼技術進行有效的數據建模,以促進業務與開發之間的協作。
在數據需求溝通中,業務與開發之間往往存在“雞同鴨講”,出現無法語言對齊的情況。業務抱怨開發語言太技術,聽不懂;開發也苦于業務表達太含糊,無法轉化為需求。尤其在數據治理等專業性領域,溝通問題成為了業務與開發之間一道無形的壁壘,急需通過某種有效的手段進行打破。而數據建模,恰好成為了數據需求梳理及系統設計的有效手段,能夠幫助業務及開發雙方更好地進行需求理解和溝通。
通過進行數據建模,我們能解決數據之間血緣脈絡,并且清楚影響數據質量的關鍵屬性,最關鍵的是,解決了業務與系統開發人員的統一語言。
數據建模,簡而言之就是明確業務場景以及流程后,抽象實體和之間的關系,確定實體涉及的主從表以及對應的屬性字段,然后進行存儲計算。一般分為概念模型、邏輯模型、物理模型。
當然,目前數據建模的方式不少,有維度建模,范式建模,Data Vault模型、Anchor模型。這里我們不展開一一介紹,重點分享一下基于低代碼技術進行維度建模的方法。(常見的建模工具有PowerDesigner、ER/Studio,當然直接用Visio、Excel也是可以的)
為什么要通過低代碼技術進行數據建模呢?主要還是針對性解決“統一語言”、“高效”的目標。低代碼技術進行數據建模的優勢主要體現在以下幾個方面:
首先,低代碼技術能夠顯著縮短開發周期。傳統的代碼開發方式,需要嚴格遵循算法和數據結構的組合,這種方式如同手動擰螺絲,既費時又費力,且對非專業開發人員而言上手難度極大。相比之下,數據建模對時效性要求極高,無論是增加實體對象還是調整字段屬性,其影響都是深遠的。而低代碼技術則讓這一過程變得如同“搭積木”一般簡單快捷,極大地提升了開發效率。
其次,低代碼開發能夠迅速響應變革場景。隨著企業應用的預期爆炸性增長,潛在場景的數量也數以千計,這些場景都蘊含著為企業創造價值的可能。低代碼開發方式使企業能夠更好地應對這些挑戰,一方面能夠減少代碼開發工作量,同時還能彌補現有技術能力的不足,而無需將每個人都培養成專業開發人員或在內部進行大量的軟件開發投入。
最后,低代碼開發還能夠推動業務部門更深入的參與數據管理、數據治理相關工作。例如數據建模的過程中,我們首先需要清楚業務邏輯,形成概念模型,并基于物理世界進行數字孿生進行邏輯模型。而傳統上這些任務是由IT部門負責的。然而,現在越來越多的企業開始認識到,數據的使用、標準定義需要業務部門深入的參與甚至主導。因此,一個簡單易懂、能夠讓業務部門輕松上手并參與管理的系統顯得尤為重要。低代碼技術正是實現這一目標的理想選擇。
利用低代碼技術進行數據建模實際上主要三個步驟:劃分主題域、創建模型、形成表單。我們可以理解,這三個步驟實際就是概念模型、邏輯模型、物理模型的三個組成部分。
第一步:用戶可以根據業務需要對數據按域劃分。各域之間既相互獨立又可交叉引用;按控制層級將數據域分為組織和全局的屬性,例如一家公司里面涉及到的人力域數據、供應商域數據以及物料域數據等等,這些域相互引用,相互依賴影響,最終形成整體的數據流。
通過將數據按域進行劃分,從內部組織到外部環境、從上游供應商到下游客戶、從組織架構到日常業務等統一納入數據各域管理范疇。有利于理清企業業務脈絡,重構企業核心價值鏈。
從源頭劃清不同數據之間的界限,層次分明地界定多域之間的關系,同時還可以將不同域之間的數據交叉引用,實現數據域之間橫向縱向立體管理。
第二步:創建模型。建立主表、子表和獨立三種類型的模型,支持主表模型和子表模型的嵌套以及主表模型和獨立模型的引用,構建統一的數據屬性管理視圖。
第三步:構建模型相應表單。表單配置中可以提供業務組件庫和多樣的屬性庫,并輔之以視圖、流程、權限等,用戶可以根據業務需要靈活地構建。
可視表單: 表單可視化無代碼定制,多類型組件提供復雜業務場景解決方案,街接數據模型及應用功能及菜單。
表單類型1:數據表單??梢暬韱?,其主要功能是將模型中的屬性字段與前端應用界面進行映射。數據表單是以主表模型作為基礎,可以關聯多個子表模型和多個獨立模型,通過表單組件及其屬性與子表模型和獨立模型建立聯系。
表單類型2:獨立表單。獨立表單是以獨立模型作為基礎,可以關聯多個其他獨立模型,構建符合業務需要的復雜前端管理界面。例如產品類型、行政區劃等參考數據碼表。獨立表單單相較于數據表單,功能上相對簡化,目的在于高效、便捷。
數據建模其實往往很容易被忽略,特別是提倡敏捷開發的背景下。雖然在開始階段,數據建模費時費力,但從長遠來看,對我們的基礎架構是易于升級和維護的。其次是,業務人員與開發人員能夠通過數據建模的過程中,在概念、物理和邏輯層面設計數據庫達成一致意見,有助于識別缺失項和冗余數據。
我們會發現,利用低代碼技術去構建數據模型,方便業務人員與IT人員進行溝通交互,且操作更加便捷,高效。后續再進行一系列錄入功能的開發,菜單的定制是非??旖莸?。當然低代碼技術不能解決業務轉化成數據的過程,針對業務場景和流程,我們需要進一步解析挖掘對應的數據需求。
本文由人人都是產品經理作者【老司機聊數據】,微信公眾號:【老司機聊數據】,原創/授權 發布于人人都是產品經理,未經許可,禁止轉載。
題圖來自Unsplash,基于 CC0 協議。