999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

信息系統(tǒng)的報(bào)表存取模式研究

2015-09-08 10:43:11余肖生汪宏舟
現(xiàn)代情報(bào) 2015年2期

余肖生 汪宏舟

[摘要]電子報(bào)表在管理控制中發(fā)揮著越來越重要的作用。選擇一種最適合于信息系統(tǒng)功能需求的報(bào)表呈現(xiàn)方式,在一定程度上成了信息系統(tǒng)開發(fā)的關(guān)鍵。本文中筆者比較了三種常用的報(bào)表存取模式,認(rèn)為表格類報(bào)表是信息系統(tǒng)報(bào)表呈現(xiàn)的主要形式,并詳細(xì)分析了表格類報(bào)表的設(shè)計(jì)方法、性能優(yōu)化等問題。最后,以一個(gè)數(shù)據(jù)統(tǒng)計(jì)系統(tǒng)——五人制足球信息統(tǒng)計(jì)系統(tǒng)為例,討論了表格類報(bào)表的應(yīng)用。

[關(guān)鍵詞]管理信息系統(tǒng);報(bào)表存取模式;報(bào)表呈現(xiàn)

[中圖分類號(hào)]TP311

[文獻(xiàn)標(biāo)識(shí)碼]A

[文章編號(hào)]1008-0821(2015)02-0053-04

隨著信息爆炸時(shí)代的到來,各行各業(yè)傳統(tǒng)的辦公模式面臨嚴(yán)峻的挑戰(zhàn),產(chǎn)生了“無紙化辦公”、“網(wǎng)絡(luò)查詢”的要求,而電子報(bào)表作為現(xiàn)代技術(shù)的出現(xiàn),在管理控制中發(fā)揮重要作用,尤其在財(cái)務(wù)報(bào)告及分析評(píng)價(jià)方面。因此在信息系統(tǒng)開發(fā)的過程中,除了常規(guī)事務(wù),還更應(yīng)關(guān)注報(bào)表的設(shè)計(jì)。報(bào)表設(shè)計(jì)主要包括兩方面內(nèi)容:一方面是報(bào)表旱現(xiàn)形式。在信息系統(tǒng)中報(bào)表呈現(xiàn)形式主要有文字、圖形和表格等。文字類報(bào)表作為總結(jié)性報(bào)表之一,易受主觀意識(shí)影響,有遺漏潛在信息的可能;圖形類報(bào)表的報(bào)表內(nèi)容客觀,但也易受到圖形的局限性而影響分析結(jié)果的評(píng)估;而表格類報(bào)表作為報(bào)表呈現(xiàn)的基本形式,在關(guān)系數(shù)據(jù)庫數(shù)據(jù)呈現(xiàn)中發(fā)揮著越來越重要的作用。另一方面是報(bào)表數(shù)據(jù)存取方式的選擇,這涉及報(bào)表存取模式。本文認(rèn)為表格類報(bào)表是信息系統(tǒng)報(bào)表呈現(xiàn)的主要形式,并著重比較了3種常用的報(bào)表存取模式,接著詳細(xì)分析了表格類報(bào)表的設(shè)計(jì)方法、性能優(yōu)化等問題,最后,以一個(gè)數(shù)據(jù)統(tǒng)計(jì)系統(tǒng)——五人制足球信息統(tǒng)計(jì)系統(tǒng)為例,討論了表格類報(bào)表的應(yīng)用。

1 報(bào)表存取模式的比較

