第一篇:學(xué)術(shù)論文標(biāo)準(zhǔn)格式規(guī)范
摘要的定義與三類摘要的寫法
國際標(biāo)準(zhǔn)iso214-1976指出:摘要是一份文獻(xiàn)內(nèi)容的準(zhǔn)確壓縮,不加解釋或評論。中國國家標(biāo)準(zhǔn)規(guī)定:摘要是報(bào)告、論文的內(nèi)容不加注釋和評論的簡短陳述。摘要是讀者判斷論文價值,判斷論文是否值得閱讀的依據(jù)。會議所征摘要是決定是否錄用全文的依據(jù)。寫好摘要是科技人員寫作所必備的基本功。如果一篇內(nèi)容價值較高的學(xué)術(shù)論文,其摘要寫得平平淡淡,不能體現(xiàn)論文的特點(diǎn)和學(xué)術(shù)價值,將帶來一系列不利影響:失去被刊載的機(jī)會,需要本文的讀者不會閱讀全文,從而失去應(yīng)有的學(xué)術(shù)影響;對中文期刊論文而言,難以進(jìn)入國際檢索系統(tǒng)等。
摘要分為報(bào)道性摘要、指示性摘要、報(bào)道—指示性摘要、結(jié)構(gòu)性摘要等種類。學(xué)術(shù)期刊多采用報(bào)道性摘要,特別是試驗(yàn)研究和有定量數(shù)據(jù)的論文。對新內(nèi)容較少,或數(shù)據(jù)少的論文用指示性摘要或報(bào)道—指示性摘要。摘要的內(nèi)容一般由3部分組成:研究目的,研究方法,研究結(jié)果或結(jié)論。中文摘要一般200-300字,外文摘要字?jǐn)?shù)不超過250個實(shí)詞。摘要的詳簡程度和篇幅大小根據(jù)具體情況及要求而定,如期刊論文摘要、會議征稿摘要、博士學(xué)位論文摘要的差別很大。期刊論文摘要通常位于署名和單位地址之后。
1.1 報(bào)道性摘要
報(bào)道性摘要要求反映作者的主要成果,提供比較完整的定量及定性信息。篇幅一般為200-300字。示例如下:
示例1:(題名:bisrcacuo高溫超導(dǎo)纖維)
采用激光加熱小基座法(lhpg)成功地制備出bisrcacuo超導(dǎo)纖維。它性能穩(wěn)定,工藝可重復(fù)性高。纖維最大長度達(dá)60mm,直徑范圍35-500um,其中細(xì)徑纖維有撓性。超導(dǎo)纖維的起始轉(zhuǎn)變溫度為118k,零電阻溫度為87k,臨近電流密度為2.5ka/cm2(77k,h=0,直流電流量)。纖維中超導(dǎo)相(2212相),顯微結(jié)構(gòu)有典型的取向性。纖維的超導(dǎo)電性與其生長條件及后處理過程密切相關(guān)。首次指出,a軸平行于纖維的軸向。
示例2:(篇名: 約瑟夫森結(jié)alx-al隧道勢壘的實(shí)驗(yàn)研究)
通過x光電子能譜、陽極氧化電壓譜和fiske臺階電壓的測量,研究了約瑟夫森結(jié)中alox-al隧道勢壘。發(fā)現(xiàn)結(jié)的隧道勢壘最佳沉積al層厚度為7nm,al上形成了alox厚度只取決于氧化條件,與沉積al厚無關(guān),勢壘al氧化物可能含有一個像alooh態(tài)的oh基團(tuán)。
1.2 指示性摘要
指示性摘要的目的是使讀者對論文有一個概括的了解,適用于新內(nèi)容較少,或數(shù)據(jù)少的論文。篇幅一般為50-100字。示例如下:
示例1:(題名 :冷軋槽楔外端與摩擦影響的定量分析)
建立了與avitzuer不同的連續(xù)速度場,經(jīng)變上限積分與參量積分求的槽楔冷軋變形力上界解解,并側(cè)重定量的討論了外端與摩擦對變形力的影響。
示例2:(題名 :白薯線蟲的防治)
對密西西比州種植的白薯由于根節(jié)線蟲所引起的問題作了討論,敘述了1967年由蔬菜收獲分公司實(shí)驗(yàn)站所進(jìn)行的商品熏劑和殺蟲劑的試驗(yàn)。對行間撒播的施用方法作了比較。列出了包括商品殺線蟲劑vorlex、dow wv w─85、dd和試驗(yàn)的固體殺線蟲劑68 138及dasanit的試驗(yàn)結(jié)果。
示例3:(題名:湘江水體中硒的分布)
[目的] 為給綜合防治污染提供一定依據(jù),對湘江水體中硒的分布進(jìn)行了探討。
[方法] 在湘江上游興安縣至洞庭湖的河口采集了28個底泥樣品, 用氣相色譜法進(jìn)行分析。
[結(jié)果] 結(jié)果表明湘江底泥已受到不同程度的污染,其中有些硒含量超過本底值數(shù)的十倍甚至百倍,大多數(shù)樣品中硒含量較一般土壤和底泥為高。還分析了污染嚴(yán)重的霞灣港水樣,結(jié)果表明此段江水中硒含量尚不高,在地面水最高容許濃度范圍內(nèi)。
1.3 報(bào)道—指示性摘要
報(bào)道—指示性摘要是對論文中價值最高部分內(nèi)容采用報(bào)道性摘要,其余部分以指示性摘要報(bào)道。篇幅一般為100-200字。
示例1:(題名:柴油機(jī)燃用棉籽油的試驗(yàn)研究)
介紹了不經(jīng)任何改裝的s195型柴油機(jī)燃用棉籽油與柴油混合油或純棉籽油的試驗(yàn)研究情況。結(jié)果表明,燃用棉柴混合油或純棉籽油時,發(fā)動機(jī)性能良好,無異常現(xiàn)象;適當(dāng)調(diào)整供油提前角、加大循環(huán)供油量,可以達(dá)到原機(jī)功率,而且煙度有所下降。還分析了s195型柴油機(jī)在試驗(yàn)工況下的燃燒特性和放熱規(guī)律。寫作中的常見問題
要有摘要與論文分離單獨(dú)出版的寫作思想,對隨文摘要,不要認(rèn)為“全文在后邊”,編寫摘要可簡單、隨便。
應(yīng)用“用(采用)...方法”、“報(bào)告了...現(xiàn)狀”、“進(jìn)行了...調(diào)查”等記述方法編寫摘要。即,要用第三人稱編寫,不要用第一、二人稱編寫,不要用“本文”、“我們”、“作者”、“this paper“、”this articles"等作為主語。
不用圖表、示意圖、公式、結(jié)構(gòu)式和非公用的符號和術(shù)語。
要采用規(guī)范化的名詞術(shù)語、縮略語、略語、代號、法定計(jì)量單位、簡化字和標(biāo)點(diǎn)符號。
避免與標(biāo)題和引言在用詞上明顯重復(fù),忌羅列正文中目次,小標(biāo)題和段落標(biāo)題,或結(jié)論部分的文字。
要排除在本學(xué)科領(lǐng)域已成為常識的內(nèi)容和教材中已有的東西。
除非該論文證實(shí)或否定了他人已出版的著作,否則不必引用。
不要作自我評價。如:本文以變量代換為工具,利用高等代數(shù)的知識,證明了齊線性微分方程組的降階定理,給出了一種實(shí)際的解題方法。因此,這個結(jié)論的證明不僅具有一定的理論意義,而且在解題過程中也具有重要的指導(dǎo)意義。
不要對題名等進(jìn)行注解。如論文“分類指導(dǎo)重點(diǎn)突破加速農(nóng)機(jī)化步伐”的摘要寫成:農(nóng)機(jī)化是農(nóng)業(yè)生產(chǎn)力發(fā)展到一定階段的必然過程,是現(xiàn)代農(nóng)業(yè)的產(chǎn)物,在我國它的發(fā)展只能與農(nóng)村經(jīng)濟(jì)發(fā)展水平相適用。因此分類指導(dǎo)即根據(jù)不同經(jīng)濟(jì)力、生產(chǎn)組織形式和現(xiàn)實(shí)物質(zhì)技術(shù)條件,進(jìn)行有效地指導(dǎo)、協(xié)調(diào)、組織帶層次性的農(nóng)機(jī)化生產(chǎn)。重點(diǎn)突破即在提高經(jīng)濟(jì)效率的前提下,在“化”水平上有所突破。成功寫作摘要的要點(diǎn)
摘要寫作成功的訣竅是突出新貢獻(xiàn),并使之尖銳化。用精辟語句使新東西出現(xiàn)在摘要的突出位置。所謂新貢獻(xiàn)包括:新技術(shù)、新理論、新方法、新觀點(diǎn)、新規(guī)律、糾正前人錯誤、解決爭議、補(bǔ)充和發(fā)展前人成果等。有的作者常常不在摘要中體現(xiàn)重要的研究成果,而到論文的后部分經(jīng)分析推論等才指明,這是錯誤的觀點(diǎn)和寫作方式。
使自己新貢獻(xiàn)尖銳化。即區(qū)別他人工作和自己新貢獻(xiàn)不同之處(如:“想法”、“設(shè)想”和“已給出數(shù)學(xué)定義、模型”等的區(qū)別),使之分離,使自己新東西尖銳化。新貢獻(xiàn)不要多談,要精辟。不能模棱兩可,讓讀者去分析作者的貢獻(xiàn)“新”在何處。而應(yīng)指出來讓讀者看。但不能自我評價。
第二篇:標(biāo)準(zhǔn)規(guī)范
13.4 環(huán)境管理
13.4.1項(xiàng)目部應(yīng)根據(jù)批準(zhǔn)的建設(shè)項(xiàng)目環(huán)境影響報(bào)告,編制用于指導(dǎo)項(xiàng)目實(shí)施過程的項(xiàng)目環(huán)境保護(hù)計(jì)劃,其主要內(nèi)容包括:項(xiàng)目環(huán)境保護(hù)的目標(biāo)及主要指標(biāo)。項(xiàng)目環(huán)境保護(hù)的實(shí)施方案。項(xiàng)目環(huán)境保護(hù)所需的人力、物力、財(cái)力和技術(shù)等資源的專項(xiàng)計(jì)劃。項(xiàng)目環(huán)境保護(hù)所需的技術(shù)研發(fā)、技術(shù)攻關(guān)等工作。落實(shí)防治環(huán)境污染和生態(tài)破壞的措施,以及環(huán)境保護(hù)設(shè)施的投資估算。
13.4.2項(xiàng)目項(xiàng)目環(huán)境保護(hù)計(jì)劃應(yīng)按規(guī)定程序經(jīng)批準(zhǔn)后實(shí)施。
13.4.3項(xiàng)目部應(yīng)對項(xiàng)目環(huán)境保護(hù)計(jì)劃的實(shí)施進(jìn)行管理。主要內(nèi)容包括:明確各崗位的環(huán)境保護(hù)職責(zé)和權(quán)限。落實(shí)項(xiàng)目環(huán)境保護(hù)職責(zé)和權(quán)限。對項(xiàng)目參加人員應(yīng)進(jìn)行環(huán)境保護(hù)的教育和培訓(xùn),提高環(huán)境保護(hù)意識和工作能力。4 對于環(huán)境因素和環(huán)境管理體系的有關(guān)信息進(jìn)行管理,保證內(nèi)部與外部信息溝通的有效性,保證隨時識別到潛在的影響環(huán)境的因素或緊急情況,并預(yù)防或減少可能伴隨的環(huán)境影響。負(fù)責(zé)落實(shí)環(huán)保部門對施工階段的環(huán)保要求,以及施工過程中的環(huán)保措施,對施工現(xiàn)場的環(huán)境進(jìn)行有效控制,防止職業(yè)危害,建立良好的工作環(huán)境。施工階段的環(huán)境保護(hù)應(yīng)按《建設(shè)工程項(xiàng)目管理規(guī)范》GB/T50326執(zhí)行。項(xiàng)目配套建設(shè)的環(huán)境保護(hù)設(shè)施必須與主體工程同時投入試運(yùn)行。項(xiàng)目部應(yīng)對環(huán)境 保護(hù)設(shè)施運(yùn)行和建設(shè)項(xiàng)目對環(huán)境的影響進(jìn)行檢查和監(jiān)測。建設(shè)項(xiàng)目竣工后,應(yīng)當(dāng)向?qū)徟摻ㄔO(shè)項(xiàng)目環(huán)境影響報(bào)告書的環(huán)境保護(hù)行政主管部門,申請對該建設(shè)項(xiàng)目需要配套建設(shè)的環(huán)境保護(hù)設(shè)施進(jìn)行竣工驗(yàn)收。環(huán)境保護(hù)設(shè)施竣工驗(yàn)收,應(yīng)當(dāng)與主體工程竣工驗(yàn)收同期進(jìn)行。
13.4.4項(xiàng)目部應(yīng)制定并執(zhí)行項(xiàng)目環(huán)境巡視檢查和定期檢查的制度,記錄并保存檢查的結(jié)果。13.4.5項(xiàng)目部應(yīng)建立并保持對環(huán)境管理不符合狀況的處理和調(diào)差程序,明確有關(guān)職責(zé)和權(quán)限,實(shí)施糾正和預(yù)防措施,減少產(chǎn)生環(huán)境影響并防止問題的再次發(fā)生。
第三篇:標(biāo)準(zhǔn)規(guī)范
天津市智慧城市項(xiàng)目研發(fā)管理平臺項(xiàng)
目軟件部分 標(biāo)準(zhǔn)規(guī)范
2017年4月
詳細(xì)調(diào)研報(bào)告書
詳細(xì)調(diào)研報(bào)告書
2.3 可靠性和穩(wěn)定性
設(shè)計(jì)時要采用可靠的技術(shù),系統(tǒng)各環(huán)節(jié)具備故障分析與恢復(fù)和容錯能力,在安全體系建設(shè)、復(fù)雜環(huán)節(jié)解決方案和系統(tǒng)切換等各方面考慮周到、切實(shí)可行,建成的系統(tǒng)安全可靠,穩(wěn)定性強(qiáng),從而把各種可能存在的風(fēng)險降至最低。
2.4 安全性和保密性
系統(tǒng)設(shè)計(jì)應(yīng)把安全性放在首位,既要考慮信息資源的充分共享,也要考慮信息的保護(hù)和隔離;系統(tǒng)應(yīng)該在各個層次對訪問進(jìn)行控制,設(shè)置嚴(yán)格的操作權(quán)限;并充分利用日志系統(tǒng)、健全的備份和恢復(fù)策略增強(qiáng)系統(tǒng)的安全性。
2.5 可擴(kuò)展性和易維護(hù)性
設(shè)計(jì)時應(yīng)充分考號百集團(tuán)集約化平臺業(yè)務(wù)在未來若干年內(nèi)的發(fā)展趨勢,具有一定的前瞻性,并充分考慮系統(tǒng)升級、擴(kuò)容、擴(kuò)充和維護(hù)的可行性;并針對本系統(tǒng)涉及用戶量、數(shù)據(jù)量特點(diǎn),充分考慮如何大幅度提高業(yè)務(wù)處理的響應(yīng)速度以及統(tǒng)計(jì)匯總的速度和精度。
軟件設(shè)計(jì)時應(yīng)充分考慮整個應(yīng)用系統(tǒng)的靈活要求,隨用戶需求的改變而及時調(diào)整,通過合理的模塊劃分,實(shí)現(xiàn)應(yīng)用軟件對業(yè)務(wù)變更或軟件技術(shù)發(fā)展的靈活適應(yīng)能力,保證系統(tǒng)在后續(xù)的發(fā)展中具有良好的擴(kuò)展性、升級和維護(hù)性。
2.6 整體性和開放性
系統(tǒng)設(shè)計(jì)應(yīng)按照“統(tǒng)一建設(shè),集中管控”的要求進(jìn)行整體設(shè)計(jì),注重各種信息資源的有機(jī)整合;既要考慮安全性,同時也要考慮具有一定的開放性,把握好
詳細(xì)調(diào)研報(bào)告書
信息共享和信息安全之間的關(guān)系。
2.7 相關(guān)技術(shù)設(shè)計(jì)
2.7.1 基于WEB2.0技術(shù)的富客戶端
在技術(shù)方面,本系統(tǒng)將采用Web2.0應(yīng)用中的核心技術(shù)——Ajax實(shí)現(xiàn)給用戶帶來更好使用體驗(yàn)的富客戶端應(yīng)用功能。Ajax用來描述一組技術(shù),它使瀏覽器可以為用戶提供更為自然的瀏覽體驗(yàn)。在Ajax之前,Web站點(diǎn)強(qiáng)制用戶進(jìn)入提交/等待/重新顯示范例,用戶的動作總是與服務(wù)器的“思考時間”同步。Ajax提供與服務(wù)器異步通信的能力,從而使用戶從請求/響應(yīng)的循環(huán)中解脫出來。借助于Ajax,可以在用戶單擊按鈕時,使用JavaScript和DHTML立即更新UI,并向服務(wù)器發(fā)出異步請求,以執(zhí)行更新或查詢數(shù)據(jù)庫。當(dāng)請求返回時,就可以使用JavaScript和CSS來相應(yīng)地更新UI,而不是刷新整個頁面。最重要的是,用戶甚至不知道瀏覽器正在與服務(wù)器通信:Web站點(diǎn)看起來是即時響應(yīng)的。雖然Ajax所需的基礎(chǔ)架構(gòu)已經(jīng)出現(xiàn)了一段時間,但直到最近異步請求的真正威力才得到利用。能夠擁有一個響應(yīng)極其靈敏的Web站點(diǎn)確實(shí)激動人心,因?yàn)樗罱K允許開發(fā)人員和設(shè)計(jì)人員使用標(biāo)準(zhǔn)的HTML/CSS/JavaScript堆棧創(chuàng)建“桌面風(fēng)格的(desktop-like)”可用性。
Ajax的核心是JavaScript對象XmlHttpRequest。該對象在Internet Explorer 5中首次引入,它是一種支持異步請求的技術(shù)。簡而言之,XmlHttpRequest使您可以使用JavaScript向服務(wù)器提出請求并處理響應(yīng),而不阻塞用戶。
在創(chuàng)建Web應(yīng)用時,在客戶端執(zhí)行屏幕更新為用戶提供了很大的靈活性。
詳細(xì)調(diào)研報(bào)告書
使用Ajax可以為系統(tǒng)提供以下特性的功能:
動態(tài)更新也沒數(shù)據(jù)和內(nèi)容,無需用戶單擊Update并等待服務(wù)器重新發(fā)送整個頁面。
提升站點(diǎn)的性能,這是通過減少從服務(wù)器下載的數(shù)據(jù)量而實(shí)現(xiàn)的。例如如果使用Ajax計(jì)算新的總量,服務(wù)器只會返回新的總量值,因此所需的帶寬僅為原來的百分之一。
消除了每次用戶輸入時的頁面刷新。例如,在Ajax中,如果用戶在分頁列表上單擊Next,則服務(wù)器數(shù)據(jù)只刷新列表而不是整個頁面。
直接編輯表格數(shù)據(jù),而不是要求用戶導(dǎo)航到新的頁面來編輯數(shù)據(jù)。對于Ajax,當(dāng)用戶單擊Edit時,可以將靜態(tài)表格刷新為內(nèi)容可編輯的表格。用戶單擊Done之后,就可以發(fā)出一個Ajax請求來更新服務(wù)器,并刷新表格,使其包含靜態(tài)、只讀的數(shù)據(jù)。
2.7.2 將OOD和AOP進(jìn)行有效結(jié)合徹底解決系統(tǒng)緊耦合及橫切面問題
面向?qū)ο笤O(shè)計(jì)最根本的魅力在于,它能夠?qū)⒄鎸?shí)世界領(lǐng)域中的實(shí)體及各自的行為建模為抽象的對象。以面向?qū)ο蠓绞皆O(shè)計(jì)的系統(tǒng)產(chǎn)生了很多有效的業(yè)務(wù)對象,比如Person、Account、Order以及Event。面向?qū)ο笤O(shè)計(jì)的缺點(diǎn)在于,這樣的業(yè)務(wù)對象會因?yàn)榛旌系膶傩院团c對象最初意圖不一致的操作而變得混亂。
通過使設(shè)計(jì)者運(yùn)用動態(tài)和靜態(tài)橫切,用一種非強(qiáng)制性的整潔和模塊化的方法來添加對象行為,面向方面編程有效地解決了這一問題。
1)AOP的優(yōu)勢:
? 使糾纏不清的代碼更少;
詳細(xì)調(diào)研報(bào)告書
? 使代碼更短;
? 使應(yīng)用程序的維護(hù)及發(fā)展更容易; ? 使應(yīng)用程序更容易調(diào)試、重構(gòu)及修改; ? 使代碼更容易復(fù)用。2)橫切定義:
橫切是面向方面編程的專有名詞。它指的是在一個給定的編程模型中穿越既定的職責(zé)部分(比如日志記錄和性能優(yōu)化)的操作。在橫切的世界里,橫切有兩種類型:動態(tài)橫切和靜態(tài)橫切。
3)動態(tài)橫切:
動態(tài)橫切是通過切入點(diǎn)和連接點(diǎn)在一個 方面 中創(chuàng)建行為的過程,連接點(diǎn)可以在執(zhí)行時橫向地應(yīng)用于現(xiàn)有對象。動態(tài)橫切通常用于幫助向?qū)ο髮哟沃械母鞣N方法添加日志記錄或身份認(rèn)證。下面讓我們花點(diǎn)時間了解一下動態(tài)橫切中的一些實(shí)際概念:
方面(aspect)類似于Java編程語言中的類。方面定義切入點(diǎn)和通知(advice),并由諸如 AspectJ這樣的方面編譯器來編譯,以便將橫切(包括動態(tài)的和靜態(tài)的)織入(interweave)現(xiàn)有的對象中。
一個連接點(diǎn)(join point)是程序執(zhí)行中一個精確執(zhí)行點(diǎn),比如類中的一個方法。例如,對象Foo中的方法bar()就可以是一個連接點(diǎn)。連接點(diǎn)是個抽象的概念;不用主動定義一個連接點(diǎn)。
一個切入點(diǎn)(pointcut)本質(zhì)上一個用于捕捉連接點(diǎn)的結(jié)構(gòu)。例如,可以定義一個切入點(diǎn)來捕捉對對象Foo中的方法 bar()的所有調(diào)用。和連接點(diǎn)相反,切入點(diǎn)需要在方面中定義。
通知(advice)是切入點(diǎn)的可執(zhí)行代碼。一個經(jīng)常定義的通知是添加日志記錄功能,其中切入點(diǎn)捕捉對對象Foo中的bar()的每個調(diào)用,然后該通知動態(tài)地插入一些日志記錄功能,比如捕捉 bar()的參數(shù)。
4)靜態(tài)橫切:
詳細(xì)調(diào)研報(bào)告書
靜態(tài)橫切和動態(tài)橫切的區(qū)別在于它不修改一個給定對象的執(zhí)行行為。相反,它允許通過引入附加的方法字段和屬性來修改對象的結(jié)構(gòu)。此外,靜態(tài)橫切可以把擴(kuò)展和實(shí)現(xiàn)附加到對象的基本結(jié)構(gòu)中。
雖然現(xiàn)在還無法談及靜態(tài)橫切的普遍使用——它看起來是AOP的一個相對未被探索(盡管非常具有吸引力)的特性——然而這一技術(shù)蘊(yùn)含的潛力是巨大的。使用靜態(tài)橫切,架構(gòu)師和設(shè)計(jì)者能用一種真正面向?qū)ο蟮姆椒ㄓ行У亟?fù)雜系統(tǒng)的模型。靜態(tài)橫切允許您不用創(chuàng)建很深的層次結(jié)構(gòu),以一種本質(zhì)上更優(yōu)雅、更逼真于現(xiàn)實(shí)結(jié)構(gòu)的方式,插入跨越整個系統(tǒng)的公共行為。
2.7.3 采用Portal門戶技術(shù)整合系統(tǒng)內(nèi)各種應(yīng)用資源
Portal的主要目的是使用戶可以有效的整合號百集團(tuán)集約化平臺及其它應(yīng)用資源,使用戶可以使用單一的入口訪問多種類型信息。無論信息存儲在何處、無論信息的格式如何,Portal都可以按照用戶喜好的方式個性化地收集、展現(xiàn)這些信息,并能夠由多種類型的設(shè)備(如PC 的Web 瀏覽器,或WAP移動電話上的瀏覽器)來對這些信息進(jìn)行存取。
Portal是新一代的工作臺,對內(nèi)部用戶而言,所有的內(nèi)部用戶都可以在這樣一個工作平臺上進(jìn)行日常工作。Portal給內(nèi)部用戶提供了依據(jù)各自權(quán)限的、個性化的工作界面,通過該界面可以對后端核心業(yè)務(wù)系統(tǒng)和其他應(yīng)用系統(tǒng)進(jìn)行訪問。
Portal 不但提供給外部用戶統(tǒng)一的服務(wù)界面,而且還可以通過Portal提供的集成能力,在預(yù)先指定的權(quán)限范圍內(nèi)訪問其他應(yīng)用系統(tǒng),進(jìn)行一些自助服務(wù)。通過網(wǎng)絡(luò)方式,為外部用戶提供自助服務(wù)能力無疑會有極大的方便。
基于前面提到的子系統(tǒng)的框架結(jié)構(gòu)和共性基礎(chǔ)支撐模塊,對資源的封裝和提供進(jìn)行分析。針對不同的資源,包括信息、數(shù)據(jù)、內(nèi)容、應(yīng)用等,信息服務(wù)系統(tǒng)需要進(jìn)行統(tǒng)一的封裝后再向外提供服務(wù)。
資源的封裝首先將資源規(guī)范于不同的Portlet,每個Portlet是資源展現(xiàn)的
詳細(xì)調(diào)研報(bào)告書
最小單位,可以是信息的展現(xiàn)、應(yīng)用入口、交互功能等各種形態(tài)。
對于Portlet,可以依據(jù)不同的頁面模版進(jìn)行組織,模版可以自定義,將Portlet依照模版進(jìn)行所見即所得的頁面布局,既可以形成不同的資源組合(一個頁面可以由一個或者多個Portlet,按照模版組合而成),頁面也是資源展現(xiàn)的
詳細(xì)調(diào)研報(bào)告書
時性能監(jiān)測的方式來確認(rèn)和查找問題,LoadRunner 能夠?qū)φ麄€系統(tǒng)架構(gòu)進(jìn)行測試。通過使用LoadRunner能最大限度地縮短測試時間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。
2.9 系統(tǒng)安全設(shè)計(jì)
針對號百集團(tuán)公司號百集團(tuán)集約化平臺項(xiàng)目情況,我們從訪問控制、安全審計(jì)、信息保護(hù)、通信完整性、通信保密性、抗抵賴、軟件容錯和資源控制等幾個方面對應(yīng)用安全方面的進(jìn)行設(shè)計(jì)。我們針對上述幾個方面的安全要求分別進(jìn)行了如下的安全設(shè)計(jì):
2.9.1 訪問控制
用戶操作的訪問權(quán)限控制是針對可能出現(xiàn)的網(wǎng)絡(luò)非法操作而采取安全保護(hù)措施。用戶和用戶組被賦予一定的操作權(quán)限。操作的訪問權(quán)限控制可以分為多個層面,從粗粒度的方面可以分為系統(tǒng)級、界面級(或菜單級)、頁面級(流程級)、字段級(按鈕級),通過多個層面的配置訪問控制,真正做到精確、精細(xì)管理。管理員能夠通過設(shè)置,指定用戶和用戶組可以訪問系統(tǒng)中的哪些功能。
1)系統(tǒng)級權(quán)限
應(yīng)用系統(tǒng)的訪問的是分級別的,部分管理或配置類的子系統(tǒng)是需要二次授權(quán)才可以訪問的。
2)功能級(菜單級)權(quán)限
通過系統(tǒng)中的統(tǒng)一授權(quán)和管理平臺,設(shè)置號百集團(tuán)公司各級用戶、組織、角色的功能訪問權(quán)限、訪問策略、訪問機(jī)制??梢郧逦莆彰總€人擁有多少功能,同時可以清晰了解每個功能分配給了多少人或角色。
3)頁面級(流程級)權(quán)限
系統(tǒng)對頁面級的訪問控制可以分為兩大類:非流程類和流程類。非流程類頁面可以直接通過統(tǒng)一授權(quán)和管理平臺授權(quán)訪問控制;流程類頁面通過與工作流結(jié)合進(jìn)行訪問控制,即頁面的訪問控制與工作流模板的啟動人員、工作流節(jié)點(diǎn)的參與人員、工作流變量的值等因素有密切關(guān)系。
詳細(xì)調(diào)研報(bào)告書
2.9.2 安全審計(jì)
設(shè)計(jì)數(shù)據(jù)安全審計(jì)的首要問題,是保證號百集團(tuán)集約化平臺中的數(shù)據(jù)的不可篡改性和所有必要操作的可追溯性。系統(tǒng)通過對數(shù)據(jù)采編、錄入、修改、刪除等操作進(jìn)行逐一記錄,保證了數(shù)據(jù)變更的合法性可審計(jì),從而實(shí)現(xiàn)可信的安全審計(jì)。系統(tǒng)對各種操作事件的詳細(xì)記錄包括:事件的日期、時間、發(fā)起者信息、類型、描述和結(jié)果等。
設(shè)計(jì)數(shù)據(jù)安全審計(jì)的另一個重要問題,是保證業(yè)務(wù)過程的規(guī)范性、不可篡改性和審批過程的全面細(xì)致記錄。通過對整個業(yè)務(wù)過程、數(shù)據(jù)審批流程操作的細(xì)致全面的記錄(通過流程實(shí)例庫記錄),實(shí)現(xiàn)對審批事件的審計(jì),包括:事件的日期、時間、發(fā)起者信息、類型、描述和結(jié)果等。
2.9.3 信息保護(hù)
針對用戶鑒別信息所在的存儲空間的剩余信息安全問題,我們采用基于Web開發(fā)的網(wǎng)絡(luò)應(yīng)用中使用Session和Cookies來保存用戶鑒別信息。
Session: Web中的Session指的就是用戶在瀏覽某個網(wǎng)站時,從進(jìn)入網(wǎng)站到瀏覽器關(guān)閉所經(jīng)過的這段時間,也就是用戶瀏覽這個網(wǎng)站所花費(fèi)的時間。因此從上述的定義中我們可以看到,Session實(shí)際上是一個特定的時間概念。需要注意的是,一個Session的概念需要包括特定的客戶端,特定的服務(wù)器端以及不中斷的操作時間。A用戶和C服務(wù)器建立連接時所處的Session同B用戶和C服務(wù)器中建立連接時所處的Sessions是兩個不同的Session。Session解決方案,就是要提供定義全局變量的方法,使得這個全局變量在同一個Session中對于所有的腳本都有效。上面我們提到了,Session不是一個簡單的時間概念,一個Session中還包括了特定的用戶和服務(wù)器。因此更詳細(xì)地講,在一個Session定義的全局變量的作用范圍,是指這個Session所對應(yīng)的用戶所訪問的所有頁面。
Cookies:是一種能夠讓網(wǎng)站服務(wù)器把少量數(shù)據(jù)儲存到客戶端的硬盤或內(nèi)存,或是從客戶端的硬盤讀取數(shù)據(jù)的一種技術(shù)。Cookies是當(dāng)你瀏覽某網(wǎng)站時,由Web服務(wù)器置于你硬盤上的一個非常小的文本文件,它可以記錄你的用戶ID、密碼、詳細(xì)調(diào)研報(bào)告書
瀏覽過的網(wǎng)頁、停留的時間等信息。當(dāng)你再次來到該網(wǎng)站時,網(wǎng)站通過讀取Cookies,得知你的相關(guān)信息,就可以做出相應(yīng)的動作,如在頁面顯示歡迎你的標(biāo)語,或者讓你不用輸入ID、密碼就直接登錄等等。
通過了解上述Session和Cookies的建立機(jī)理,我們在建立號百集團(tuán)公司號百集團(tuán)集約化平臺是應(yīng)盡量使用Session方式來保存用戶鑒別信息,避免直接使用Cookies來存儲用戶鑒別信息。同時,在用戶退出服務(wù)是,規(guī)定清理Cookies。
2.10 系統(tǒng)界面設(shè)計(jì)
2.10.1 界面設(shè)計(jì)原則
? 延用性原則:
參考號百集團(tuán)公司現(xiàn)有的大多數(shù)業(yè)務(wù)系統(tǒng)的界面風(fēng)格和操作習(xí)慣,包括界面布局、提示信息、快捷鍵等,讓原先的業(yè)務(wù)軟件的操作人員能很快的掌握新軟件的使用。
? 用戶區(qū)分原則:
軟件界面設(shè)計(jì)首先要確立用戶類型。劃分類型可以從不同的角度,要根據(jù)使用用戶的實(shí)際情況而定。確定類型后要針對用戶類型的特點(diǎn)預(yù)測他們對不同界面的反應(yīng)。
軟件中的用戶是所有處理的核心,不應(yīng)該有應(yīng)用程序來決定處理過程,所以軟件界面應(yīng)當(dāng)由用戶來控制應(yīng)用,如何工作、如何響應(yīng),而不是由開發(fā)者按自己的意愿把界面操作模式強(qiáng)加給用戶。
? 簡單化原則:
軟件界面設(shè)計(jì)要盡量減少用戶記憶負(fù)擔(dān),采用有助于記憶的設(shè)計(jì)方案,同時提示信息或者顯示信息盡量簡單明了。
? 幫助和提示原則:
要對用戶的操作給出相應(yīng)的提示信息,幫助用戶處理問題。系統(tǒng)設(shè)計(jì)要有恢復(fù)用戶操作失誤的能力,給出用戶恢復(fù)錯誤的幫助和提示信息。
? 可用性原則:
系統(tǒng)的設(shè)計(jì)采用B/S結(jié)構(gòu)技術(shù),對于瀏覽器端的應(yīng)用,界面文件的大小直接影響
詳細(xì)調(diào)研報(bào)告書
到用戶使用軟件的速度,所以,界面的設(shè)計(jì)必須考慮到可用性原則。界面設(shè)計(jì)應(yīng)該以應(yīng)用為主,對于起修飾作用的圖片等多媒體文件,盡量采用壓縮比例較大的媒體文件格式,減少界面文件的大小。
2.10.2 操作與交互設(shè)計(jì)
2.10.2.1 操作一致性設(shè)計(jì)
在界面設(shè)計(jì)中應(yīng)該保持界面的一致性。一致性既包括使用標(biāo)準(zhǔn)的控件,也指使用相同的信息表現(xiàn)方法,如在字體、標(biāo)簽風(fēng)格、顏色、術(shù)語、顯示錯誤信息等方面確保一致。
? 顯示信息的一致性:包括標(biāo)簽提示、日期格式、對齊形式、字體、軟件底色等應(yīng)該保持統(tǒng)一、直觀;
? 布局合理化:應(yīng)注意在一個窗口內(nèi)部所有控件的布局和信息組織的藝術(shù)性,使得用戶界面美觀。在一個窗口中按tab鍵,移動聚焦的順序不能雜亂無章,tab的順序是先從上至下,再從左至右。一屏中首先應(yīng)輸入的和重要信息的控件在tab順序中應(yīng)當(dāng)靠前,位置也應(yīng)放在窗口上較醒目的位置。布局力求簡潔、有序、易于操作;
? 鼠標(biāo)與鍵盤對應(yīng):應(yīng)遵循的是可不用鼠標(biāo)的原則,應(yīng)用中的功能只用鍵盤也應(yīng)當(dāng)可以完成,即設(shè)計(jì)的應(yīng)用中還應(yīng)加入一些必要的按鈕和菜單項(xiàng)。但是,許多鼠標(biāo)的操作,如雙擊、拖動對象等,并不能簡單地用鍵盤來模擬即可實(shí)現(xiàn);
? 快捷鍵:在菜單項(xiàng)中使用快捷鍵可以讓使用鍵盤的用戶操作得更快一些,在西文Windows及其應(yīng)用軟件中快捷鍵的使用大多是一致的。本系統(tǒng)中應(yīng)用的快捷鍵在各個配置項(xiàng)上語義必須保持一致。其它快捷鍵使用漢語拼音的開頭字母,不常用的可以沒有快捷鍵。
2.10.2.2 操作與響應(yīng)設(shè)計(jì)
系統(tǒng)響應(yīng)時間包括兩個方面:時間長度和時間的易變性。用戶響應(yīng)時間應(yīng)該適中,系統(tǒng)響應(yīng)時間過長,用戶就會感到不安和沮喪,而響應(yīng)時間過短有時會造成用戶
詳細(xì)調(diào)研報(bào)告書
加快操作節(jié)奏,從而導(dǎo)致錯誤。系統(tǒng)響應(yīng)時間的易變性是指相對于平均響應(yīng)時間的偏差。即使響應(yīng)時間比較長,低的響應(yīng)時間易變性也有助于用戶建立穩(wěn)定的節(jié)奏。因此,軟件的設(shè)計(jì)必須充分考慮系統(tǒng)響應(yīng)時間與用戶的心理偏差。
2.10.2.3 幫助與提示設(shè)計(jì)
? 提供在線幫助措施;
? 用戶可以通過幫助菜單、幫助按鈕訪問幫助;
? 表示幫助時根據(jù)需要提供三種方式的選擇:另一個窗體、微幫助和指出參考某個文檔;
? 用戶如何回到正常交互方式有兩種選擇:返回鍵和功能鍵; ? 幫助信息的構(gòu)造:采用分層式幫助;
2.10.2.4 出錯與預(yù)警設(shè)計(jì)
出錯信息和警告是指出現(xiàn)問題時系統(tǒng)給出的壞消息,本系統(tǒng)對于出錯信息和警告應(yīng)該遵循以下原則:
? 信息以用戶可以理解的術(shù)語描述;
? 信息應(yīng)提供如何從錯誤中恢復(fù)的建設(shè)性意見;
? 信息應(yīng)指出錯誤可能導(dǎo)致那些不量后果,以便用戶檢查是否出現(xiàn)了這些情況或幫助用戶進(jìn)行改正;
? 信息應(yīng)伴隨著視覺上的提示,如特殊的圖像、顏色或信息閃爍; 信息不能帶有判斷色彩,即任何情況下不能指責(zé)用戶。
詳細(xì)調(diào)研報(bào)告書
3.對于方法、變量聲明范圍要采用如下優(yōu)先級:private、protected、public,對于變量要采用如下的優(yōu)先級:局部變量、實(shí)例變量、類變量,如果必須要采用實(shí)例變量或類變量的情況下,要保證線程安全性,如有可能盡量采用ThreadLocal保存實(shí)例變量或類變量;
4.如果不是必須,不要在循環(huán)中去定義變量或者new 對象;盡量在需要的最后一刻才去new 對象;
5.如果不是必須,不要在循環(huán)中去用try…catch;
6.類中對于比較復(fù)雜的邏輯要采用行注釋的方式進(jìn)行注釋,java代碼中絕對不允許采用塊注釋(/**/)進(jìn)行注釋;
7.Java類的名稱
詳細(xì)調(diào)研報(bào)告書
ThreadLocal來處理。
18.一個方法所完成的功能要單一,不同的功能封裝為不同的方法.19.盡可能的處理異常或轉(zhuǎn)換異常,不要一味的包裝異常
20.如果對象在某個特定范圍內(nèi)必須被清理(而不是作為垃圾被回收),請使用帶有finally子句的try塊,在finally子句中進(jìn)行清理。
21.對于把一些邏輯相關(guān)的類組織在一起,可以考慮把一個類的定義放在另一個類的定義中,這種情況推薦使用內(nèi)部類(比如界面層中的事件響應(yīng)等)。內(nèi)部類擁有所有外圍類所有成員的訪問權(quán)。
22.對成員變量的訪問最好通過getter/setter方法,這樣能夠保證訪問的合法性,以及代碼調(diào)整
23.優(yōu)先選擇接口而不是抽象類或具體類。如果你知道某些東西將成為基類,你應(yīng)當(dāng)優(yōu)先把它們設(shè)計(jì)成接口;只有在必須放進(jìn)方法定義或成員變量時,才把它修改為具體或抽象類。接口只和客戶希望的動作有關(guān)(協(xié)議),而類則傾向于關(guān)注實(shí)現(xiàn)細(xì)節(jié)。
24.使用java標(biāo)準(zhǔn)庫提供的容器。精通他們的用法,將極大地提高工作效率。優(yōu)先選擇ArrayList來處理順序結(jié)構(gòu),選擇HashSet來處理集合,選擇HashMap來處理關(guān)聯(lián)數(shù)組,選擇linkedList來處理堆棧和隊(duì)列,它對順序訪問進(jìn)行了優(yōu)化,向List中間插入與刪除的開銷小,但隨機(jī)訪問則較慢。當(dāng)使用前三個的時候,應(yīng)該把他們向上轉(zhuǎn)型為List、Set和Map,這樣就可以在必要的時候以其它方式實(shí)現(xiàn)
25.數(shù)組是一種效率最高的存儲和隨機(jī)訪問對象引用序列的方式,但是當(dāng)創(chuàng)建了一個數(shù)組對象,數(shù)組的大小就被固定了,如果在空間不足時再創(chuàng)建新的數(shù)組進(jìn)行復(fù)制,這樣效率就比ArrayList開銷大了。所以必須明確使用場景。
26.盡量使用”private”、”protected”關(guān)鍵字。一旦你把庫的特征(包括類、方法、字段)標(biāo)記為public,你就再也不可能去掉他們。在這種方式下,實(shí)現(xiàn)的變動對派生類造成的影響最小,在處理多線程問題的時候,保持私有性尤其重要,因?yàn)橹挥蠵rivate的字段才會受到保護(hù),而不用擔(dān)心被未受同步控制的使用所破壞。
27.禁止后臺業(yè)務(wù)代碼使用如下代碼
第四篇:標(biāo)準(zhǔn)規(guī)范
1、中華人民共和國《工程建設(shè)標(biāo)準(zhǔn)強(qiáng)制性條文(城市建設(shè)部分)》
2、中華人民共和國《工程建設(shè)標(biāo)準(zhǔn)強(qiáng)制性條文(房屋建筑部分)》
3、《市政地下工程施工質(zhì)量及驗(yàn)收規(guī)范》(DG/TJ08-236-2006)
4、《地下鐵道工程施工及驗(yàn)收規(guī)范 》GB 50299-1999(2003年版)
5、《地下工程防水技術(shù)規(guī)范》(GB50108-2001)
6、《地下防水工程質(zhì)量驗(yàn)收規(guī)范》 GB 50208-20027、《混凝土結(jié)構(gòu)工程施工質(zhì)量驗(yàn)收規(guī)范》 GB 50204-20028、《鋼結(jié)構(gòu)工程施工質(zhì)量驗(yàn)收規(guī)范》GB 50205-200129、浙江省標(biāo)準(zhǔn)《建筑地基設(shè)計(jì)規(guī)范》(DB33/1001-2003)
10、浙江省標(biāo)準(zhǔn)《建筑基坑工程技術(shù)規(guī)程》(DB33/T1008-2000)
11、《建筑地基基礎(chǔ)設(shè)計(jì)規(guī)范》(GB5007-2002)
12、《建筑樁基技術(shù)規(guī)范》JTJ94-9413、《基坑工程施工監(jiān)測程》DJ/TJ08-2001-200614、《建筑基坑支護(hù)技術(shù)規(guī)程》 JGJ 120-9915、《建筑基坑工程技術(shù)規(guī)范》 YB 9258-9716、《鋼結(jié)構(gòu)設(shè)計(jì)規(guī)范》GB50017-200317、《鋼管混凝土結(jié)構(gòu)設(shè)計(jì)與施工規(guī)程》(CECS28:90)
18、《建筑與市政降水工程技術(shù)規(guī)范》(JBJ/T111-98)
19、《型鋼混凝土組合結(jié)構(gòu)技術(shù)規(guī)程》JGJ138-200120、《地下鐵道、輕軌交通工程測量規(guī)范》(GB50208-1999)
21、《人民防空工程設(shè)計(jì)規(guī)范》GB50225-200522、《混凝土質(zhì)量檢控標(biāo)準(zhǔn)》(GB50164-92)
23、《建筑地基基礎(chǔ)工程施工質(zhì)量驗(yàn)收規(guī)范》 GB 50202-200224、《建筑工程施工質(zhì)量驗(yàn)收統(tǒng)一標(biāo)準(zhǔn)》 GB 50300-200125、《鋼筋混凝土結(jié)構(gòu)設(shè)計(jì)規(guī)范》GB50010-200226、《地鐵雜散電流腐蝕防護(hù)技術(shù)規(guī)范》(CJJ49-92)
27、《鋼筋機(jī)械連接通用技術(shù)規(guī)程》JGJ107-200328、《軟土地基深層攪拌加固技術(shù)規(guī)程》(YBJ-225-91)
29、《建筑變形測量規(guī)范》(JGJ/T8-97)
30、《杭州市地鐵工程預(yù)算定額》
31、《浙江省市政工程預(yù)算定額》
32、《浙江省建筑工程預(yù)算定額》
33、選用圖集:
《建筑構(gòu)造通用圖集》
《國家建筑標(biāo)準(zhǔn)設(shè)計(jì)圖集》
《鋼梯》02J401
《建筑物抗震構(gòu)造詳圖》G329-3-6(2005)
《建筑無障礙設(shè)計(jì)》03J926
《蒸壓加氣砼砌塊建筑構(gòu)造》0。J104
《防火門窗》03J609
《接地裝置施工安裝通用圖》
第五篇:學(xué)術(shù)論文參考
南陽師院第十三屆“張衡杯”大學(xué)生課外學(xué)術(shù)科技作品競賽
申報(bào)作品
一種內(nèi)存數(shù)據(jù)庫快速日志恢復(fù)技術(shù)研究
姓 名: * * * 學(xué) 號: 12345678900 專 業(yè): 網(wǎng)絡(luò)方向 院 系: 計(jì)算機(jī)與信息技術(shù)學(xué)院 指導(dǎo)老師: * * *
摘 要
恢復(fù)技術(shù)是保證內(nèi)存數(shù)據(jù)庫運(yùn)行可靠的關(guān)鍵,傳統(tǒng)的基于日志的恢復(fù)技術(shù)會對系統(tǒng)性能產(chǎn)生很大的負(fù)面影響。針對此提出了內(nèi)存數(shù)據(jù)庫系統(tǒng)快速日志恢復(fù)技術(shù),它控制日志的產(chǎn)生數(shù)量,使得在系統(tǒng)崩潰并重新啟動時,能以最快的速度恢復(fù)到系統(tǒng)崩潰前的最近一致點(diǎn)上。
關(guān)鍵字:內(nèi)存數(shù)據(jù)庫;日志恢復(fù);檢查點(diǎn)
Quickly Log Recovery Technology Of MMDB
Hu Hui hui(1.College of Computer and Information Technology, Nanyang Normal University,Nanyang 473061, China;2.College of Compuert Science and Tecnology,Beijing University of
Tecnology,Beijing,100022,China)
Abstract The recovery technology is a key to ensure running credibility of MMDB,the tradition recovery technology is based on log may raise the effect on system performance.This paper puts force the a quickly log recovery technology。It controls log quantity and recovers the system to the nearest breakdown point as fast as it can, when system breaks down and restarts.Key Words: MMDB;log recover;checking point.目錄
引言
內(nèi)存數(shù)據(jù)庫(MMDB)把數(shù)據(jù)全部或者當(dāng)前工作部分駐留在內(nèi)存中,消除了傳統(tǒng)磁盤數(shù)據(jù)庫系統(tǒng)中I/O瓶頸,提高了系統(tǒng)的性能和吞吐量,但是由于所有操作都作用于內(nèi)存數(shù)據(jù)庫的主拷貝上,數(shù)據(jù)庫極易遭到操作系統(tǒng)和應(yīng)用軟件造成的破壞,因此MMDB的恢復(fù)技術(shù)十分關(guān)鍵[1]。日志(Logging)恢復(fù)是傳統(tǒng)的MMDB恢復(fù)技術(shù)之一,它能滿足當(dāng)前MMDB系統(tǒng)對事務(wù)響應(yīng)和快速系統(tǒng)恢復(fù)的要求,但是在大量事務(wù)吞吐量情況下造成的日志暴增帶來很大問題,會對MMDB性能產(chǎn)生很大影響[2]。
本文提出MMDB系統(tǒng)快速日志恢復(fù)技術(shù),它是在不阻礙系統(tǒng)正常運(yùn)行的情況下,控
制日志的產(chǎn)生數(shù)量,使得在系統(tǒng)崩潰并重新啟動時,能以最快的速度恢復(fù)到系統(tǒng)崩潰前的最近一致點(diǎn)上。系統(tǒng)構(gòu)架設(shè)計(jì)
快速恢復(fù)模型的整體架構(gòu)如圖1所示。事務(wù)處理模塊負(fù)責(zé)根據(jù)用戶請求產(chǎn)生事務(wù),并由事務(wù)管理器調(diào)度。事務(wù)管理器將負(fù)責(zé)各個事務(wù)的日志記錄,交給日志產(chǎn)生規(guī)則處理。檢查點(diǎn)模塊根據(jù)日志產(chǎn)生規(guī)則產(chǎn)生的日志數(shù)量動態(tài)調(diào)整檢查點(diǎn)啟動時間[3]。當(dāng)日志記錄數(shù)達(dá)到一定值時,檢查點(diǎn)程序啟動。它讀取所有日志記錄,交給日志篩選器。日志篩選器根據(jù)篩選算法,從當(dāng)前所有日志項(xiàng)中篩選出實(shí)際有效的日志記錄,并將這些有效日志記錄交給日志分發(fā)結(jié)點(diǎn)。日志分發(fā)結(jié)點(diǎn)主要做兩項(xiàng)工作:第一是它將日志傳送給日志磁盤管理器,由其負(fù)責(zé)將日志回寫到日志磁盤上,第二是日志分發(fā)結(jié)點(diǎn)將日志傳送給備份更新發(fā)生器。備份更新發(fā)生器利用快速恢復(fù)算法,觸發(fā)各類更新操作,根據(jù)日志更新磁盤上的數(shù)據(jù)。該快速恢復(fù)模型具有如下的特點(diǎn):
①快速恢復(fù)模型以日志驅(qū)動方式做檢查點(diǎn),異步更新磁盤上的備份數(shù)據(jù)鏡象。②系統(tǒng)只維護(hù)全局Redo日志,以Redo日志來驅(qū)動備份更新發(fā)生器,各個事務(wù)維護(hù)私有Redo日志和Undo日志在事務(wù)提交時將私有Redo日志寫入全局Redo日志中。
事 務(wù)發(fā)生器日志篩選算法事務(wù)管理器事務(wù)處理日志產(chǎn)生規(guī)則日志分發(fā)結(jié)點(diǎn)快速恢復(fù)算法日志回寫歸檔磁盤日志磁盤檢查點(diǎn)處理
圖1 快速恢復(fù)模型的整體架構(gòu)
③使用日志篩選算法,近一步減少Redo日志的數(shù)量,提升檢查點(diǎn)程序的性能。④備份數(shù)據(jù)鏡象只反應(yīng)已提交事務(wù)的更新狀態(tài),因此在系統(tǒng)重載時不需要回退未提交的事務(wù)。
⑤快速恢復(fù)算法為并發(fā)重載算法。在系統(tǒng)恢復(fù)過程中,能繼續(xù)接受新事務(wù)的請求。快速日志驅(qū)動檢查點(diǎn)
快速日志驅(qū)動檢查點(diǎn)的基本思想是,檢查點(diǎn)程序仍然由日志來驅(qū)動,根據(jù)讀取到
的日志項(xiàng)來更新數(shù)據(jù)鏡象上的內(nèi)容,維持?jǐn)?shù)據(jù)鏡象與內(nèi)存中數(shù)據(jù)庫的基本同步。但是,與以往日志驅(qū)動檢查點(diǎn)算法不同的是,它通過日志產(chǎn)生規(guī)則和日志篩選算法兩個策略克服了以往日志驅(qū)動檢查點(diǎn)算法中日志數(shù)量可能過快增長的問題[4] [5]。
2.1 日志產(chǎn)生規(guī)則
快速日志驅(qū)動檢查點(diǎn)算法中設(shè)立的日志產(chǎn)生規(guī)則是:系統(tǒng)中日志被分為全局日志和私有日志兩類。系統(tǒng)只維護(hù)全局Redo日志,而不維護(hù)Undo日志,由事務(wù)自身維護(hù)私有的Redo日志和Undo日志。在事務(wù)提交時,依照事務(wù)提交的先后順序,將事務(wù)的私有Redo日志添加到全局Redo日志中。因此,在事務(wù)運(yùn)行過程中,會產(chǎn)生Redo日志和Undo日志。Redo日志用于在系統(tǒng)恢復(fù)過程中,重做已提交事務(wù)。而Undo日志用于在事務(wù)Abort時回退事務(wù),或者在系統(tǒng)恢復(fù)過程中回退未提交的事務(wù)。如果恢復(fù)模型的設(shè)計(jì)能夠保證系統(tǒng)恢復(fù)過程中,沒有需要回退的未提交事務(wù),那么系統(tǒng)只需要讀取Redo日志而不需要讀取Undo日志。因而系統(tǒng)只需要維護(hù)全局的Redo日志,而不需要維護(hù)Undo日志,將Undo日志交給事務(wù)自身維護(hù),Undo日志只用于事務(wù)自身Abort時回退。這樣就可以減少全局日志的總量。
圖2具體描述了全局日志和私有日志的使用。在事務(wù)T1,T2,T3的內(nèi)存空間內(nèi),各自維護(hù)自己的私有Redo日志和Undo日志。在非易失性內(nèi)存(SRAM)上,MMDB系統(tǒng)開辟全局Redo日志緩沖區(qū),讓事務(wù)在提交時事務(wù)的私有Redo日志寫入該緩沖區(qū)。檢查點(diǎn)程序?qū)⒍ㄆ谧x取日志緩沖區(qū)中的數(shù)據(jù),將日志寫入磁盤,并驅(qū)動檢查點(diǎn)程序更新磁盤鏡象數(shù)據(jù)。
Redo Log事務(wù)T1Undo LogMMDBRedo Log事務(wù)T2Undo LogRedo Log事務(wù)T3Undo Log私有日志SRAMRedo全局日志緩沖區(qū)
圖2 全局日志和私有日志
各事務(wù)將按如下階段操作日志:
①事務(wù)啟動時,需要在事務(wù)的各自空間內(nèi)建立私有Redo日志和私有Undo日志,并將在私有Redo日志中寫入事務(wù)啟動記錄。
②事務(wù)運(yùn)行過程中,事務(wù)的每次更新操作,需要在私有Redo日志中添加Redo記錄,并在私有Undo日志中添加Undo記錄。③事務(wù)提交時,需要按如下步驟完成:
㈠向事務(wù)的私有Redo日志內(nèi)添加事體Commit記錄。㈡將事務(wù)的私有Redo日志寫入全局Redo日志中。
㈢釋放事務(wù)的私有Redo日志和私有Undo日志,釋放事務(wù)所占用的其他資源,完成提交。
④事務(wù)Abort時,需要按照如下步驟完成:
㈠事務(wù)反向掃描私有Undo日志,回退事務(wù)的更新操作。
㈡釋放事務(wù)的私有Redo日志和私有Undo日志,釋放事務(wù)所占用的其他資源,結(jié)束事務(wù)。
由此可見,事務(wù)只在提交時才將私有Redo日志寫入全局日志緩沖區(qū)。從而也保證了檢查點(diǎn)程序運(yùn)行時,只看到己提交事務(wù)的Redo日志,磁盤上的數(shù)據(jù)鏡象也只反映已提交事務(wù)的更新操作。
2.2 日志篩選算法
用日志產(chǎn)生規(guī)則能明顯減少日志產(chǎn)生的數(shù)量,但是在更新事務(wù)吞吐量較大的情況下,檢查點(diǎn)程序從全局日志緩沖區(qū)讀取Redo日志時,仍然可能會面對Redo日志量過大的問題,產(chǎn)生的原因是這樣的:如果對一份數(shù)據(jù)做兩次更新操作,那么兩個事務(wù)各自產(chǎn)生一條對同一物理地址上值更新的物理日志,但只有第2次更新事務(wù)產(chǎn)生的日志為有效的。本文利用日志篩選算法來避免日志量過大問題,該算法認(rèn)為,當(dāng)LOG1(T1,addr,valuel)和LOG2(T2, addr, value2)按照事務(wù)的提交順序通過日志篩選器時,當(dāng)T1的提交時間在T2提交時間前,那么只有LOG2(T2, addr, value2)被認(rèn)為是有效,而LOGI(T1,addr,valuel)被忽略。日志篩選器需要關(guān)注物理日志中被修改值的地址的相關(guān)性。對相同修改地址的物理日志依據(jù)日志的提交順序進(jìn)行篩選,該算法的示意圖如圖3所示。為加快日志的篩選速度,將全日志緩沖區(qū)劃分為多個區(qū)域,這將日志記錄中操作地址具有空間相關(guān)性的日志按照所屬事務(wù)的提交順序聚合在一個區(qū)域內(nèi),能加速日志篩選算法的篩選速度。使得在篩選過程中,只需在小范圍內(nèi)(也就是一個區(qū)域)搜索可以被篩選的日志。當(dāng)全局Redo日志緩沖區(qū)中的某一個區(qū)域滿時,就喚醒檢查點(diǎn)程序,將這一區(qū)域中的Redo日志寫入日志磁盤,并驅(qū)動備份更新發(fā)生器更新磁盤上的數(shù)據(jù)鏡象。[6]
T(1)Page 3T(1)Page 5T(1)T(1)T(1)Page 3Page 5Page nT Commit事務(wù)T(1)日志序列日志檢查與分配T(m)page 0T(m)page 0Page(0~3)Page(4~7)?T(1)Page nT(k)page mPage(n~n+3)?Page(k~k+3)全局Redo日志緩沖區(qū)圖3 日
圖3 志篩選算法 快速恢復(fù)算法
在系統(tǒng)崩潰后,MMDB系統(tǒng)需要通過恢復(fù)過程,將數(shù)據(jù)庫恢復(fù)到崩潰前的最近一致點(diǎn)上。在系統(tǒng)恢復(fù)過程中,重載程序?qū)?shù)據(jù)從磁盤鏡象上加載到MMDB系統(tǒng)中,同時根據(jù)日志,重做(Redo)或者取消(Undo)部分事務(wù),來恢復(fù)數(shù)據(jù)庫的一致性??焖倩謴?fù)算法如下:
①當(dāng)系統(tǒng)崩潰重啟時,先啟動日志檢查和分配程序,檢查非易失性內(nèi)存(SRAM)中提供給事務(wù)提交時用于寫入私有Redo日志的緩沖區(qū)中是否有完整寫入的Redo日志。如果有完整的Redo日志,則日志檢查和分配程序?qū)⑦@些完整的日志分配到全局Redo日志緩沖區(qū)的不同區(qū)域中。
②統(tǒng)計(jì)全局Redo日志緩沖區(qū)中的日志數(shù)量,并標(biāo)記這些日志。當(dāng)前Redo日志緩沖區(qū)中的日志將被用于恢復(fù)內(nèi)存中MMDB系統(tǒng)的一致性,同時也要用于維護(hù)磁盤上數(shù)據(jù)鏡象的一致性。
③恢復(fù)程序從磁盤數(shù)據(jù)鏡象上加載一些重要的系統(tǒng)表以后,MMDB系統(tǒng)可以啟動,并可以接受新事務(wù)的請求。系統(tǒng)的正常事務(wù)處理和系統(tǒng)恢復(fù)過程同時進(jìn)行。④觸發(fā)檢查點(diǎn)程序從全局Redo日志緩沖區(qū)中讀取日志,驅(qū)動備份更新發(fā)生器更新磁盤上的數(shù)據(jù)鏡象。在這個過程中,驅(qū)動備份更新發(fā)生器向緩沖區(qū)管理區(qū)詢問將被更新的記錄所在的鏡象數(shù)據(jù)頁面是否已經(jīng)被加載到內(nèi)存中。如果己經(jīng)被加載,則不但需要更新磁盤上的鏡象數(shù)據(jù)頁,還需要更新內(nèi)存中的數(shù)據(jù)頁面。如果全局Redo日志緩沖區(qū)中所有被標(biāo)記的日志都已經(jīng)被用于驅(qū)動備份更新發(fā)生器,那么此時備份更新發(fā)生器可以告訴重載程序恢復(fù)工作已經(jīng)完成,沒有其他鏡象頁面需要更新。
⑤MMDB在接受新事務(wù)的請求時,對于事務(wù)所訪問到的數(shù)據(jù),如果數(shù)據(jù)還沒有被加載到內(nèi)存中時,則系統(tǒng)向重載程序要求將所需數(shù)據(jù)從磁盤鏡象上加載到內(nèi)存中。此時,重載程序先要檢查要求加載的數(shù)據(jù)頁面是否會被備份更新發(fā)生器修改。如果是,則需
要等待備份更新發(fā)生器更新鏡象頁面后再加載到內(nèi)存中,否則就直接將鏡象頁面加載到內(nèi)存中。
⑥當(dāng)所有鏡象都加載完成后,MMDB系統(tǒng)恢復(fù)過程結(jié)束。結(jié)束語
恢復(fù)技術(shù)是保證內(nèi)存數(shù)據(jù)庫運(yùn)行可靠的關(guān)鍵技術(shù)。傳統(tǒng)日志恢復(fù)技術(shù)由于存在產(chǎn)生過多不必要的日志的缺點(diǎn),對系統(tǒng)性能帶來負(fù)面影響。本文研究了一種新的日志恢復(fù)技術(shù)來盡可能的減少日志數(shù)量,并在此基礎(chǔ)上提出了快速日志恢復(fù)算法,此恢復(fù)技術(shù)算法簡單可以大大的節(jié)約系統(tǒng)的資源。然而,內(nèi)存數(shù)據(jù)庫恢復(fù)是一個十分復(fù)雜而龐大的技術(shù),所以該方法還有待完善。
參考文獻(xiàn)
[1]劉云生,潘琳.實(shí)時數(shù)據(jù)庫系統(tǒng)的內(nèi)存數(shù)據(jù)庫組織與故障恢復(fù)[J].小型微型計(jì)算機(jī)系統(tǒng).2005,22(5):611-613.[2]劉云生,廖國瓊,付蔚.一個支持實(shí)時內(nèi)存數(shù)據(jù)庫的恢復(fù)系統(tǒng)[J].小型微型計(jì)算機(jī)系統(tǒng).2003,24(3):460-464 [3]SONGGH,YANHCS,SHIJY.ZEDB:An in-memory database system for real-time message processing applications [A].Proc of the 6th Int Conf on Computer Aided Design & Computer Graphics(CAD/CG'99)[C].Shanghai: Wen Hui Publishers 1999.238-242.[4]LiX,EichMH.Post-crash log processing for fuzzy check pointing main memory databases[J].Proc Of Int Conf on Database Engineering,IEEE,1993,117-124.[5]龍玉國,耿協(xié)堅(jiān).嵌入式實(shí)時內(nèi)存數(shù)據(jù)庫恢復(fù)子系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)工程與應(yīng)用.2004,17:179-180 [6]宋廣華,楊長生.基于混合日志的內(nèi)存數(shù)據(jù)庫恢復(fù)子系統(tǒng)[J].浙江大學(xué)學(xué)報(bào)(理學(xué)版).2001,28(3):164-168