亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > XML > 正文

基于 pureXML 技術的數據庫表結構擴展

2024-07-21 02:30:27
字體:
來源:轉載
供稿:網友

  信息系統交付使用之初,數據庫表結構的設計往往邏輯結構清晰,管理使用方便,但是當信息系統項目運行一段時間,隨著業務的不斷變化和增加,處理流程不斷的變革,信息系統需要從前臺界面到后臺數據庫的完善和修改,勢必要對數據庫表結構必須要進行擴展。我們通常的數據庫擴展往往采用增加備用字段、擴展字段的內涵、增加主從表和管理表的方式,這種數據庫表結構的擴展往往會帶來營運的中斷和操作的風險,本文通過分析常見的數據庫庫表結構的擴展方法中的不足,提出了幾種基于 purexml 方式的數據庫表結構的擴展模式,可以成功的結束數據庫擴展的技術難題。

  概述

  信息系統的建設往往遵循業務調研、需求分析、再進入到數據庫和軟件的概要設計、詳細設計、代碼編寫等等階段,在這個過程中數據庫設計者往往根據已有的業務調研、需求分析的成果進行數據庫表結構的設計,這時的數據庫的設計者是通盤考慮,全局謀劃所設計的數據庫結構,整個庫表結構邏輯清晰,管理方便并且符合 3nf 的要求。信息系統項目運行一段時間,隨著業務的不斷變化和增加,處理流程不斷的變革,這種業務需求的驅動下,我們的軟件體系也需要不斷的修改和完善,這種修改和完善不僅是界面的調整和模塊的增加,而且必須對數據庫表結構進行必要的調整和修改。

  這種項目維護期間的數據庫調整和擴展,必須對數據庫設計文檔進行修改,對數據字典進行調整,理想的情況是文檔齊備、資料完整,但實際工作中,由于設計和開發人員的責任心和對文檔的輕視,每次對數據庫表結構的調整都會造成數據庫庫表結構混亂,為今后的工作帶來系統管理、維護和軟件的再次修改和調整帶來隱患;其次,數據庫的擴展和調整中,對數據庫設計者要求很高,很容易導致數據庫設計中范式設計的隱患,進而造成數據庫性能的急劇下降;最值得注意的是,由于數據庫存儲有大量的業務數據庫,每次對數據庫字段的修改和調整必須停機操作,從而帶來運營的中斷和操作的風險。特別是對于上線運行的核心業務系統,和若干 7×24 小時的業務系統,每次的數據庫停機操作對營運的影響非常的巨大,而且還可能引來不良的社會影響。

  為了對數據庫進行有效的擴展,實際工作中往往采用預留備用字段、字段內涵擴展、增加從表擴展和增加關聯表的方式進行擴展,這種擴展往往存在若干的問題:

  設計之初預留備用字段帶來的不足

  為了減少對今后對數據庫表中的字段調整,某些設計者在設計之初,根據經驗對若干可能擴展的表中預留部分備用字段。預留備用字段的方式在某些程度上可以增加擴展的靈活性,但是確存在如下隱患:

  1.   預留字段的數量無法預測 , 預留 n 個還是預留 n+1,由于無法預知需要預留的數量造成擴展的不確定性;
  2.   預留字段的類型無法預測,預留字符型還是數值,無法去預測和評估;
  3.   常見在預留的擴展字段中,這些預留的擴展字段往往會破壞數據庫最基本的范式要求,數據庫的范式的最基本要求就是原子性和唯一性,而擴展的字段本身的定義是不明確的,這是不未確定的,也就是非原子的和非唯一的。

  表結構的字段數據量不擴展,擴展若干字段的內涵

  數據庫的調整會帶來運營的風險,部分數據庫設計者為了應付數據庫存儲的需要,不對數據庫表結構的字段的數量進行增加,而是非常“聰明”的將某個字段的內涵進行擴展,使得某些字段中同時存入 2+ 以上含義,由程序分析存入該字段的值的屬性和內容。例如:某字段原定義為 varchar(4),如果存儲字母開頭的值,如 a001 表示意思 xx;存儲數值開頭的值,如 1000 表示意思 yy;還有一種方式就是采用間隔符,對字段進行擴展,例如 a001+1000 等形式。我們的數據庫設計中,數據庫表中的每一個字段都是單一屬性,是不可再分的、原子性的,這個是數據庫設計的第一范式理論,任何的數據庫設計都應該遵守第一范式。這種設計不僅違反的數據庫設計的第一范式理論,而且造成讀取數據時需要程序進行“解碼”后才能進行查詢、統計等等,使得數據庫的整體性能大大降低。

  增加從表,但又不能確定從表的數量

  當對庫表進行擴展時,往往遇到存在 1:n 的情況時,這時必須增加從表來應對數據庫的擴展,但是由于每次增加數據庫從表時,無法預測需要增加多少個從表,每次增加從表都會造成數據庫的修改和調整。

  增加關聯,但關聯表的字段無法預測

  由于業務邏輯的改變,如果發現原表 t1,t2 存在 n:m 的關系時,必須增加關聯表,但是關聯表的字段數量又無法預測 , 每次對關聯表的調整又會造成對數據庫的影響。

  通過對數據庫表結構中經常采用表和字段擴展的方式進行分析,我們都會發現對數據庫的修改,往往會造成諸多的不便,而且值得注意的是每次修改數據庫往往是業務需要非常緊迫,考慮到之前確保之前程序的穩定性和可靠性,此時又不能對原有的數據庫進行調整和重組,dba 往往只能進行部分數據庫表結構的字段,往往最終導致數據庫表結構混亂,以及管理維護的失控。

  數據庫表結構擴展原則

  要做好數據庫的調整工作,為了減少對原系統的影響和歷史數據的存儲,我們在調整中往往按照以下三條原則來進行數據庫的調整:

  對修改的關閉,對擴展的開放。原有的表結構中各字段都含有數據信息,不能對原有字段的刪除修改。如果刪除這些字段往往造成數據丟失,特別是對于某些關聯表的數據庫操作更是風險極大;

  對表結構的修改最關鍵是減少對運營的影響。數據庫的調整,每次都需要備份數據,中斷業務系統,中斷業務系統會造成生產經營的巨大損失和不良的社會影響,所以對數據庫的調整必須采取措施減少對生產系統和運營系統的影響;

  表結構很少重組結構,而只是增減字段。表結構的擴展是基于已有系統的運行,考慮到已有系統的穩定運行,我們很少去重構重組原表結構,只是增加和擴展表中的字段和數據庫表。