數(shù)據(jù)存取是指數(shù)據(jù)庫數(shù)據(jù)存儲(chǔ)組織和存貯路徑的實(shí)現(xiàn)和維護(hù),而所謂報(bào)表存取模式是指報(bào)表的數(shù)據(jù)來源及其數(shù)據(jù)存儲(chǔ)組織的方式。在報(bào)表開發(fā)中,報(bào)表呈現(xiàn)的數(shù)據(jù)來源通常有三種,分別是視圖(View)、存儲(chǔ)表(Table)、數(shù)據(jù)倉庫(Data warehouse)。第一種是在數(shù)據(jù)庫中通過創(chuàng)建視圖,基于視圖做過濾查詢后,為前端應(yīng)用程序提供數(shù)據(jù)源,輸出報(bào)表;第二種是在業(yè)務(wù)數(shù)據(jù)庫中創(chuàng)建存儲(chǔ)表,專門存儲(chǔ)報(bào)表數(shù)據(jù),并在前端應(yīng)用程序輸出報(bào)表;第三種是從數(shù)據(jù)源提取數(shù)據(jù),存儲(chǔ)在數(shù)據(jù)倉庫中,利用即席查詢、OLAP分析、數(shù)據(jù)挖掘等訪問工具輸出報(bào)表。

在進(jìn)一步討論報(bào)表存取模式之前,需要了解普通視圖和表的區(qū)別及執(zhí)行效率問題。視圖是從一個(gè)或幾個(gè)基本表(或視圖)導(dǎo)出的表。它與基本表不同,是個(gè)虛表。數(shù)據(jù)庫中只存放視圖的定義,而不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在原來的基本表中。因此普通視圖實(shí)際就是多表查詢,顯然比單表查詢的效率要低些,這是視圖和表的區(qū)別。

下面討論常見的三種報(bào)表存取模式以及它們的優(yōu)點(diǎn)與缺點(diǎn),如表1所示。

通過創(chuàng)建視圖(View)來呈現(xiàn)報(bào)表是一種最基本的開發(fā)模式。通常,這一開發(fā)模式僅適合于只有少數(shù)幾個(gè)表的連接查詢或簡單計(jì)算的情形。Crystal Reports報(bào)表軟件是這種報(bào)表存取模式的典型代表。其主要特點(diǎn)是形式多樣的內(nèi)容創(chuàng)建、支持多數(shù)據(jù)源、提供分析工具以及支持Web應(yīng)用,可集成到開發(fā)者的開發(fā)環(huán)境中,如Visual Studio,.Net平臺(tái)等。這種報(bào)表開發(fā)方法直觀,數(shù)據(jù)基本不存在冗余,幫助開發(fā)者做出了大量報(bào)表。如果報(bào)表數(shù)據(jù)很復(fù)雜時(shí),比如報(bào)表需要從復(fù)雜的數(shù)據(jù)源或者多個(gè)不同類型的數(shù)據(jù)源中獲取數(shù)據(jù),獲取的數(shù)據(jù)可能還需要統(tǒng)計(jì)、格式轉(zhuǎn)換或其他處理。這樣的報(bào)表視圖查詢語句復(fù)雜,實(shí)現(xiàn)難度大。通過這類報(bào)表軟件制作復(fù)雜報(bào)表時(shí),會(huì)因?yàn)樵谝晥D中進(jìn)行多次復(fù)雜的關(guān)系代數(shù)運(yùn)算使得運(yùn)行效率很低,無法高效地將數(shù)據(jù)庫中的數(shù)據(jù)加載到報(bào)表中。而用戶請(qǐng)求以最少的響應(yīng)時(shí)延傳送Web頁面被公認(rèn)為Web頁面最重要的設(shè)計(jì)準(zhǔn)則,因此這種方法僅適用于業(yè)務(wù)規(guī)則簡單的報(bào)表。

物化視圖(Materialized View)是視圖的一種延伸。物化視圖把視圖結(jié)果存放在數(shù)據(jù)庫中,創(chuàng)建一個(gè)包含視圖數(shù)據(jù)的臨時(shí)表,基于這個(gè)臨時(shí)表再執(zhí)行查詢。這種處理能夠在一定程度上提高報(bào)表查詢的效率。但開發(fā)者還是需要一口氣編寫復(fù)雜的視圖,難度大,也不便于開發(fā)者維護(hù)代碼。

