之前做數據梳理的時候對主數據進行了一個總結,雖然項目沒有很好的開展,不過對我來說也是有很多收穫的,這裏把之前用到的一些文檔總結如下。
術語和定義
主數據
早期以 ERP 爲代表的製造業集成應用系統的發展過程中,產生了信息孤島和數據處理危機問題。爲了解決這些問題,主數據這個概念隨之誕生。
目前,對主數據的定義沒有統一,一些 MDM 產品提供商和學者提出了各自對主數據的定義,如下:
David Loshin 在其主數據管理的著作中對主數據的定義是:主數據是企業中跨應用的核心業務實體,包括元數據、定義、屬性、關係、角色和類別等。
維基百科對主數據的定義是:主數據是在企業中可以共享的、一致的業務實體,是跨系統、跨應用和跨流程的基礎數據的唯一來源,包括業務數據、非結構數據、分析型數據、組織架構數據及元數據。
Gartner 公司的定義是:主數據是描述企業核心實體的、跨業務流程的、統一的數據標識和屬性。
ISO 標準中的定義:主數據是指事務處理需參考的獨立的基礎數據實體。
著名的軟件供應商 oracle 的定義:多個業務系統中最核心的、需要共享的數據,它是支持企業業務和分析的關鍵基礎數據;IBM 對主數據的定義是:存在於多個異構系統中的跨核心業務實體的、具有高價值的數據。儘管不同角色對主數據定義的表達形式有所差異,但都反映了主數據的基本特徵。總的來說,主數據的定義是:
主數據(Master Data)是指具有高業務價值的、可以在企業內跨越各個業務部門被重複使用的數據,具有相對靜態的特點,是單一的、準確的、權威的數據來源。
基礎主數據
基礎主數據就是在品名規範、收集模板、擴充視圖填寫過程中需要提前維護的字段,類似於元數據,是其他主數據的基礎數據。
基礎主數據分爲兩大類:一類是自定義的基礎數據,這部分數據在新建 主數據時可以新增,數據申請人員有權限進行申請,如用戶創建的屬性時, 發現系統中沒有該類屬性,則該用戶可以申請新增此屬性。另一類是很少新增或 者修改的基礎數據,這些數據一般是貨幣、國家、行業、標準等,在系統初始化。
主數據編碼標準
主數據編碼標準定義了數據的分類和編碼規則,是主數據標準化建設的核 心內容。 通過對主數據分類編碼的標準化,杜絕自然語言描述下的不規則和理解 的二義性,便於實現計算機信息處理,以提高信息管理的效率
主數據屬性標準
主數據標準,是各類主數據的數據模型標準,定義了屬性構成、元數據、數據關係和參考數據等內容,是主數據標準化的關鍵。主數據包括物料、供應商、 客戶、財務、組織架構數據。每類主數據應該由哪些屬性(或字段)去約束,都 需要提前規範化、標準化。
主數據管理
主數據管理(Master Data Managent, MDM)描述了一組規程、技術和解決方案,用於爲所有利益相關方(如用戶、應用程序、數據倉庫、流程以及貿易伙伴)創建並維護業務數據的一致性、完整性、相關性和精確性。
主數據編碼標準
編碼原則
編碼過程中遵循以下總體原則:
- 唯一性
確保主數據對象的數據條目都有一個唯一的代碼,不重複;
- 科學性
根據業務需求,選擇主數據最穩定的本質屬性或特徵作爲分類的基礎和依據;
- 兼容性
應與相關標準協調一致,確保與集團、相關夥伴在有關主數據編碼上儘量遵循公共的標準;
- 可擴充性
編碼應留有適當的後備容量,以便適應不斷擴充的需要;
- 簡明性
編碼結構應儘量簡單,長度儘量短,以便節省存儲空間和減少代碼的差錯率;
- 實用性
編碼應儘可能反映編碼對象的現實特點,避免過於理想,而造成對業務效率的降低;
編碼規則
企業信息編碼方法
信息化的過程中,爲了便於計算機處理信息,需要給企業的各類信息(人員、物資、機構等)進行編碼。信息編碼一般由數字和字母組成,編碼位數由編碼對象的多少決定,同時還要遵循一定的信息分類和編碼原則。根據代碼的含義性將代碼分爲圖示的幾大類型。按照代碼所代表的編碼對象或編碼對象的特徵,又可以將代碼分爲標識碼和特徵碼,特徵碼又包括分類碼、結構碼、狀態碼、一般取值碼等。這些編碼之間的分類也不是絕對的,在實際應用過程中可以按照具體的編碼對象選擇最佳的編碼或多類編碼的組合。
3-1編碼規則示意圖
順序碼
在一個有序的字母、數字或者字母加數字的集合中,順序地爲編碼對象分配編碼。順序碼包括三種類型:遞增順序碼、系列順序碼和約定順序碼。
遞增順序碼:按照預先定義的字母或者數字遞增步長順序增加。
系列順序碼:首先劃分編碼對象類別,然後確定各個類別的代碼範圍,最後,順序地賦予編碼對象在各自類別編碼範圍內的代碼值。
約定順序碼:首先將編碼對象本身按照某種順序(縮寫字母順序或事件、活動的年代順序等)進行排列,然後再將有序的代碼值(字母或數字順序)與其排列順序進行一一對應,從而得到編碼對象的代碼值。這種編碼的前提是所有的編碼對象都預先已知並且編碼對象集合不會擴展。該編碼不是完整意義上的順序碼。
無序碼
無序碼是對編碼對象用無序的字母或自然數進行編碼,該編碼無規律可循,通常由計算機隨機給出。通常作爲複合碼的一部分而使用。
縮寫碼
縮寫碼,將編碼對象的名稱(英文或者中文拼音)進行縮寫,編碼的形成是取名稱中的一個或多個字符(如首字母)。縮寫碼適用於編碼對象是相對穩定的且被人們所熟知的有限標識代碼集。
層次碼
該編碼方式以線分類爲基礎,下位類包含在上位類中,層次碼的編碼基礎是編碼對象各層級間特性的差異,將編碼對象編成連續遞增的複合代碼。
層次碼適用於統計目的、基於學科的出版分類等情況
3-2層次碼示例
矩陣碼
這種編碼方式以矩陣表(複式記錄表)爲基礎,編碼對象的代碼是矩陣表中行值和列值的組合,這樣不同的編碼對象對應一樣的行(或列)會有若干相同的特性。矩陣碼對編碼對象的要求是具有良好的結構和穩定性,如漢字編碼字符集[31] 。
並置碼
這種編碼實質上是將編碼對象的特性代碼段組合而成的複合代碼(如圖 2-7所示)。這些特性代碼描述編碼對象相互獨立的特性,可以是無序碼、縮寫碼、順序碼等任意編碼類型。面分類法常使用此編碼結構。
主數據項
主數據分類方法
信息分類的基本方法有三種:線分類法、面分類法和混合分類法。
線分類法
線分類法也稱層級分類法。它將分類對象按照若干屬性依次分爲若干逐級展開的層級類目,形成一個有層次的分類體系。在該體系中,同層級類目之間互不重複交叉、形成並列關係,不同層級類目之間是從屬關係。採用線分類法進行編碼時一般採用的編碼結構是層次碼,爲每個層級編碼,最低的層級可以使用流水碼,最終編碼是各層級編碼的組合。該分類體系可以用分類樹進行表示(如圖所示)。
4-1線分類圖示
線分類法具有清晰的層次結構,能較好地反映類目之間的隸屬關係,是人們習慣使用的分類方式,既符合手工操作的習慣,也易於被計算機處理。但是該分類體系結構彈性較差,當改動或者刪除分類層級中的一箇中間類目時,會引起該類目的下層級結構發生變化;另外,當分類層級較深時,代碼位會變長,影響使用效率。
面分類法
面分類法是依據分類對象本身固有的各種屬性(或特性),劃分成互相之間沒有隸屬關係獨立的“面”,每個“面”由一組類目組成。將某個“面”下的一種類目和其他某個或多個“面”的一種類目組合在一起,可以組成一個複合類目。採用面分類法進行編碼時,對每個面進行編碼,然後將“面”編碼進行組合即爲最終編碼。面分類法示意圖如所示。
4-2面分類圖示
面分類法描述的分類結構具有較大的柔性,單個“面”內類目的改變不會引起其他“面”的變化;面分類法使用性更強,在分類屬性(或特性)不改變的情況下,可以通過類目組合規則的變化對分類結果進行調整。當然,該方法也有不足:採用該分類進行編碼,使得編碼容量利用不充分;當分類屬性(或特性)較多時,組合數量會急劇增加;另外,根據對象特性劃分的面有時類目很多,但實際組合應用的不多,即存在大量無應用意義的組合,導致結構上的冗餘;同時難於手工信息處理。
混合分類法
混合分類法將線分類法和麪分類法綜合起來運用,吸收兩種方法優點,避免各自的缺點,從而得出更爲合理的分類結構。在實際應用過程中,通常將線分類法作爲主體,在劃分的某一個層次中將面分類法作爲輔助分類方法進行分類。如由德國提出的著名的 OPITZ分類碼,該編碼方案在對零件進行編碼時取得了良好的效果。
定義因研究不同各有差別,但實施是非常重要的,畢竟主數據分類好,產品開發加班少,希望以後有機會實施整個數據治理。