下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一種多版本技術(shù)的存儲(chǔ)技術(shù)
0高效系統(tǒng)高效恢復(fù)技術(shù)內(nèi)存數(shù)據(jù)庫(kù)(mmdb)不同于傳統(tǒng)的磁盤數(shù)據(jù)庫(kù)(hdd)。一般數(shù)據(jù)庫(kù)數(shù)據(jù)的采集基于數(shù)據(jù)庫(kù),事務(wù)操作包括硬盤的e.o,速度較慢。而內(nèi)存數(shù)據(jù)庫(kù)其數(shù)據(jù)存取針對(duì)內(nèi)存設(shè)計(jì),其“主拷貝”常駐內(nèi)存,活動(dòng)事務(wù)只與內(nèi)存打交道,數(shù)據(jù)庫(kù)則不再作為大量存儲(chǔ)文件看待而作為內(nèi)存中可尋址的大量數(shù)據(jù),這使得存取速度快速、存取時(shí)間易于預(yù)測(cè),提高了數(shù)據(jù)庫(kù)性能,使內(nèi)存數(shù)據(jù)庫(kù)在實(shí)時(shí)系統(tǒng)等環(huán)境要求下表現(xiàn)良好。由于內(nèi)存的易失性,MMDB必須在磁盤或者其它非易失性存儲(chǔ)器中保存它的備份,以防系統(tǒng)崩潰等故障導(dǎo)致的內(nèi)存中數(shù)據(jù)丟失。而數(shù)據(jù)庫(kù)的備份、日志存儲(chǔ)及異常情況下的系統(tǒng)恢復(fù)需要執(zhí)行大量費(fèi)時(shí)的磁盤I/O操作,必將成為系統(tǒng)的瓶頸,影響系統(tǒng)正常的事務(wù)處理能力。內(nèi)存數(shù)據(jù)庫(kù)的恢復(fù)技術(shù)是內(nèi)存數(shù)據(jù)庫(kù)研究的核心技術(shù)之一。本文方法綜合利用了影子頁(yè)面技術(shù)、預(yù)提交技術(shù)、模糊檢查點(diǎn)思想、事務(wù)一致性檢查點(diǎn)技術(shù)的優(yōu)點(diǎn),設(shè)計(jì)一種在正常環(huán)境條件下無(wú)需增加額外硬件設(shè)施系統(tǒng)下的內(nèi)存數(shù)據(jù)庫(kù)恢復(fù)方法。該方法使用影子頁(yè)面技術(shù)使系統(tǒng)無(wú)須記錄Undo日志,事務(wù)失敗能快速回滾,較之一般數(shù)據(jù)庫(kù)支持READCOMMITTED隔離級(jí)別時(shí)寫阻塞讀該方法可以做到讀寫并發(fā),而且使我們的檢查點(diǎn)是事務(wù)一致性檢查點(diǎn),方便恢復(fù)時(shí)候的操作。一般支持事務(wù)一致性的檢查點(diǎn)它的檢查點(diǎn)都是非模糊檢查點(diǎn),就是說(shuō)在檢查點(diǎn)過(guò)程中需要加鎖,這會(huì)影響事務(wù)的正常運(yùn)行,本文采用一種“多版本”的思想用一塊臨時(shí)存儲(chǔ)區(qū)來(lái)完成檢查點(diǎn)期間事務(wù)的提交等操作,使檢查點(diǎn)不會(huì)影響事務(wù)的正常操作,得到模糊檢查點(diǎn)的效果,在保證系統(tǒng)恢復(fù)能力的前提下滿足了系統(tǒng)的實(shí)時(shí)性等要求。本文的系統(tǒng)失敗后的恢復(fù)算法借鑒并簡(jiǎn)化了模糊檢查點(diǎn)的恢復(fù)算法,能快速有效地恢復(fù)系統(tǒng)。1基于nvram的門處理流程內(nèi)存數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)方法目標(biāo)主要是針對(duì)系統(tǒng)的各種故障能較快地將數(shù)據(jù)庫(kù)恢復(fù)到最近的一致性狀態(tài)。對(duì)于內(nèi)存數(shù)據(jù)庫(kù)的數(shù)據(jù)恢復(fù)方法已經(jīng)有了不少研究,有預(yù)提交、成組提交、恢復(fù)處理器RP、NVRAM、熱備份技術(shù)、模糊檢查點(diǎn)、動(dòng)作一致性檢查點(diǎn)、日志驅(qū)動(dòng)檢查點(diǎn)、影子頁(yè)面等技術(shù)。其中恢復(fù)處理器、NVRAM、熱備份技術(shù)都在速度和穩(wěn)定性能上相當(dāng)不錯(cuò),但都需要額外硬件支持。恢復(fù)處理器方法就是增加一個(gè)專用于備份和恢復(fù)的CPU,用它專門處理日志和檢查點(diǎn)進(jìn)程還有系統(tǒng)崩潰后的恢復(fù)進(jìn)程;NVRAM是一種非易失性內(nèi)存,具有內(nèi)存的存儲(chǔ)速度而且又掉電非易失,將日志等信息刷到NVRAM的速度比磁盤快得多,事務(wù)日志刷到NVRAM就完成提交;熱備份技術(shù)是另有一臺(tái)遠(yuǎn)程機(jī)器hotstand-bynode作為映像,維持一個(gè)數(shù)據(jù)庫(kù)熱后備,如果數(shù)據(jù)庫(kù)主服務(wù)器崩潰時(shí)這個(gè)hotstand-bynode隨時(shí)能切換成數(shù)據(jù)庫(kù)主服務(wù)器。在檢查點(diǎn)方面,較之非模糊檢查點(diǎn)、模糊檢查點(diǎn)、日志驅(qū)動(dòng)檢查點(diǎn)3類,目前有研究表明模糊檢查點(diǎn)的性能在與事務(wù)并發(fā)方面表現(xiàn)最好,因?yàn)槟:龣z查點(diǎn)進(jìn)程不加任何鎖,不阻塞事務(wù)的正常執(zhí)行,但是模糊檢查點(diǎn)更新的數(shù)據(jù)庫(kù)映像無(wú)法保證事務(wù)一致性,系統(tǒng)故障后通過(guò)較復(fù)雜的恢復(fù)算法把數(shù)據(jù)庫(kù)恢復(fù)到較近的事務(wù)一致性狀態(tài),而且在檢查點(diǎn)過(guò)程中讀寫無(wú)法并發(fā),就是說(shuō)如果事務(wù)在寫某個(gè)臟頁(yè),那么檢查點(diǎn)進(jìn)程讀此臟頁(yè)的操作會(huì)被阻塞直到事務(wù)釋放該鎖,檢查點(diǎn)進(jìn)程受到影響。而日志驅(qū)動(dòng)檢查點(diǎn)則使檢查時(shí)候日志作用于磁盤備份,速度很慢,一般用于遠(yuǎn)程備份。非模糊檢查點(diǎn)分為動(dòng)作一致性和事務(wù)一致性檢查點(diǎn),它們都在檢查點(diǎn)時(shí)刻對(duì)臟頁(yè)加鎖,影響到事務(wù)的正常運(yùn)行,但是它們備份出來(lái)的數(shù)據(jù)庫(kù)由于滿足事務(wù)一致性恢復(fù)算法相對(duì)簡(jiǎn)單。本文綜合影子內(nèi)存、預(yù)提交、模糊檢查點(diǎn)思想、事務(wù)一致性檢查點(diǎn)思想、多版本技術(shù)設(shè)計(jì)一種可以使檢查點(diǎn)和事務(wù)操作互不阻塞,檢查點(diǎn)過(guò)程中支持讀寫并發(fā),而且恢復(fù)算法簡(jiǎn)單且快速的數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)方法。2根據(jù)影子頁(yè)面恢復(fù)方法2.1影子頁(yè)面技術(shù)影子頁(yè)面技術(shù)是所有要被事務(wù)更新的頁(yè)都復(fù)制副本影子頁(yè),更新發(fā)生在這些影子頁(yè)上,而不是作用在原先頁(yè)上,如果事務(wù)成功提交,影子頁(yè)成為當(dāng)前頁(yè),如果事務(wù)失敗,影子頁(yè)面丟棄。影子頁(yè)面方法由于不是在當(dāng)前頁(yè)上直接修改,當(dāng)前頁(yè)信息在事務(wù)未成功提交前仍存在,可以節(jié)省記錄事務(wù)Undo日志,事務(wù)失敗直接撤銷影子頁(yè)面即可。目前多數(shù)支持讀已提交隔離級(jí)別的數(shù)據(jù)庫(kù)系統(tǒng)都是寫阻塞讀;而采用了影子頁(yè)面技術(shù),在有事務(wù)寫數(shù)據(jù)時(shí)候不會(huì)阻塞正常的讀,因?yàn)閷憯?shù)據(jù)是在它對(duì)應(yīng)的影子頁(yè)面寫,當(dāng)前頁(yè)的已提交的數(shù)據(jù)仍存在,可以支持正常讀。另外,在檢查點(diǎn)過(guò)程啟動(dòng)時(shí)未提交的事務(wù)舊頁(yè)面信息未被修改,修改的信息還在影子頁(yè)面中未提交,這樣刷到磁盤的數(shù)據(jù)符合事務(wù)一致性。檢查點(diǎn)運(yùn)行過(guò)程中如果有新事務(wù)要提交,可能導(dǎo)致事務(wù)不一致性,我們通過(guò)“多版本”技術(shù)解決這個(gè)問(wèn)題,使檢查點(diǎn)與事務(wù)能并行互不阻塞,并且檢查點(diǎn)保存的映像是事務(wù)一致性的;這樣保存的都是成功提交的事務(wù),恢復(fù)過(guò)程無(wú)需Undo事務(wù),恢復(fù)算法相對(duì)簡(jiǎn)單等等。考慮使用影子頁(yè)面方法在讀寫并發(fā)、檢查點(diǎn)事務(wù)并發(fā)、恢復(fù)算法等方面的好處,雖然它比記錄Undo日志需要多占用一些空間,但是考慮它在速度等方面對(duì)系統(tǒng)性能的提升,我們采用影子頁(yè)面技術(shù)。將在下面小節(jié)中詳細(xì)講述本文設(shè)計(jì)的恢復(fù)系統(tǒng),分日志模塊、檢查點(diǎn)進(jìn)程、恢復(fù)算法進(jìn)行描述。2.2執(zhí)行和修改所提交的存儲(chǔ)信息我們的恢復(fù)系統(tǒng)模型如圖1所示。采用影子頁(yè)面技術(shù),無(wú)須記錄Undo日志,為提高不同事務(wù)日志操作的并發(fā)度,每個(gè)事務(wù)都有一個(gè)私有redo日志鏈;為了提高恢復(fù)的效率,使每個(gè)事務(wù)的日志連續(xù),不出現(xiàn)日志交替出現(xiàn)情況,我們用一個(gè)全局日志鏈存放已提交事務(wù)的日志,日志刷新進(jìn)程負(fù)責(zé)不斷將全局日志鏈日志刷到磁盤日志文件上。事務(wù)提交等到它的所有redo日志刷到磁盤上才真正完成。事務(wù)對(duì)頁(yè)面的修改發(fā)生在它的影子頁(yè)面上,事務(wù)成功提交時(shí)影子頁(yè)面成為當(dāng)前頁(yè)面,置臟頁(yè)位,事務(wù)失敗影子頁(yè)面撤銷。檢查點(diǎn)過(guò)程把上次檢查點(diǎn)后的臟頁(yè)刷到磁盤數(shù)據(jù)庫(kù)映像上。臨時(shí)版本是在檢查點(diǎn)過(guò)程中事務(wù)要提交的影子頁(yè)面是正在被刷新的臟頁(yè)時(shí),那么先不提交回去,而是記錄該頁(yè)為臟頁(yè)的一新版本,等到檢查點(diǎn)過(guò)程結(jié)束后才用該新版本覆蓋舊版本,在下次檢查點(diǎn)刷到磁盤上。2.3日常事務(wù)執(zhí)行過(guò)程日志模塊管理redo日志(數(shù)據(jù)的后象,AFIM)。遵循LAW(loggingafterwrite)規(guī)則,即在內(nèi)存數(shù)據(jù)庫(kù)數(shù)據(jù)被修改后記錄日志,它簡(jiǎn)化重做起始點(diǎn)的確定,日志記錄信息如圖2所示。日志頭(begintransaction,BT)主要記錄事務(wù)的信息,redo日志鏈入口;日志節(jié)點(diǎn)則主要記錄所更改數(shù)據(jù)的后象信息,當(dāng)事務(wù)提交日志有個(gè)Commit記錄。平時(shí)事務(wù)執(zhí)行過(guò)程如下:(1)首先獲得要修改的頁(yè)面的鎖(設(shè)計(jì)該鎖不允許寫寫并發(fā),可讀寫并發(fā)),如果要修改的頁(yè)面沒(méi)有影子頁(yè)面,先復(fù)制一個(gè)影子頁(yè)面,在影子頁(yè)面中修改數(shù)據(jù);如果已有影子頁(yè)面(該事務(wù)之前的操作已產(chǎn)生影子頁(yè)面),則直接在之前影子頁(yè)面上修改;(2)將相應(yīng)的redo記錄掛到redo日志鏈上;(3)事務(wù)對(duì)數(shù)據(jù)庫(kù)的修改操作就是重復(fù)1和2;如果事務(wù)正常提交則轉(zhuǎn)到4,事務(wù)失敗轉(zhuǎn)到5;(4)記錄Commit信息到日志,接著將影子內(nèi)存提交回去成為當(dāng)前頁(yè),置臟頁(yè)位。采用預(yù)提交技術(shù),此時(shí)可以釋放該事務(wù)的所有鎖,提高并發(fā)度。根據(jù)redo規(guī)則,事務(wù)在成功提交之前要保證其redo日志存儲(chǔ)到磁盤上,所以我們將該私有日志鏈掛到全局日志鏈上,將redo日志刷到磁盤日志文件上保證事務(wù)作用的持久性,當(dāng)全部刷到磁盤日志文件上時(shí),Commit完全成功,在臟頁(yè)表中加入新提交事務(wù)的臟頁(yè)信息。事務(wù)完全commit后,內(nèi)存中的redo日志鏈和舊頁(yè)面都可以撤銷。(5)事務(wù)失敗時(shí),直接丟棄該事務(wù)涉及的所有影子頁(yè)面,撤銷私有日志鏈,相當(dāng)于該事務(wù)沒(méi)有發(fā)生。也就是說(shuō)事務(wù)故障恢復(fù)相當(dāng)快,不涉及磁盤I/O。在檢查點(diǎn)操作執(zhí)行時(shí),影子頁(yè)面的提交方法不同,在下面檢查點(diǎn)過(guò)程中介紹。2.4檢查點(diǎn)事務(wù)一致性的實(shí)現(xiàn)檢查點(diǎn)過(guò)程主要是把內(nèi)存數(shù)據(jù)庫(kù)的臟頁(yè)刷到磁盤數(shù)據(jù)庫(kù)。為了使檢查點(diǎn)不阻塞事務(wù),常用模糊檢查點(diǎn)方法,就是檢查點(diǎn)進(jìn)程不對(duì)刷新的頁(yè)上鎖,事務(wù)對(duì)頁(yè)面可讀寫,這樣保存的數(shù)據(jù)庫(kù)映像可能出現(xiàn)事務(wù)不一致性,恢復(fù)方法較復(fù)雜,需要Redo和Undo日志。現(xiàn)在我們?cè)O(shè)計(jì)一種方法,借鑒模糊檢查點(diǎn)思想,達(dá)到減小對(duì)事務(wù)的影響,而又支持事務(wù)一致性的效果。我們實(shí)際上用的是非模糊檢查點(diǎn),就是說(shuō)檢查點(diǎn)過(guò)程中我們對(duì)臟頁(yè)表對(duì)應(yīng)的臟頁(yè)加讀鎖,使檢查點(diǎn)進(jìn)程不受事務(wù)阻塞,因?yàn)槭聞?wù)在提交之前修改的是影子頁(yè)面而不是當(dāng)前頁(yè),只有在提交的時(shí)候才把影子頁(yè)面放回當(dāng)前頁(yè)。當(dāng)檢查點(diǎn)過(guò)程中,活動(dòng)事務(wù)(activetransaction,AT)如果提交的影子頁(yè)面仍被檢查點(diǎn)進(jìn)程鎖住,為了不阻塞檢查點(diǎn)過(guò)程中事務(wù)的正常提交,我們記錄這種情況下的影子頁(yè)面為所對(duì)應(yīng)頁(yè)的“臨時(shí)新版本”,等到檢查點(diǎn)進(jìn)程完成后,用該“新版本”覆蓋“舊版本”,記錄為臟頁(yè),在下一次檢查點(diǎn)時(shí)刷到磁盤上。這個(gè)期間對(duì)該頁(yè)的讀取都是讀“新版本”的值,如果檢查點(diǎn)期間又有新的事務(wù)對(duì)該頁(yè)修改,那么就是再為該“新版本”復(fù)制一個(gè)影子頁(yè)面,提交則又為一個(gè)“更新版本”,如此進(jìn)行,檢查點(diǎn)完成后用“最新的版本”來(lái)覆蓋舊版本。檢查點(diǎn)備份的映像是檢查點(diǎn)啟動(dòng)時(shí)已經(jīng)完成提交的事務(wù)的數(shù)據(jù),檢查點(diǎn)啟動(dòng)時(shí)處于活動(dòng)的事務(wù)以及之后啟動(dòng)的事務(wù)的信息在下一次檢查點(diǎn)被更新到磁盤,這樣保存的數(shù)據(jù)庫(kù)映像滿足事務(wù)一致性。檢查點(diǎn)執(zhí)行過(guò)程如下:(1)檢查點(diǎn)進(jìn)程啟動(dòng),在全局日志鏈追加一個(gè)檢查點(diǎn)開始的記錄BCk,區(qū)分檢查點(diǎn)啟動(dòng)前和啟動(dòng)后提交的事務(wù)日志。(2)根據(jù)WAL規(guī)則,更改磁盤數(shù)據(jù)庫(kù)前把它的redo日志記錄在磁盤上,保證將BCk之前的redo都刷到磁盤日志文件上。(3)得到此時(shí)未提交的活動(dòng)事務(wù)的一個(gè)列表(activetransactiontable,ATTable)。(4)獲得臟頁(yè)表L所指向所有臟頁(yè)的讀鎖,將臟頁(yè)一個(gè)個(gè)復(fù)制到臨時(shí)緩沖區(qū),復(fù)制一個(gè),釋放一個(gè)的讀鎖,清臟頁(yè)位,將臨時(shí)緩沖區(qū)的內(nèi)容刷新到磁盤數(shù)據(jù)庫(kù)中對(duì)應(yīng)的頁(yè)面上。由于事務(wù)在提交之前未將影子頁(yè)面的數(shù)據(jù)提交,所以此時(shí)獲得的臟頁(yè)表數(shù)據(jù)是滿足事務(wù)一致性的。(5)等臟頁(yè)表所有數(shù)據(jù)都刷到磁盤上后,檢查點(diǎn)完成,在日志中記錄檢查點(diǎn)結(jié)束位置ECk。(6)設(shè)置恢復(fù)起始點(diǎn)為BCk,在恢復(fù)算法中我們講述為什么恢復(fù)起始點(diǎn)為BCk。另外,檢查點(diǎn)完成后啟動(dòng)一個(gè)線程將檢查點(diǎn)過(guò)程中事務(wù)提交涉及被鎖的頁(yè)面“新版本”替換舊版本,置臟頁(yè)位,這些臟頁(yè)將在下一次檢查點(diǎn)時(shí)刷到磁盤數(shù)據(jù)庫(kù)上。至此,檢查點(diǎn)才徹底完成。這個(gè)過(guò)程中,我們用了事務(wù)一致性的思想和“多版本”思想達(dá)到了檢查點(diǎn)和事務(wù)并發(fā)的效果,大大提高了系統(tǒng)的性能。如果考慮磁盤空間的節(jié)省,可以在成功完成ECk的記錄之后,把磁盤日志文件中BCk之前的redo日志刪除。2.5系統(tǒng)故障情況下的ro起始點(diǎn)由于檢查點(diǎn)方法備份的數(shù)據(jù)庫(kù)支持事務(wù)一致性,備份的是檢查點(diǎn)啟動(dòng)之前已提交的事務(wù)的信息,那么我們的恢復(fù)算法相當(dāng)簡(jiǎn)單?;謴?fù)過(guò)程如下:(1)將磁盤上當(dāng)前的數(shù)據(jù)庫(kù)映像導(dǎo)入到內(nèi)存中;(2)從日志重作起始點(diǎn)開始對(duì)數(shù)據(jù)庫(kù)做redo操作,由于redo日志中記錄的都是已提交事務(wù)的信息,我們只需redo事務(wù),無(wú)需undo。對(duì)于系統(tǒng)故障時(shí)最后一個(gè)事務(wù)該否redo,我們?cè)趓edo日志刷磁盤操作時(shí)在磁盤上用一個(gè)控制文件記錄Commit記錄已經(jīng)刷到磁盤上的事務(wù)的信息,那么我們恢復(fù)時(shí)就知道系統(tǒng)故障時(shí)最后一個(gè)事務(wù)是否已經(jīng)把所有redo記錄記到磁盤上,如果沒(méi)有就不redo最后一個(gè)事務(wù)的日志,如果有就redo。我們分析一下為什么恢復(fù)起始點(diǎn)為BCk,這個(gè)和模糊檢查點(diǎn)的恢復(fù)起始點(diǎn)的確認(rèn)十分類似。因?yàn)榈贙個(gè)檢查點(diǎn)時(shí)刻完成時(shí),它已經(jīng)將檢查點(diǎn)啟動(dòng)前已經(jīng)提交的事務(wù)對(duì)應(yīng)的臟頁(yè)信息都刷到磁盤上了,而在檢查點(diǎn)啟動(dòng)之后提交的事務(wù)信息還未刷到磁盤上。就是說(shuō)檢查點(diǎn)期間刷新的數(shù)據(jù)庫(kù)映像是檢查點(diǎn)啟動(dòng)之前提交的事務(wù)的信息。分以下兩種情況分析:(1)如果系統(tǒng)不是在檢查點(diǎn)過(guò)程故障,如圖3故障1,那么目前磁盤數(shù)據(jù)庫(kù)狀態(tài)在ECk檢查點(diǎn)完成時(shí)保存的狀態(tài),對(duì)于BCk之前提交的事務(wù)信息已經(jīng)保存了,但是BCk之后提交的事務(wù)還未作用于磁盤數(shù)據(jù)庫(kù),所以BCk為重作起始點(diǎn),即ECk狀態(tài)數(shù)據(jù)庫(kù)加上BCk之后的redo日志可以把數(shù)據(jù)庫(kù)恢復(fù)到最近一個(gè)事務(wù)一致性狀態(tài)。(2)當(dāng)系統(tǒng)在檢查點(diǎn)過(guò)程中故障,如圖3故障2,那么目前磁盤數(shù)據(jù)庫(kù)的狀態(tài)是ECk狀態(tài)再加上部分臟頁(yè)被刷到磁盤上的狀態(tài),由于臟頁(yè)刷到磁盤上無(wú)法保證事務(wù)的一致性,也就是說(shuō)從上一次檢查點(diǎn)之后提交的事務(wù)它的信息并不一定完全被刷到磁盤數(shù)據(jù)庫(kù)中了,所以必須從BCk開始恢復(fù)。綜上,也就是說(shuō)系統(tǒng)故障發(fā)生后恢復(fù)時(shí)的redo起始點(diǎn)是最近一次完整檢查點(diǎn)過(guò)程的啟動(dòng)記錄BC處。這和模糊檢查點(diǎn)的redo起始點(diǎn)是一樣的。但是我們的恢復(fù)算法較之模糊檢查點(diǎn)的恢復(fù)算法簡(jiǎn)單的多,無(wú)需Undo事務(wù),這大大提高了恢復(fù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年工程稅收與結(jié)算合同
- 2024年度電競(jìng)游戲開發(fā)與發(fā)行合同
- 2024年丙方法律咨詢與代理合同
- 2024年應(yīng)急出口指示牌制作安裝合同
- 2024年城市道路泥水施工合同
- 2024年建筑工程所需材料采購(gòu)協(xié)議
- 2024年度無(wú)人機(jī)制造與銷售合同
- 2024園林綠化工程綠化帶規(guī)劃與設(shè)計(jì)合同
- 2024騰訊朋友圈廣告合同
- 2024年度醫(yī)院醫(yī)療設(shè)備采購(gòu)與安裝合同
- 口腔常見疾病的診治
- MOOC 人像攝影-中國(guó)傳媒大學(xué) 中國(guó)大學(xué)慕課答案
- MOOC 計(jì)算機(jī)組成原理-電子科技大學(xué) 中國(guó)大學(xué)慕課答案
- 2024年江蘇無(wú)錫市江陰市江南水務(wù)股份有限公司招聘筆試參考題庫(kù)含答案解析
- 中學(xué)教材、教輔征訂管理制度
- (高清版)DZT 0213-2002 冶金、化工石灰?guī)r及白云巖、水泥原料礦產(chǎn)地質(zhì)勘查規(guī)范
- 消防安全評(píng)估消防安全評(píng)估方案
- 工程造價(jià)專業(yè)《工程經(jīng)濟(jì)》課程標(biāo)準(zhǔn)
- ZARA服裝市場(chǎng)營(yíng)銷策略研究分析 市場(chǎng)營(yíng)銷專業(yè)
- 設(shè)備維保的市場(chǎng)化運(yùn)作與服務(wù)模式創(chuàng)新
- 幼兒園科普知識(shí)宣傳
評(píng)論
0/150
提交評(píng)論