相反若以存儲(chǔ)表(Table)的方式存取報(bào)表數(shù)據(jù)并輸出,其好處是報(bào)表查詢效率高。開發(fā)者只需要在業(yè)務(wù)系統(tǒng)中編寫少量程序,控制數(shù)據(jù)流的提取、轉(zhuǎn)換,保證數(shù)據(jù)的一致性,并將報(bào)表數(shù)據(jù)源存儲(chǔ)到存儲(chǔ)表中。這種方法在處理復(fù)雜數(shù)據(jù)源時(shí),實(shí)現(xiàn)難度比視圖小。當(dāng)然用存儲(chǔ)表的方式也會(huì)導(dǎo)致一些問題:①因需要在業(yè)務(wù)系統(tǒng)中自動(dòng)提取轉(zhuǎn)換原始數(shù)據(jù),從而拖累業(yè)務(wù)系統(tǒng),導(dǎo)致業(yè)務(wù)系統(tǒng)運(yùn)行效率相對(duì)低一點(diǎn);②存在一定的數(shù)據(jù)冗余,這就需要開發(fā)人員確保數(shù)據(jù)的高度一致性。這種方法適用于業(yè)務(wù)規(guī)則復(fù)雜的報(bào)表。

以數(shù)據(jù)倉庫(Data warehouse)的方式開發(fā)報(bào)表,除數(shù)據(jù)倉庫數(shù)據(jù)庫服務(wù)器外,還需要?jiǎng)?chuàng)建分析服務(wù)器(Analysis Services),建立專門的多維數(shù)據(jù)庫,不僅在服務(wù)器資源上增加了額外的開銷,而且開發(fā)的成本要高很多,這種報(bào)表存取模式適用于企業(yè)級(jí)管理信息系統(tǒng)。

在實(shí)際開發(fā)中,對(duì)于小型常規(guī)的業(yè)務(wù)系統(tǒng),多采用視圖或存儲(chǔ)表的設(shè)計(jì)方法;對(duì)于企業(yè)級(jí)管理信息系統(tǒng),則更多采用創(chuàng)建數(shù)據(jù)倉庫的方式開發(fā)報(bào)表。

2 報(bào)表呈現(xiàn)過程的分析與設(shè)計(jì)

2.1報(bào)表呈現(xiàn)過程的數(shù)據(jù)流分析

在傳統(tǒng)的報(bào)表軟件中,報(bào)表統(tǒng)計(jì)處理單元從數(shù)據(jù)源中提取、轉(zhuǎn)換、加載數(shù)據(jù),輸出報(bào)表呈現(xiàn)給用戶。如圖1所示,數(shù)據(jù)源直接把原始數(shù)據(jù)交給報(bào)表統(tǒng)計(jì)處理單元處理。當(dāng)原始數(shù)據(jù)復(fù)雜時(shí),一方面,實(shí)現(xiàn)難度增大;另一方面,增加了報(bào)表統(tǒng)計(jì)處理單元的負(fù)載,使查詢效率降低。

在這個(gè)過程中,如果能夠把數(shù)據(jù)的提取、轉(zhuǎn)換交給數(shù)據(jù)源來完成或者增加一個(gè)數(shù)據(jù)源加載處理單元來完成這部分的數(shù)據(jù)處理,會(huì)減輕報(bào)表統(tǒng)計(jì)處理單元的負(fù)載,如圖2所示。當(dāng)數(shù)據(jù)源加載處理單元能夠在業(yè)務(wù)系統(tǒng)中運(yùn)行,不在報(bào)表系統(tǒng)中運(yùn)行,雖然會(huì)影響業(yè)務(wù)系統(tǒng)的運(yùn)行效率,但有些情況下是值得的。endprint

三種報(bào)表存取模式中,存儲(chǔ)表和數(shù)據(jù)倉庫結(jié)構(gòu)的報(bào)表存取模式,正是通過增加一個(gè)數(shù)據(jù)源加載處理單元來提取、轉(zhuǎn)換數(shù)據(jù),使得報(bào)表統(tǒng)計(jì)處理單元的實(shí)現(xiàn)難度降低、查詢效率提高。

