企業主數據的管理和實施
前言
企業主數據是用來描述企業核心業務實體的數據,比如客戶、合作伙伴、員工、產品、物料單、賬戶等;它是具有高業務價值的、可以在企業內跨越各個業務部門被重復使用的數據,并且存在于多個異構的應用系統中。本文將針對主數據管理的概念以及主數據管理解決方案的實施等方面跟大家作一個探討。
主數據和主數據管理的概念
企業主數據可以包括很多方面,除了常見的客戶主數據之外,不同行業的客戶還可能擁有其他各種類型的主數據,例如:對于電信行業客戶而言,電信運營商提供的各種服務可以形成其產品主數據;對于航空業客戶而言,航線、航班是其企業主數據的一種。對于某一個企業的不同業務部門,其主數據也不同,例如市場銷售部門關心客戶信息,產品研發部門關心產品編號、產品分類等產品信息,人事部門關心員工機構,部門層次關系等信息。
數據管理的范疇和主數據管理的概念
如圖所示,企業數據管理的內容及范疇通常包括交易數據、主數據以及元數據。
交易數據: 用于紀錄業務事件,如客戶的訂單,投訴記錄,客服申請等,它往往用于描述在某一個時間點上業務系統發生的行為。
主數據:主數據則定義企業核心業務對象,如客戶、產品、地址等,與交易流水信息不同,主數據一旦被記錄到數據庫中,需要經常對其進行維護,從而確保其時效性和準確性;主數據還包括關系數據,用以描述主數據之間的關系,如客戶與產品的關系、產品與地域的關系、客戶與客戶的關系、產品與產品的關系等。
元數據: 即關于數據的數據,用以描述數據類型、數據定義、約束、數據關系、數據所處的系統等信息。
主數據管理是指一整套的用于生成和維護企業主數據的規范、技術和方案,以保證主數據的完整性、一致性和準確性。主數據管理的典型應用有 Customer Data Integration —客戶數據管理和 Product Information Integraiton —產品數據管理。
圖 2. 主數據管理的信息流
一般來說,主數據管理系統從 IT 建設的角度而言都會是一個相對復雜的系統,它往往會和企業數據倉庫 / 決策支持系統以及企業內的各個業務系統發生關系,技術實現上也會涉及到 ETL、EAI、EII 等多個方面,如圖 2 所示,一個典型的主數據管理的信息流為:
- 某個業務系統觸發對企業主數據的改動;
- 主數據管理系統將整合之后完整、準確的主數據分發給所有有關的應用系統;
- 主數據管理系統為決策支持和數據倉庫系統提供準確的數據源。
因此對于主數據管理系統的建設,要從建設初期就考慮整體的平臺框架和技術實現。
以客戶主數據為例,常見的主數據域包括:
Party:參與方
參與方包含的范圍是所有與企業發生了或者發生過正式業務關系的任何合法的實體,比如填寫了投保單的參與方。 Party 是分類別的,可以是個人、機構和團體。對于 Party 來說,因為開展業務的需要,可能要對他們進行分級、分類,比如 VIP,黑名單等。個人包括個人基本屬性、個人名稱、職業、性別、教育等自然屬性;機構是指在法律上有登記的組織實體,可以分為政府機構、商業機構、非盈利機構等類別;團體可以有多種形態,比如他們可以是家庭、興趣小組、某個大機構中的一部分,或者通過某種數據分析技術得出的客戶細分群體。
Party Role:參與方在業務中扮演的角色
例如,對于保險行業而言,可以有:投保人,被保人,受益人,擔保人,報案人,核保人,查勘員,核賠人等。
Relationship:Party 與 Party 之間的關系
例如可以是:夫妻關系、父子關系、母女關系、兄弟姐妹關系、總 ( 母 ) 公司分 ( 子 ) 公司關系、企業事業單位隸屬、上下級關系等。
Account:帳戶是客戶使用企業服務的付費實體。
Location:
Location 記錄的是每個 Party 可能擁有的所有聯系地址,地址的類別包括郵寄地址、email 地址、電信聯絡地址等。
Contract:Party 與企業之間的契約。
主數據有幾個鮮明的特點,其中包括:它是準確的、集成的,其次它是跨業務部門的,再有就是它是在各個業務部門被重復使用的。
主數據管理的意義
圖 3. 主數據管理的要素
如圖 3 所示:集成、共享、數據質量、數據治理是主數據管理的四大要素,主數據管理要做的就是從企業的多個業務系統中整合最核心的、最需要共享的數據(主數據),集中進行數據的清洗和豐富,并且以服務的方式把統一的、完整的、準確的、具有權威性的主數據分發給全企業范圍內需要使用這些數據的操作型應用和分析型應用,包括各個業務系統、業務流程和決策支持系統等。
主數據管理使得企業能夠集中化管理數據,在分散的系統間保證主數據的一致性,改進數據合規性、快速部署新應用、充分了解客戶、加速推出新產品的速度。從 IT 建設的角度,主數據管理可以增強 IT 結構的靈活性,構建覆蓋整個企業范圍內的數據管理基礎和相應規范,并且更靈活地適應企業業務需求的變化。
以客戶主數據為例,客戶主數據是目前企業級客戶普遍面臨的一個問題,在大多數企業中,客戶信息通常分散于 CRM 等各個業務系統中,而每個業務系統中都只有客戶信息的片斷,即不完整的客戶信息,但卻缺乏企業級的完整、統一的單一客戶視圖,結果導致企業不能完全了解客戶,無法協調統一的市場行為,導致客戶滿意度下降,市場份額減少。
因此,建立客戶主數據系統的目的在于:
整合并存儲所有業務系統和渠道的客戶及潛在客戶的信息:一方面從相關系統中抽取客戶信息,并完成客戶信息的清洗和整合工作,建立企業級的客戶統一視圖;另一方面,客戶主數據管理系統將形成的統一客戶信息以廣播的形式同步到其他各個系統,從而確保客戶信息的一致;
為相關的應用系統提供聯機交易支持,提供客戶信息的唯一訪問入口點,為所有應用系統提供及時和全面的客戶信息;服務于 OCRM 系統,充分利用數據的價值,在所有客戶接觸點上提供更多具有附加價值的服務;
實現 SOA 的體系結構:建立客戶主數據系統之前,數據被鎖定在每一個應用系統和流程中,建立主數據管理系統之后,數據從應用系統中被釋放出來,并且被處理成為一組可重用的服務,被各個應用系統調用。
主數據管理系統與數據倉庫系統的關系
主數據管理系統與數據倉庫系統是相輔相成的兩個系統,但二者絕不是重復的,也不是互斥的。它們有很多共同之處:
- 首先二者對企業都具有相同的價值,可以減少數據冗余和不一致性、提升對數據的洞察力,二者都是跨部門的集中式系統;
- 其次二者都依賴很多相同的技術手段,都會涉及到 ETL 技術、都需要元數據管理、都強調數據質量;
- 第三就是二者建設手段類似,都需要數據治理的規范作為指導、都需要不同系統、不同部門的協作、需要統一的安全策略。
但是,主數據管理系統和數據倉庫 / 決策支持系統二者之間也存在很多不同:
處理類型不同:主數據管理 (MDM) 系統是偏交易型的系統,它為各個業務系統提供聯機交易服務,系統的服務對象是呼叫中心、B2C、CRM 等業務系統;而數據倉庫是屬于分析型的系統,面向的是分析型的應用,是在大量歷史交易數據的基礎上進行多維分析,系統的使用對象是各層領導和業務分析、市場銷售預測人員等;
實時性不同:與傳統的數據倉庫方案的批量 ETL 方式不同,主數據管理系統在數據初始加載階段要使用 ETL,但在后續運行中要大量依賴實時整合的方式來進行主數據的集成和同步;
數據量不同:數據倉庫存儲的是大量的歷史數據和各個維度的匯總數據,可能會是海量的,而 MDM 存儲的僅僅是客戶和產品等信息。
雖然主數據管理系統和數據倉庫系統異同共存,但是二者卻有著緊密的聯系,并且可以互為促進、互為補充。舉例而言,數據倉庫系統的分析結果可以作為衍生數據輸入到 MDM 系統,從而使 MDM 系統能夠更好地為操作型 CRM 系統服務。
以航空公司為例,客戶的主數據模型大致可以分為三部分:
首先包括客戶基本信息和偏好信息。
客戶基本信息:
- 個人及公司信息
- 消費者市場狀況
- 常旅客會員卡號,狀態,及累計里程等
- 客戶間關系 ( 個體 - 個體,個體 - 公司 )
- 聯系地址,包括電話,電子郵件等
客戶偏好信息:
- 餐食偏好
- 是否吸煙
- 座位偏好
- 機型偏好
- 公務艙位偏好
- 旅行艙位偏好
- 休息室服務偏好
除了這兩部分之外,我們還可以從數據倉庫系統中提取相關的信息,作為客戶主數據的衍生信息部分,從而更好地、全方位地描述客戶特征,這些可以包括:
- 本月飛行里程
- 年度飛行里程(最近 12 個月內)
- 提前預訂傾向
- 習慣預訂模式
- 使用自主服務傾向
- 上次預訂使用的信用卡號
- 累計 / 本月轉簽 / 取消航班次數
- 轉簽航班傾向
- 取消航班傾向
- No Show 傾向等。
主數據管理系統和 ODS 的關系
在某些情況下,主數據管理系統和 ODS 系統可能容易被混淆,的確,從實時上來看,主數據管理系統和 ODS 系統存儲的都是實時數據,但是二者存儲的數據內容是全然不同的,主數據管理系統中不存儲交易數據,比如銀行客戶的交易流水信息是不應該放在主數據管理系統中進行管理的,這與 MDM 與 ODS 的一個很大區別。舉一個航空公司的例子,比如某個客戶在電子商務網站上定了一張機票,產生一個訂單,然后他又通過呼叫中心要求改簽,這個場景中,兩個系統之間要實現客戶信息和訂單信息的共享,其中客戶信息共享通過 MDM 系統來實現,而訂單信息則需要采用 ODS 或其它手段進行共享,我們是不推薦把此類信息交由 MDM 系統來管理的。
主數據管理解決方案介紹
目前業界比較常見的主數據管理解決方案主要可以分為三類:
- ***是依托專業套裝軟件來實現主數據管理,這類方案是作為套裝軟件的一部分,主要是為套裝軟件的其它模塊提供服務的,因此,通常功能都缺乏完善性。
- 還有一類是側重于分析型應用的主數據管理,這類方案在數據實時同步以及面向交易型應用時通常缺乏整體方案的完整性。
- 再有一類就是專注于主數據管理的中立的、完整的解決方案,這一類應用獨立于套裝軟件,不僅具有整體架構的完整性和先進性,從功能上講往往也最為完善,除了具有比較完整的數據模型 (Data Model) 之外,還會提供廣泛的集成性,具備先進的機制實現數據同步,并且可以對外提供多種預置的主數據服務被外部交易系統調用,從而使系統具有很強的實時操作性,同時還強調主數據管理、主數據質量控制以及主數據維護的手段和規范性。
企業主數據管理系統邏輯架構
一個完整的主數據管理解決方案的邏輯架構應如下圖所示:
圖 4. 主數據管理系統邏輯架構
在一個完整的主數據管理解決方案中,除了主數據管理的核心服務組件之外通常還會涉及到企業元數據管理、企業信息集成、ETL、數據分析和數據倉庫以及 EAI/ESB 等其他各種技術和服務組件。
其中主數據管理服務又包括如下一些主要的服務組件:
Interface Services:為企業中需要主數據的所有業務系統提供各種服務接口,通過實時的、批量的接口可以讀取或者修改主數據,這些接口包括 Batch, Web Services, XML Interface, Messaging Interface, Publish/Subscribe, Import/Export Services, Data Standardization Interface, Directory Integration 等。除了這些標準的技術接口之外 , 對于某些專有系統還提供適配器 (Adapter) 接口 , 通過適配器接口可以和一些特有的系統做接口,例如企業中的傳統 (Legacy) 應用系統或者 SAP 等打包應用。
Lifecycle Management Services: 履行針對主數據的 CRUD 操作,執行對主數據存儲庫中的數據進行更新、存取和管理時的業務邏輯,除此之外,它還負責維護主數據的衍生信息,例如客戶之間的關系、客戶的偏好、客戶在各種客戶服務渠道上的行為軌跡等。 Lifecycle Management Services 貫穿整個主數據管理的生命周期,它利用 Data Quality Management Services 來確保數據質量、利用 Master Data Event Management Services 來捕獲各種主數據變化等相關的事件,以及利用 Hierarchy and Relationship Management Services 用來維護數據實體之間的關系和層次。
Data Quality Management Services:確保主數據的質量和標準化,這在主數據管理解決方案中一個非常重要的組件,在我們從各個業務系統獲取數據之后,要對數據進行清洗和驗證,例如對于地址而言,要彌補地址的缺失、地市的缺失、郵編的缺失、進行地址的標準化等。對于其他數據要進行非空檢查、外鍵檢查、數據過濾等。然后要對數據進行匹配 / 重復識別、自動進行基于規則的合并 / 去重、交叉驗證等,并且還要遵從企業的數據管控規范和流程。它可以是 Master Data Management Services 的一個內部組件,也可以調用整個企業的 Information Integrity Services 來實現。
Authoring Services:依據數據管控流程,定義和擴展企業的主數據模型。
Hierarchy Relationship and Management Services:定義數據實體的層次 (Hierarchy), 分組 (Grouping), 關系 (Relationship), 版本 (Version) 等。
Master Data Event Management Services:捕獲事件并且觸發相應的操作,包括事件發現、事件管理和通知功能,它在主數據管理系統和業務系統之間進行數據同步時起到至關重要的作用。
Base Services:提供通用服務,包括安全控制、錯誤處理、交易日志、事件日志等功能。
Master Data Repository:主數據存儲庫,包括 Metadata, Master Data, History Data, Reference Data 等。
下面我們介紹兩個這些邏輯組件之間的協作場景:
圖 5. 場景 1-- 初始數據加載
場景 1:初始數據加載
- Step1:源數據從外部業務系統及 EDW 系統中通過批處理方式拷貝到磁帶;
- Step2:數據被加載到 Staging DB,進行數據質量分析;
- Step3:Data Quality Management Services 對數據進行清洗、匹配、標準化等;
- Step4:ETL Transform and Load services 對合格數據進行轉換并準備好加載數據;
- Step5:Master Data Interface Services 接收批處理更新請求,調用 Lifecycle Management Update Service 進行數據的批量更新;
- Step6:Lifecycle Management Update Service 調用 Hierarchy & Relationship Management Services 和 Base Services 更新主數據庫。
圖 6. 場景 2-- 主數據庫更新,然后同步到各業務系統
場景2:主數據庫更新,然后同步到各業務系統
- Step1:某業務系統發起一個創建主數據的交易,該業務系統將交易數據以消息的形式發送到消息隊列;
- Step2:MDM Interface Services 捕獲該消息,進行消息解析,并調用 Security and Privacy Services 進行權限驗證;
- Step3:MDM Interface Services 調用 Lifecycle Mgmt. Update Service ;
- Step4:Lifecycle Mgmt. Update Service 再調用 Data Quality Management Services 進行數據的清洗和標準化;
- Step5:Update Service 調用 Search Services 發現該主數據已經存在,確認這是對已有主數據的更新操作;
- Step6:Update Service 通過調用外部系統對數據進行擴充;
- Step7:Update Service 在更新主數據庫之前調用 Event Management Services ;
- Step8:Event Management Services 確認是否需要涉及數據管控方面的處理;
- Step9:Update Service 調用 Hierarchy & Relationship Management Services 并且更新主數據庫;
- Step10:Audit Logging Services 紀錄相應交易日志和歷史數據;
- Step11:MDM Lifecycle Management Service 調用 MDM Interface Services 返回更新處理請求;
- Step12:源業務系統接收到處理請求之后,利用 MDM 系統發回來的數據對本地的應用系統數據庫進行更新操作;
- Step13:其他所有需要主動被更新的相關的業務系統都會接收到更新后的***數據。
客戶主數據系統實施方法論
客戶主數據項目的本質是一個系統間針對客戶信息的整合項目,根據以往的經驗,大致分成基礎實施、雙向同步、多渠道訪問、全企業采用等 4 個階段,如下圖所示:
圖 10. 主數據系統實施步驟
1.基礎實施階段:
- 安裝 MDM,實現 ECIF 的基礎架構
- 完成主數據建模
- MDM 初始數據加載:根據期望的實施方法和策略,將數據從各個業務系統中抽取出來,經過清洗、轉換、標準化之后加載到主數據存儲庫中,在這個階段主要用到的是 ETL 的相關技術和工具。
- 使 MDM 的 700 多個業務服務能被其他系統實時連接和使用。
基礎實施階段為客戶數據集成搭建了基礎框架, 為企業提供了轉向以客戶為中心的能力和價值。后續的階段主要是在此基礎上推動全企業更多的應用和系統來使用這些價值,帶來更多的業務增長。所以***階段的基礎實施對企業來說是至關重要的,也是客戶主數據管理項目能否帶來業務價值的關鍵。
2.雙向同步階段:
- 通過實時或批處理方式,幫助逐步實現業務系統和 MDM 系統的雙向數據更新和同步。這個階段階段主要用到的是 EAI/SOA 的相關技術和工具
- 多渠道訪問階段
- 整合 WCC 與已有的渠道或新的前臺系統,實現多渠道訪問。
- 添加新的客戶數據屬性和客戶為中心的業務流程。
3.全企業采用階段:
- MDM 成為企業唯一的記錄客戶信息的來源,促進對客戶的洞察力和了解。
- 促進全企業整合,支持端到端的業務流程。
小結
本文首先系統地介紹了主數據管理的概念,主數據管理系統和數據倉庫、ODS(操作型數據存儲)之間的區別,并且結合航空公司的需求,給出了航空業客戶主數據的簡單模型;在理解了主數據管理的基本概念之后,給出了主數據管理解決方案的邏輯框架;***跟大家分享了主數據管理項目實施的路徑和方法。