• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      計(jì)算機(jī)軟件數(shù)據(jù)庫開發(fā)的必要性與設(shè)計(jì)原則研究

      2021-09-15 02:18:23左文濤方斌吳新玲
      消費(fèi)電子 2021年8期
      關(guān)鍵詞:設(shè)計(jì)原則

      左文濤 方斌 吳新玲

      【摘 要】隨著大數(shù)據(jù)云計(jì)算技術(shù)逐步成為數(shù)字經(jīng)濟(jì)的基礎(chǔ)設(shè)施,規(guī)?;?、業(yè)務(wù)化、智能化的海量數(shù)據(jù)在數(shù)據(jù)庫中存儲(chǔ)計(jì)算,數(shù)據(jù)庫的地位顯得越來越重要。在計(jì)算機(jī)軟件開發(fā)中,必須設(shè)計(jì)好數(shù)據(jù)庫的開發(fā)規(guī)范,且遵循一定的設(shè)計(jì)原則才能適應(yīng)業(yè)務(wù)發(fā)展和變化的客觀規(guī)律,滿足現(xiàn)代企業(yè)對(duì)數(shù)據(jù)一致性、實(shí)時(shí)性、可用性和擴(kuò)展性的不同需求。

      【關(guān)鍵詞】數(shù)據(jù)庫開發(fā);開發(fā)規(guī)范;設(shè)計(jì)原則

      數(shù)據(jù)庫系統(tǒng)是軟件開發(fā)過程中非常重要的組成部分,軟件一般是由處理業(yè)務(wù)的邏輯和數(shù)據(jù)結(jié)構(gòu)組成的一套運(yùn)行在計(jì)算機(jī)上的程序代碼。數(shù)據(jù)庫是存儲(chǔ)和提供統(tǒng)一查詢數(shù)據(jù)的系統(tǒng)軟件,它可以長期的將業(yè)務(wù)的數(shù)據(jù)保存在計(jì)算機(jī)的外部存儲(chǔ)器之中,并高效地管理業(yè)務(wù)數(shù)據(jù),為軟件提供統(tǒng)一的數(shù)據(jù)查詢功能。數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì)和開發(fā)貫穿于整個(gè)軟件開發(fā)的生命周期之中,與軟件的生命周期類似,數(shù)據(jù)庫開發(fā)也有著其自身的生命周期。需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫具體實(shí)施和數(shù)據(jù)庫的運(yùn)行維護(hù),每個(gè)階段都遵循著一些設(shè)計(jì)原則,好的設(shè)計(jì)原則能夠在不同的數(shù)據(jù)要求中靈活迭代。

      一、數(shù)據(jù)庫開發(fā)的必要性

      企業(yè)組織業(yè)務(wù)過程中的數(shù)據(jù)是其重要的資產(chǎn),它們被用作保存操作型業(yè)務(wù)的記錄和分析決策。軟件在業(yè)務(wù)迭代升級(jí)的過程中,對(duì)應(yīng)的數(shù)據(jù)庫的結(jié)構(gòu)的開發(fā)也顯得尤為必要。操作型業(yè)務(wù)的記錄存儲(chǔ)在數(shù)據(jù)庫中需要確保企業(yè)業(yè)務(wù)的正常運(yùn)行,其記錄了每一個(gè)業(yè)務(wù)中的重要的交易信息如:訂單、客戶、銷售、客戶反饋等,其只需要保證數(shù)據(jù)的準(zhǔn)確一致和必要的容錯(cuò)性,反映業(yè)務(wù)過程中最新的狀態(tài)和處理結(jié)果即可,通常不需要考慮歷史的數(shù)據(jù)的分析。分析決策類型的數(shù)據(jù)則著眼于歷史的企業(yè)組織的業(yè)務(wù)數(shù)據(jù)。對(duì)批量的業(yè)務(wù)記錄,通常是兩年以上的數(shù)據(jù),經(jīng)過統(tǒng)一處理用于評(píng)估組織在這期間的生產(chǎn)經(jīng)營活動(dòng)是否正常以及決策優(yōu)化生產(chǎn)經(jīng)營過程。

      (一)數(shù)據(jù)庫開發(fā)需求分析

      計(jì)算機(jī)軟件開發(fā)過程中,最重要的是需求分析,它在數(shù)據(jù)庫的開發(fā)過程中詳細(xì)地描述了系統(tǒng)的數(shù)據(jù)庫要儲(chǔ)存哪一些業(yè)務(wù)的數(shù)據(jù),完成哪些具體的功能。常見的需求分析方法是dfd(Data Flow Diagram)數(shù)據(jù)流圖,它描述了軟件系統(tǒng)數(shù)據(jù)從哪些組件流向哪些組件,以及中間存儲(chǔ)在了哪里,做了哪些處理。線性和事務(wù)型兩種類型的dfd共同的描述數(shù)據(jù)庫開發(fā)過程中涉及的系統(tǒng)的數(shù)據(jù)的流向,可以更清晰更直觀地描述具體的需求,為后續(xù)的結(jié)構(gòu)設(shè)計(jì)打好基礎(chǔ)。

      (二)概念結(jié)構(gòu)設(shè)計(jì)

      概念結(jié)構(gòu)設(shè)計(jì)不關(guān)注具體使用的是哪些數(shù)據(jù)庫,關(guān)注數(shù)據(jù)庫概念的闡述和數(shù)據(jù)對(duì)象之間行為的描述。數(shù)據(jù)字典對(duì)需求分析中的數(shù)據(jù)流圖的每個(gè)要素做出詳細(xì)的說明,數(shù)據(jù)項(xiàng)目的名字、說明、別名、類型、長度、取值范圍等一一描述,數(shù)據(jù)項(xiàng)目之間的組合關(guān)系,數(shù)據(jù)的傳輸路徑,數(shù)據(jù)停留和保存的方式、存取的方式和處理過程中的邏輯等都必須詳盡地表述出來。概念結(jié)構(gòu)的設(shè)計(jì)一般是自底向上的過程,通過對(duì)需求歸納分析和抽象,形成E-R關(guān)系模型。E指的是Entity實(shí)體,R指的是Relationship關(guān)系,使用E-R模型可以描述現(xiàn)實(shí)世界的數(shù)據(jù)對(duì)象的屬性和實(shí)體之間的父子聯(lián)系。好的概念抽象可以使數(shù)據(jù)庫的設(shè)計(jì)更加的通用,更符合現(xiàn)實(shí)世界的業(yè)務(wù)的邏輯。

      (三)邏輯結(jié)構(gòu)設(shè)計(jì)

      邏輯結(jié)構(gòu)設(shè)計(jì)將概念結(jié)構(gòu)設(shè)計(jì)的E-R圖[1]轉(zhuǎn)換為關(guān)系數(shù)據(jù)的模式,優(yōu)化這些關(guān)系模式之間的依賴關(guān)系,常見的是使用關(guān)系模式的三大范式來規(guī)范概念結(jié)構(gòu)設(shè)計(jì)的實(shí)體和實(shí)體之間的聯(lián)系,確定具體的數(shù)據(jù)依賴以及這些關(guān)系模式的碼和屬性。三大范式要求每個(gè)關(guān)系模式的屬性都是不可再分的原子數(shù)據(jù),且主鍵確定了這個(gè)關(guān)系模式,非主鍵的屬性之間不會(huì)相互依賴。規(guī)范化的程度越高,數(shù)據(jù)的冗余就越小,但后期的查詢時(shí)間涉及的關(guān)系模式會(huì)越多,但是選擇合適的規(guī)范化的程度可以避免數(shù)據(jù)操作耗時(shí),這也是另一個(gè)層面上的以空間換時(shí)間的優(yōu)化方式。

      (四)物理結(jié)構(gòu)設(shè)計(jì)

      以數(shù)據(jù)為中心的應(yīng)用,數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計(jì)的好壞直接影響到程序的性能,因此數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計(jì)至關(guān)重要。索引是提高數(shù)據(jù)庫性能的常用方法,令數(shù)據(jù)庫服務(wù)器的檢索速度快很多倍,物理結(jié)構(gòu)設(shè)計(jì)階段主要是將邏輯上的關(guān)系模式轉(zhuǎn)化為最適合應(yīng)用程序運(yùn)行的物理結(jié)果,包括數(shù)據(jù)庫的索引、輸入的參數(shù)、輸出的結(jié)果、對(duì)象之間的關(guān)系、日志、備份機(jī)制等都需要設(shè)計(jì)確定最終的選型。

      二、數(shù)據(jù)庫開發(fā)設(shè)計(jì)原則

      聯(lián)機(jī)事務(wù)處理記錄某類業(yè)務(wù)事件的發(fā)生,即對(duì)數(shù)據(jù)的增刪改的操作,而聯(lián)機(jī)分析處理則是對(duì)數(shù)據(jù)的查詢分析。在企業(yè)組織的業(yè)務(wù)中它們代表著兩類業(yè)務(wù),因此其對(duì)應(yīng)數(shù)據(jù)庫開發(fā)設(shè)計(jì)的原則也大相徑庭。聯(lián)機(jī)事務(wù)處理為了維護(hù)ACID的強(qiáng)一致性通常使用三大范式的開發(fā)模式設(shè)計(jì)各類結(jié)構(gòu),聯(lián)機(jī)分析處理則是采用雪花模型或者星型模型來組織數(shù)據(jù),數(shù)據(jù)對(duì)象存在一定的冗余,在查詢過程中,可以避免很多連接操作提升分析的效率。

      (一)聯(lián)機(jī)事務(wù)開發(fā)設(shè)計(jì)原則

      聯(lián)機(jī)事務(wù)[2]的數(shù)據(jù)所涉及的數(shù)據(jù)庫的對(duì)象如表、視圖、過程、函數(shù)、觸發(fā)器等在計(jì)算機(jī)軟件開發(fā)中十分的繁雜因此設(shè)計(jì)的時(shí)候必須遵循事務(wù)優(yōu)先的開發(fā)規(guī)范。命名的規(guī)范是不使用保留字或者關(guān)鍵字,做到見名知意,數(shù)據(jù)庫對(duì)象的名稱格式按〈類型〉_〈模塊名稱〉_〈對(duì)象名稱〉_〈序號(hào)〉的固定格式如有其他格式需要單獨(dú)注明。建表的規(guī)范是不允許在默認(rèn)的系統(tǒng)表空間中建表,不同對(duì)象如表和索引必須建在不同的表空間,對(duì)聯(lián)機(jī)事務(wù)的數(shù)據(jù)建表時(shí)不允許使用parallel的參數(shù);主外鍵優(yōu)先考慮數(shù)據(jù)庫自身提供的約束完整性的機(jī)制,在數(shù)據(jù)庫本身不滿足的情況下才考慮編程定義自定義完整性的約束,表的外鍵必須建立索引,主鍵通常不使用有實(shí)際業(yè)務(wù)意義的屬性作為主鍵,由Sequence生成的id,不能用作組合主鍵;索引列為null必須定義默認(rèn)值,字段的命名長度不應(yīng)該超過30個(gè)字節(jié),超大的單表在建立時(shí)需要考慮按列的特征分區(qū)。臨時(shí)表在聯(lián)機(jī)事務(wù)的數(shù)據(jù)庫開發(fā)時(shí)經(jīng)常和存儲(chǔ)過程、函數(shù)和包一起使用,為上層的計(jì)算機(jī)軟件提供了更多數(shù)據(jù)操作的便捷的接口,其對(duì)應(yīng)的設(shè)計(jì)原則和規(guī)范是不允許頻繁地使用ddl的語句,臨時(shí)表必須放在獨(dú)立的磁盤上,外部查詢的多行數(shù)據(jù)返回使用游標(biāo)進(jìn)行處理,必須有對(duì)應(yīng)的異常處理機(jī)制的設(shè)計(jì)。

      (二)聯(lián)機(jī)分析開發(fā)設(shè)計(jì)原則

      聯(lián)機(jī)事務(wù)的數(shù)據(jù)通常是非集成的,而聯(lián)機(jī)分析[3]的數(shù)據(jù)通常是集成的。在開發(fā)設(shè)計(jì)分析型的系統(tǒng)時(shí)應(yīng)當(dāng)遵循查詢優(yōu)先的原則。當(dāng)一列的值是連續(xù)的業(yè)務(wù)意義且可以使用范圍分組的情況下,如日期,身高,體重等,使用范圍分區(qū)劃分?jǐn)?shù)據(jù)的數(shù)據(jù)塊;當(dāng)一列的值是離散的業(yè)務(wù)意義且可以使用列表分組的情況下,如省份,地理位置,產(chǎn)品名稱等,使用列表分區(qū)劃分?jǐn)?shù)據(jù)的數(shù)據(jù)塊;當(dāng)一列的值既不具備明顯的連續(xù)的業(yè)務(wù)意義也不具備離散的業(yè)務(wù)意義時(shí),如身份證編號(hào)等,數(shù)據(jù)量千萬級(jí)別,則可以使用哈希分區(qū)。分區(qū)的目的和索引一致,均是在聯(lián)機(jī)事務(wù)的數(shù)據(jù)需要查詢連接的時(shí)候提供更好的性能。索引的規(guī)范是數(shù)據(jù)量小于1000條記錄不需要建立索引,創(chuàng)建或重建索引時(shí)指定使用Nologging關(guān)鍵字,單個(gè)表上索引的個(gè)數(shù)不超過4個(gè),頻繁的索引必須放入緩存,避免重復(fù)的創(chuàng)建。多表連接時(shí),必須使用表的別名來關(guān)聯(lián)列,多個(gè)大單表進(jìn)行連接時(shí)一條查詢語句中關(guān)聯(lián)的查詢的大表盡量不要超過3個(gè),盡量使用共享的查詢語句,因?yàn)闀?huì)緩存一部分會(huì)話查詢過的結(jié)果。

      三、結(jié)語

      隨著大數(shù)據(jù)云計(jì)算技術(shù)逐步成為數(shù)字經(jīng)濟(jì)的基礎(chǔ)設(shè)施,數(shù)據(jù)庫系統(tǒng)開發(fā)在軟件開發(fā)過程中的地位愈顯重要,數(shù)據(jù)庫開發(fā)以及其中各個(gè)階段的設(shè)計(jì)有其必要性。除此之外,在企業(yè)組織中聯(lián)機(jī)事務(wù)和聯(lián)機(jī)分析的業(yè)務(wù)也必須遵循各自的開發(fā)設(shè)計(jì)原則,才能適應(yīng)業(yè)務(wù)發(fā)展和變化的客觀規(guī)律,滿足現(xiàn)代企業(yè)對(duì)數(shù)據(jù)一致性、實(shí)時(shí)性、可用性和擴(kuò)展性的不同需求。

      參考文獻(xiàn):

      [1]朱珍.基于E-R模型數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵技術(shù)研究[J].電腦編程技巧與維護(hù),2019(05):77-79.

      [2]李依霖.聯(lián)機(jī)事務(wù)處理系統(tǒng)應(yīng)用于計(jì)算機(jī)專業(yè)學(xué)習(xí)的方法研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2020(10):122-124.

      [3] Nosov A P,Akhrem A A, Rakhmankulov V Z,et al.Computational Complexity Analysis of Decomposition Methods of OLAP Hyper-cubes of Multidimensional Data[J].Mathematics and Mathematical Modeling,2020(4):52-64.

      猜你喜歡
      設(shè)計(jì)原則
      開放空間格局下圖書館導(dǎo)視系統(tǒng)的設(shè)計(jì)與思考
      產(chǎn)品設(shè)計(jì)中的界面設(shè)計(jì)
      談舞臺(tái)燈光的設(shè)計(jì)原則
      基于人文關(guān)懷背景下的適老居室空間研究
      人間(2016年30期)2016-12-03 22:51:17
      從課外活動(dòng)視角探討英語專業(yè)學(xué)生自主學(xué)習(xí)能力培養(yǎng)
      基于移動(dòng)互聯(lián)網(wǎng)絡(luò)環(huán)境的MOOC微課程研究
      考試周刊(2016年84期)2016-11-11 23:37:53
      淺析初中語文教學(xué)提問設(shè)計(jì)的創(chuàng)新
      考試周刊(2016年85期)2016-11-11 00:51:00
      智慧產(chǎn)品形態(tài)造型語言研究
      網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)總體架構(gòu)設(shè)計(jì)
      建筑電氣設(shè)計(jì)原則及可行性對(duì)策
      西华县| 都安| 明光市| 峨山| 克拉玛依市| 滕州市| 华池县| 安国市| 平山县| 岱山县| 枝江市| 敦煌市| 焉耆| 边坝县| 阿克苏市| 襄汾县| 丰镇市| 荣成市| 黑水县| 平南县| 连山| 泊头市| 山西省| 房产| 石景山区| 阿拉善右旗| 公主岭市| 新沂市| 深州市| 宝坻区| 六盘水市| 衡南县| 宜章县| 监利县| 浠水县| 新化县| 大庆市| 科尔| 隆安县| 屏南县| 久治县|