2.2報(bào)表呈現(xiàn)過程的設(shè)計(jì)

在報(bào)表呈現(xiàn)過程的設(shè)計(jì)階段,需要進(jìn)行功能模塊設(shè)計(jì)和數(shù)據(jù)庫設(shè)計(jì)。本文以存儲(chǔ)表結(jié)構(gòu)的報(bào)表存取模式為例,討論其實(shí)施步驟。

2.2.1功能模塊設(shè)計(jì)

根據(jù)需求分析、數(shù)據(jù)流程以及模塊劃分標(biāo)準(zhǔn)設(shè)計(jì)模塊并給出具體功能。從模塊聚合性方面考慮,報(bào)表呈現(xiàn)過程的數(shù)據(jù)流是先提取、轉(zhuǎn)換業(yè)務(wù)系統(tǒng)中的原始數(shù)據(jù)并存儲(chǔ)在存儲(chǔ)表中,之后再加載存儲(chǔ)表數(shù)據(jù),生成報(bào)表。因此整個(gè)數(shù)據(jù)流可分為原始數(shù)據(jù)的提取、轉(zhuǎn)換和數(shù)據(jù)加載兩個(gè)不同時(shí)間段進(jìn)行。從模塊耦合性方面考慮,原始數(shù)據(jù)的提取、轉(zhuǎn)換和數(shù)據(jù)的加載只是通過數(shù)據(jù)交換實(shí)現(xiàn),并且控制信息的傳遞。

因此報(bào)表呈現(xiàn)過程中包括兩個(gè)功能模塊,分別是報(bào)表統(tǒng)計(jì)模塊和數(shù)據(jù)源加載模塊。報(bào)表統(tǒng)計(jì)模塊用于報(bào)表輸出和數(shù)據(jù)加載,即設(shè)計(jì)出符合客戶要求的報(bào)表樣式,并設(shè)計(jì)好數(shù)據(jù)加載接口。數(shù)據(jù)源加載模塊用于數(shù)據(jù)的提取、轉(zhuǎn)換及存儲(chǔ),即在業(yè)務(wù)系統(tǒng)的業(yè)務(wù)流中選擇適當(dāng)位置設(shè)計(jì)數(shù)據(jù)源加載模塊,獲取流經(jīng)該業(yè)務(wù)的原始數(shù)據(jù),轉(zhuǎn)換后存儲(chǔ)在存儲(chǔ)表中,并保持?jǐn)?shù)據(jù)的一致性。

2.2.2數(shù)據(jù)庫設(shè)計(jì)

報(bào)表呈現(xiàn)過程中,數(shù)據(jù)庫設(shè)計(jì)也尤為重要,這里的數(shù)據(jù)庫主要是指存儲(chǔ)表。存儲(chǔ)表可以違背完整性約束以及范式,比如不設(shè)置主鍵或者設(shè)置自增長ID作為惟一標(biāo)識(shí);允許數(shù)據(jù)存在冗余,用業(yè)務(wù)表的有關(guān)非主屬性替代之間的關(guān)系或外鍵,其目的是達(dá)到所存儲(chǔ)的數(shù)據(jù)跟視圖基本一樣。對(duì)于需要復(fù)雜計(jì)算的派生列數(shù)據(jù)項(xiàng)要留有對(duì)應(yīng)的列接收數(shù)據(jù)。

3 實(shí)例研究