|||

  db2 v9 的 purexml 的技術特點

  考慮到參加的表和字段擴展中遇到的問題和數據庫表結構調整的幾個基本原則,我們認為 purexml 能夠幫助我們較好的解決這個問題。db2 v9 中的 purexml 技術第一次真正意義上提供了一種與 xml 層次型結構相匹配的層次型存儲方式和相對應的操作訪問方式.在 purexml 中,xml 作為一種新的數據類型。幾乎每個 db2 組件、工具和實用程序都已得到增強,以識別和處理這種新數據類型。新的存儲模式以解析后的注釋樹形式(類似于 xml 文檔對象模型 (dom))保留 xml,它與關系數據存儲分開。

  圖 1. db2 的新 xml 關系存儲模型

  db2 的新 xml 關系存儲模型

  在兩種數據存儲(關系和 xml)的頂部的數據庫引擎可以處理 xquery、xpath、sql 和 sql/xml。該引擎采用帶有 sql 和 xquery 解析程序的雙語查詢編譯器。因此開發人員可以根據具體情況更適用的原則使用 sql 或 xquery 任何一種語言(或同時使用這兩種語言),支持事務級的 xml 操作。

  基于 purexml 技術的數據庫表格的擴展模式

  為了應對數據庫的表結構的擴展,我們可以利用 xml 具有自我描述和層次行等特性,可以非常方便的存儲各種類型的數據庫。針對不同的數據庫表結構的擴展,提出字段模式的擴展、從表模式的擴展和主從陌生的擴展,可以方便的應對各種類型的庫表結構的調整。

  字段模式的擴展

  圖 2. 字段擴展模式介紹圖

  字段擴展模式介紹圖

  對于需要對表結構進行增加字段的擴展需要,只需要對 xml 的列進行擴展就可完成數據庫的擴展。

  方法:左表需要增加多個字段,右表只需要對 xml 字段進行擴展;

  優點:適應于對數據庫字段的擴展,由于基于 xml 的字段,字段數量擴展沒有限制,字段類型沒有限制,且修改時無需停機處理;

  適用范圍:適合于只對主鍵有唯一依賴關系的屬性

  主從模式的擴展

  圖 3. 主從擴展模式介紹圖

  主從擴展模式介紹圖

  對需要對增加從表來對主表進行擴展的模式,也只需對列末的 xml 類型進行擴展,擴展的從表全部由 xml 來存儲。

  方法:左邊需要增加多個外鍵和從表;右邊只需要對 xml 字段按照從表結構進行擴展

  優點:適應于對從表的擴展,由于基于 xml 的字段,從數量擴展沒有限制,而且從表中字段類型沒有限制。

  適用范圍:適合于需要增加從表的擴展。

  關聯模式的擴展

  圖 4. 關聯擴展模式介紹圖

  關聯擴展模式介紹圖

  方法:由于業務規則的增加,對于 n:m 的關系必須增加關聯表,在關聯表中增加 xml 字段

  優點:關聯表中增加 xml 字段,可以應對字段增加和從表的增加(見字段模式和主從模式),進而構成了復雜的數據庫擴展方法。

  適應范圍:增加數據庫設計的彈性和可擴展性

  從介紹了三種基于 purexml 技術的數據庫表結構的擴展模式,通過該模式的使用可以讓數據庫系統的修改和擴展非常的方便和易用,而且可以進一步將各種模式進行相互組合和疊加,以應對成更加復雜的庫表結構的擴展。

  結束語

  以上分析了數據庫擴展中常見的幾種方法,提出基于 purexml 技術的三種對數據庫模式的擴展技術,通過 xml 字段的方式使得對數據庫擴展實現按需分配,彈性擴展,無限擴展的可能;其次,xml 基于自描述性,而通過 xml 字段的方式使得數據庫結構清晰,容易管理和維護,而且字段增加時系統無需停機處理,減少對系統運營的影響和操作的風險;通過 xml 擴展模式確保了數據庫表對修改的關閉,對擴展的開發,軟件開發人員只需要按照 xml 擴展模式的思路,對數據庫的 crud 操作數據庫操作進行封裝,以便于大大提高系統的軟件維護的效率,減少維護的成本。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲精品高潮| 欧美成人剧情片在线观看| 亚洲一区中文字幕在线观看| 91香蕉嫩草神马影院在线观看| 成人免费福利在线| 国产69久久精品成人| 亚洲欧美日韩区| 亚洲第一免费网站| 2025国产精品视频| 成人黄色在线播放| 久久久极品av| 日本人成精品视频在线| 久久天天躁狠狠躁夜夜躁2014| 亚洲女人被黑人巨大进入| 亚洲福利视频网| 亚洲成人在线网| 国产亚洲欧美日韩一区二区| 成人黄色影片在线| 久久久电影免费观看完整版| 97精品久久久中文字幕免费| 亚洲在线视频观看| 亚洲第一级黄色片| 欧美又大又硬又粗bbbbb| 在线精品播放av| 午夜精品www| 日韩成人在线观看| 色老头一区二区三区在线观看| 不卡av在线网站| 国产美女精品视频| 国外成人在线播放| 欧美中文在线视频| 国产精品久久中文| 亚洲第一色中文字幕| 国产精品香蕉在线观看| 日韩视频在线免费观看| 国产成人a亚洲精品| 992tv在线成人免费观看| 亚洲欧洲美洲在线综合| 亚洲男人第一网站| 6080yy精品一区二区三区| 国产一区二区三区在线观看视频| 日韩精品高清在线观看| 精品国产91久久久| 国产精品扒开腿做爽爽爽的视频| 粗暴蹂躏中文一区二区三区| 国产大片精品免费永久看nba| 日韩一区av在线| 亚洲aa在线观看| 成人午夜激情网| 亚洲网站在线看| 日韩欧美在线观看视频| 国产日韩欧美夫妻视频在线观看| 欧美国产日韩免费| 亚洲天堂久久av| 国产精品一二三视频| 国模精品视频一区二区三区| 亚洲国产精品久久久久| 亚洲自拍在线观看| 久久艹在线视频| 欧美视频中文在线看| 欧美激情伊人电影| 欧美一区二区色| 日韩在线视频国产| 亚洲电影免费观看高清完整版在线观看| 九九久久久久久久久激情| 日韩精品免费在线播放| 欧美色欧美亚洲高清在线视频| 日韩av在线导航| 亚洲精品在线视频| 欧美成年人视频网站欧美| 91亚洲国产精品| 国产亚洲一区二区精品| 欧美日韩国产精品一区二区三区四区| 色久欧美在线视频观看| 久久九九全国免费精品观看| 久久久久久午夜| 亚洲网站在线观看| 成人福利网站在线观看| 91精品视频播放| 国产欧美久久一区二区| 久久久久久成人精品| 亚洲乱码国产乱码精品精天堂| 少妇精69xxtheporn| 亚洲自拍偷拍视频| 98视频在线噜噜噜国产| 欧美在线视频a| 欧美精品第一页在线播放| 欧美日韩ab片| 欧美日韩性生活视频| 日韩精品高清在线观看| 欧美色图在线视频| 成人在线中文字幕| 日韩视频免费在线观看| 亚洲欧美在线免费| 久久久www成人免费精品张筱雨| 综合欧美国产视频二区| 久久久久久久久久久91| 亚洲一区二区三区乱码aⅴ| 久久99久国产精品黄毛片入口| 久久99亚洲热视| 668精品在线视频| 成人欧美在线视频| 亚洲第一精品自拍| 欧美一级视频一区二区| 国产视频精品久久久| 青青青国产精品一区二区| 正在播放亚洲1区| 欧美激情一区二区三区成人| 国产原创欧美精品| 成人免费看片视频| 日韩av大片在线| 国产日韩欧美黄色| 亚洲激情免费观看| 亚洲美女精品成人在线视频| 国产噜噜噜噜噜久久久久久久久| 精品免费在线观看| 日韩一区二区在线视频| 欧美国产日韩精品| 欧美成aaa人片免费看| 日韩一区二区av| 欧美中在线观看| 久久人人爽亚洲精品天堂| 日韩电影中文字幕在线观看| 色综合老司机第九色激情| 亚洲高清色综合| 国产精品综合网站| 欧美日韩在线观看视频| 欧美乱妇高清无乱码| 欧美精品久久久久久久| 91久久精品国产91久久| 欧美有码在线视频| 欧美精品在线播放| 欧美体内谢she精2性欧美| 色综合视频网站| 97超级碰碰人国产在线观看| 亚洲精品免费在线视频| 国产亚洲精品久久久久久牛牛| 亚洲精品理论电影| 成人性教育视频在线观看| 欧美日韩国产精品一区二区不卡中文| 日韩精品极品在线观看播放免费视频| 欧美大全免费观看电视剧大泉洋| 伊人久久精品视频| 2019中文字幕全在线观看| 国产精品黄视频| 亚洲精品白浆高清久久久久久| 免费97视频在线精品国自产拍| 美女啪啪无遮挡免费久久网站| 日韩精品一区二区三区第95| 亚洲精品福利资源站| 国产这里只有精品| www国产精品视频| 色老头一区二区三区在线观看| 狠狠躁夜夜躁人人爽超碰91| 俺也去精品视频在线观看| 日日噜噜噜夜夜爽亚洲精品| 国产成人jvid在线播放| 久久av在线看| 久久精品国产2020观看福利| 亚洲乱码一区av黑人高潮| 欧美日韩国产精品专区| 国产精品久久久久影院日本| 亚洲欧美精品伊人久久| 亚洲第一色中文字幕|