筆者以五人制足球信息統(tǒng)計(jì)系統(tǒng)中的報(bào)表設(shè)計(jì)為例,對(duì)視圖和存儲(chǔ)表兩種報(bào)表存取模式及報(bào)表呈現(xiàn)過程的分析設(shè)計(jì)思想進(jìn)一步分析與討論。本系統(tǒng)開發(fā)平臺(tái)為ASP.NET和SQL Server,主要完成系統(tǒng)管理、賽前管理、賽后管理和比賽報(bào)告等四大功能模塊。系統(tǒng)業(yè)務(wù)中涉及的用戶主要有裁判員、比賽監(jiān)督員、賽區(qū)工作人員、體協(xié)管理員。主要業(yè)務(wù)描述如下:①裁判員在賽后登記裁判報(bào)告;②比賽監(jiān)督員在賽后登記比賽監(jiān)督報(bào)告;③賽區(qū)工作人員在賽后登記賽區(qū)工作報(bào)告;④體協(xié)管理員審核報(bào)告并做出停賽處理以及扣分罰款處理。

比賽報(bào)告模塊作為本系統(tǒng)的核心模塊,其包括裁判報(bào)告、比賽監(jiān)督報(bào)告、賽區(qū)工作報(bào)告、積分榜、射手榜、停賽公告、扣分罰款統(tǒng)計(jì)等7張報(bào)表。在分析每張報(bào)表的數(shù)據(jù)來源時(shí),發(fā)現(xiàn)裁判報(bào)告、比賽監(jiān)督報(bào)告、賽區(qū)工作報(bào)告以及射手榜、積分榜的業(yè)務(wù)規(guī)則較簡單,其數(shù)據(jù)源大多來自一兩張表并且不需要對(duì)原始數(shù)據(jù)后續(xù)處理,容易創(chuàng)建視圖,得出符合要求的報(bào)表。射手榜報(bào)表數(shù)據(jù)源的創(chuàng)建視圖代碼如圖3所示。

從代碼量我們可看出代碼量極少,最終報(bào)表呈現(xiàn)的效果如圖4所示。這類業(yè)務(wù)規(guī)則簡單的報(bào)表,視圖方式顯然是更優(yōu)的選擇。

而停賽公告和扣分罰款統(tǒng)計(jì)的業(yè)務(wù)規(guī)則比較復(fù)雜。以停賽公告為例,其業(yè)務(wù)規(guī)則如下:當(dāng)1名隊(duì)員比賽時(shí)得到1張紅牌或者黃牌累計(jì)達(dá)到3張時(shí),要求停賽1次;停賽場(chǎng)序由體協(xié)管理員審核完賽事報(bào)告后,繼續(xù)處理;如需要額外停賽,由體系管理員后續(xù)處理。報(bào)表輸出還要求同一隊(duì)員累加停賽場(chǎng)數(shù),最終輸出1張信息自上而下累加的停賽公告報(bào)表。若以創(chuàng)建視圖的方式,查詢語句極其復(fù)雜,因此存儲(chǔ)表的存取模式是最佳的選擇。

在數(shù)據(jù)庫設(shè)計(jì)方面,停賽公告存儲(chǔ)表的關(guān)系模式是停賽公告表(編號(hào),賽事年度,賽事輪數(shù),賽事場(chǎng)序,球隊(duì)名稱,隊(duì)員名稱,隊(duì)員號(hào)碼,停賽場(chǎng)序,累積黃牌,累計(jì)紅牌,累計(jì)停賽,停賽原因,處理狀態(tài))。停賽公告存儲(chǔ)表的關(guān)系模式顯然不滿足完整性約束和范式,更接近報(bào)表的數(shù)據(jù)源。

在功能模塊設(shè)計(jì)方面,賽事審核時(shí),設(shè)計(jì)數(shù)據(jù)源加載模塊,獲取紅黃牌數(shù)據(jù),轉(zhuǎn)換為停賽數(shù)據(jù),控制信息的傳遞,保證數(shù)據(jù)一致性,并更新停賽存儲(chǔ)表,供用戶后續(xù)處理后輸出報(bào)表。處理代碼如圖5所示。

報(bào)表統(tǒng)計(jì)模塊的設(shè)計(jì)相對(duì)容易,從存儲(chǔ)表中加載數(shù)據(jù),綁定到報(bào)表中,并輸出報(bào)表。停賽公告報(bào)表呈現(xiàn)的效果如圖6所示。

4 結(jié)語

筆者通過比較三種報(bào)表存取模式的差別及分析表格類報(bào)表的設(shè)計(jì)方法,就報(bào)表呈現(xiàn)過程中如何降低報(bào)表的實(shí)現(xiàn)難度和如何優(yōu)化報(bào)表的查詢性能等問題,提出解決方案,并給出實(shí)例。在設(shè)計(jì)報(bào)表呈現(xiàn)過程時(shí),如果業(yè)務(wù)規(guī)則較簡單,選擇視圖作為報(bào)表的數(shù)據(jù)來源比較合適;如果業(yè)務(wù)規(guī)則復(fù)雜且報(bào)表有特殊要求,選擇存儲(chǔ)表或數(shù)據(jù)倉庫作為數(shù)據(jù)來源更合適。然而存儲(chǔ)表這種報(bào)表存取模式實(shí)際上可以理解為一種小型的數(shù)據(jù)倉庫。筆者并沒有提出一種介于數(shù)據(jù)倉庫和視圖之間的新模式替代存儲(chǔ)表。這是本文存在的不足,也有待進(jìn)一步研究探討。

(本文責(zé)任編輯:孫國雷)endprint

主站蜘蛛池模板: 亚洲综合专区| 拍国产真实乱人偷精品| 青青草原国产| 亚洲成人在线免费观看| 欧美三級片黃色三級片黃色1| 黄色网址免费在线| 国产精品999在线| 欧美在线黄| 欧美福利在线| 国产成人a在线观看视频| 中文字幕av一区二区三区欲色| 亚洲精品福利视频| 国产精品亚洲精品爽爽| 亚洲精品制服丝袜二区| 国产精品毛片一区视频播| 尤物精品视频一区二区三区| 欧美精品亚洲日韩a| 欧美一级黄色影院| 99精品福利视频| 国产喷水视频| 国产女人水多毛片18| 免费国产小视频在线观看| 色偷偷男人的天堂亚洲av| 色综合狠狠操| 国产成人精品日本亚洲77美色| 国产亚洲精品97在线观看| 国产黄视频网站| 久久中文字幕av不卡一区二区| 国产午夜一级毛片| 无码电影在线观看| 国产欧美亚洲精品第3页在线| 午夜不卡视频| 亚洲日韩精品无码专区| 亚洲国产成人久久精品软件| 亚洲欧美一区二区三区麻豆| 午夜福利视频一区| 国产成人喷潮在线观看| 亚洲精品卡2卡3卡4卡5卡区| 日韩小视频在线观看| 国产欧美在线| 精品无码一区二区三区电影| 刘亦菲一区二区在线观看| 99在线观看免费视频| 久久精品国产精品一区二区| 国产99精品久久| 亚洲美女操| 亚洲成人精品在线| 亚洲另类色| 先锋资源久久| 欧美日韩在线国产| 啪啪永久免费av| 欧美高清三区| 久久a级片| 国产精品成人免费视频99| 免费国产一级 片内射老| 97无码免费人妻超级碰碰碰| 亚洲黄网视频| 国产玖玖玖精品视频| av在线无码浏览| 日韩无码一二三区| 久久黄色视频影| 精品国产免费观看一区| 亚洲第一香蕉视频| 久久鸭综合久久国产| 波多野结衣的av一区二区三区| 国产精品第页| 欧美精品不卡| 国产福利在线观看精品| 99久久无色码中文字幕| 国产91全国探花系列在线播放| 97se亚洲综合在线天天| 亚洲欧美自拍中文| 国产丝袜精品| 国产草草影院18成年视频| 国产大片喷水在线在线视频| 欧美一区二区三区香蕉视| 91国内在线观看| 日韩经典精品无码一区二区| 亚洲综合精品第一页| 欧美在线导航| 欧美精品另类| 国产成人做受免费视频|